Origin 버킷 : dobby-origin-bucket
Copy 버킷 : dobby-copy-bucket
Origin 버킷에 존재하는 객체 리스트
IAM > 역할 > 역할 생성
서비스는 S3 를 선택하며 사용 사례에서는 S3 Batch Operations 를 선택한다.
# S3-Batch-role 에 있는 정책
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:InitiateReplication"
],
"Resource": "arn:aws:s3:::<원본 Bucket>/*"
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:GetObjectVersion"
],
"Resource": [
"arn:aws:s3:::<원본 Bucket>/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::<대상 Bucket>/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:GetReplicationConfiguration",
"s3:PutInventoryConfiguration"
],
"Resource": "arn:aws:s3:::<원본 Bucket>"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": "arn:aws:s3:::dobby-origin-bucket/*",
"Resource": "arn:aws:s3:::<원본 Bucket>/*"
}
]
}
S3 Batch 를 위한 정책
Amazon S3 배치 작업에 대한 권한 부여
Amazon S3 > 배치 작업 > 작업 생성
매니페스트는 배치 프로세스의 일부로서 처리되어야하는 파일 목록과 처리 방법에 대한 정보를 포함하는 파일 및 데이터구조이다.
해당 작업의 경우 동일한 리전에 있는 버킷의 객체만 복사할 수 있으며, 소스의 경우 동일한 계정에서 테스트할 것이므로 이 AWS 계정의 버킷을 선택하였다.
배치 작업 매니페스트는 소스S3 를 선택하였다. (배치 작업 실행 시 해당 작업ID로 폴더가 생성이되고 아래에 메니페스트 json 정보를 확인할 수 있다.)
해당 작업은 Batch 를 통한 객체 복사이기에 복제만 가능하다. (매니페스트 형식을 S3 인벤토리 보고서나 CSV 로 선택하면 더 다양한 작업을 진행할 수 있다.)
완료 보고서의 경우 배치 작업이 끝난 후 job-배치작업ID 의 폴더가 생기며, 동일하게 메니페스트 json 파일이 생성이 된다.
IAM 역할은 위와 같은 정책이 할당된 IAM Role 을 선택한다.
설정이 완료 되었다면 준비중 -> 실행 확인 대기중 에서 작업을 실행하면 기존 객체를 복사하는 작업을 진행한다.
완료가 되었다면 상태가 완료됨으로 변경이 된 것을 확인할 수 있다.
Origin 버킷 : dobby-origin-bucket
Origin 버킷에는 f2a4de86-6763-49a1.... 이름의 폴더가 있지만 삭제를 하여 화면에서 보이지는 않는다. (해당 폴더에 메니페스트 파일이 존재)
Copy 버킷 : dobby-copy-bucket
Copy 버킷에는 job-f2a4de86-6763-49a1.... 이름의 폴더도 생성이 되었으며, 완료 보고서가 해당 폴더 아래에 존재하는 것을 확인할 수 있다.