기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
CreateLocationS3
위치는 Amazon S3 버킷의 엔드포인트입니다. AWS DataSync위치를 데이터 복사를 위한 소스 또는 대상으로 사용할 수 있습니다.
중요
위치를 생성하기 전에 다음 섹션을 읽어보세요.
자세한 내용은 Amazon S3 위치 생성을 참조하세요.
요청 구문
{
"AgentArns": [ "string
" ],
"S3BucketArn": "string
",
"S3Config": {
"BucketAccessRoleArn": "string
"
},
"S3StorageClass": "string
",
"Subdirectory": "string
",
"Tags": [
{
"Key": "string
",
"Value": "string
"
}
]
}
요청 파라미터
모든 작업에 공통적인 파라미터에 대한 자세한 내용은 일반 파라미터를 참조하세요.
요청은 JSON 형식의 다음 데이터를 받습니다.
- AgentArns
-
DataSync아웃포스트에서 사용하는 경우 AWS 아웃포스트에 배포된 DataSync 에이전트의 Amazon 리소스 이름 (ARN) 을 지정하십시오. AWSOutpost에서 DataSync 에이전트를 시작하는 방법에 대한 자세한 내용은 DataSync에이전트 배포를 참조하십시오. AWS Outposts
유형: 문자열 배열
배열 멤버: 최소 항목 수는 1개입니다. 최대 항목 10개.
길이 제약: 최대 길이는 128입니다.
패턴:
^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:agent/agent-[0-9a-z]{17}$
필수 항목 여부: 아니요
- S3BucketArn
-
Amazon S3 버킷의 ARN입니다. 버킷이 AWS Outpost에 있는 경우 액세스 포인트 ARN이어야 합니다.
유형: String
길이 제약: 최대 길이는 156개.
패턴:
^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):(s3|s3-outposts):[a-z\-0-9]*:[0-9]*:.*$
필수 항목 여부: 예
- S3Config
-
Amazon S3 버킷에 액세스하는 데 사용되는 AWS Identity and Access Management(IAM) 역할의 Amazon 리소스 이름(ARN)입니다.
이러한 역할 사용에 대한 자세한 내용은 AWS DataSync사용자 설명서의 Amazon S3 위치 생성을 참조하세요.
유형: S3Config 객체
필수 항목 여부: 예
- S3StorageClass
-
이 위치가 태스크 대상으로 사용될 때 파일을 저장하려는 Amazon S3 스토리지 클래스입니다. 에 있는 버킷의 AWS 리전 경우 스토리지 클래스는 기본적으로 Standard로 설정됩니다. 버킷의 경우 스토리지 클래스는 기본적으로 S3 AWS Outposts로 설정됩니다. AWS Outposts
S3 스토리지 클래스에 대한 자세한 내용은 Amazon S3 스토리지 클래스
를 참조하세요. 일부 스토리지 클래스에는 S3 스토리지 비용에 영향을 미칠 수 있는 동작이 있습니다. 자세한 내용은 에서 S3 스토리지 클래스 작업 시 고려 사항 을 참조하세요DataSync. 유형: String
유효한 값:
STANDARD | STANDARD_IA | ONEZONE_IA | INTELLIGENT_TIERING | GLACIER | DEEP_ARCHIVE | OUTPOSTS | GLACIER_INSTANT_RETRIEVAL
필수 항목 여부: 아니요
- Subdirectory
-
Amazon S3 버킷의 하위 디렉터리입니다. Amazon S3의 이 하위 디렉터리는 S3 소스 위치에서 데이터를 읽거나 S3 대상에 데이터를 쓰는 데 사용됩니다.
유형: String
길이 제약: 최대 길이는 40개.
패턴:
^[a-zA-Z0-9_\-\+\./\(\)\p{Zs}]*$
필수 항목 여부: 아니요
- Tags
-
위치에 추가하려는 태그를 나타내는 키-값 페어입니다. 값은 빈 문자열일 수도 있습니다. 태그를 사용하여 리소스의 이름을 지정하는 것이 좋습니다.
유형: TagListEntry 객체 배열
배열 멤버: 최소 항목 수는 0개입니다. 최대 항목 수 50개.
필수 항목 여부: 아니요
응답 구문
{
"LocationArn": "string"
}
응답 요소
작업이 성공하면 서비스가 HTTP 200 응답을 다시 전송합니다.
다음 데이터는 서비스에 의해 JSON 형식으로 반환됩니다.
- LocationArn
-
생성된 소스 Amazon S3 버킷 위치의 Amazon 리소스 이름 (ARN) 입니다.
유형: String
길이 제약: 최대 길이는 128입니다.
패턴:
^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]+:[0-9]{12}:location/loc-[0-9a-z]{17}$
오류
모든 작업에 공통적으로 나타나는 오류에 대한 자세한 내용은 을 참조하십시오일반적인 오류.
- InternalException
-
이 예외는 AWS DataSync 서비스에 오류가 발생할 때 발생합니다.
HTTP 상태 코드: 500
- InvalidRequestException
-
클라이언트가 잘못된 형식의 요청을 제출하면 이 예외가 발생합니다.
HTTP 상태 코드: 400
예시
1단계. 버킷에 쓰는 데 필요한 IAM 역할 수수허용
다음 예제는 대상 Amazon S3 버킷에 AWS DataSync 액세스하는 데 필요한 권한을 부여하는 가장 간단한 create-location-s3-iam-role
정책과 정책이 연결된 IAM 역할을 보여줍니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
"Role": { "Path": "/", "RoleName": "MyBucketAccessRole", "RoleId": "role-id", "Arn": "arn:aws:iam::account-id:role/MyBucketAccessRole", "CreateDate": "2018-07-27T02:49:23.117Z", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" } ] } } }
2단계. 생성된 IAM 역할이 버킷에 쓸 수 있도록 허용
버킷에 액세스할 수 있는 충분한 권한이 있는 정책을 역할에 연결합니다. 이러한 정책의 예로는 AWSDataSyncFullAccess
관리형 정책이 있습니다.
자세한 내용은 IAM AWSDataSyncFullAccess
이 정책을 생성할 필요가 없습니다. 에서 AWS 관리하므로 attach-role-policy
명령에 ARN을 지정하기만 하면 됩니다.
IAM_POLICY_ARN='arn:aws:iam::aws:policy/AWSDataSyncFullAccess'
3단계. Amazon S3 버킷의 엔드포인트 생성
다음 예에서는 Amazon S3 버킷의 엔드포인트를 생성합니다.
S3 엔드포인트가 생성되면 다음 두 번째 예와 유사한 응답이 새 Amazon S3 위치에 대한 Amazon 리소스 이름 (ARN) 을 반환합니다.
예제 요청
{
"S3BucketArn": "arn:aws:s3:::MyBucket",
"S3Config": {
"BucketAccessRoleArn": "arn:aws:iam::111222333444:role/MyBucketAccessRole",
},
"S3StorageClass": "STANDARD",
"Subdirectory": "/MyFolder",
"Tags": [
{
"Key": "Name",
"Value": "s3Bucket-1"
}
]
}
샘플 응답
{
"LocationArn": "arn:aws:datasync:us-east-2:111222333444:location/loc-07db7abfc326c50s3"
}
참고 항목
이 API를 언어별 AWS SDK 중 하나로 사용하는 방법에 대한 자세한 내용은 다음을 참조하세요.