를 사용하여AWS DataSync 위치 만들기AWS CLI - AWS DataSync

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

를 사용하여AWS DataSync 위치 만들기AWS CLI

각AWS DataSync 작업은 한 쌍의 전송 위치로 구성됩니다. 소스 위치는 데이터를 읽으려는 스토리지 시스템 또는 서비스를 정의합니다. 대상 위치는 데이터를 쓰려는 스토리지 시스템 또는 서비스를 정의합니다.

AWS Command Line Interface(AWS CLI) 를 사용하여 다음 스토리지 시스템 및 서비스의 위치를 생성할 수 있습니다.

  • NFS (네트워크 파일 시스템)

  • SMB (Server Message Block)

  • 하둡 분산 파일 시스템(HDFS)

  • 자체 관리형 오브젝트 스토리지 소스 위치

  • Amazon Elastic File System (Amazon EFS)

  • Amazon FSx for Windows File Server

  • Amazon FSx for Lustre

  • Amazon FSx for OpenZFS

  • Amazon FSx for NetApp ONTAP

  • Amazon Simple Storage Service(Amazon S3)

자세한 정보는 어디에서 데이터를 전송할 수 있나요AWS DataSync?을 참조하세요.

NFS 위치 생성

NFS 위치는 NFS 서버에서 읽거나 쓸 수 있는 파일 시스템을 정의합니다. `를 사용하여 NFS 위치를 생성할 수도AWS Management Console 있습니다. 자세한 정보는 NFS 파일 서버에서의 AWS DataSync 전송 구성을 참조하세요.

참고

디바이스에서 NFS 위치를 사용하는 경우 해당AWS Snowcone 디바이스와 데이터를 주고 받는 방법에다음을 사용하여AWS DataSync 전송 구성하기AWS Snowcone 대한 자세한 내용은 을 참조하십시오.

CLI를 사용하여 NFS 위치 생성하기
  • 다음 명령을 사용하여 NFS 소스 위치를 생성합니다.

    $ aws datasync create-location-nfs \ --server-hostname nfs-server-address \ --on-prem-config AgentArns=datasync-agent-arns \ --subdirectory nfs-export-path

    앞에 나온 명령에 대해 다음이 적용됩니다.

    • --subdirectory매개 변수에 대해 제공한 경로 (nfs-export-path) 는 NFS 서버에서 내보낸 경로 또는 하위 디렉터리여야 합니다. 네트워크의 다른 NFS 클라이언트가 이 경로를 마운트할 수 있어야 합니다. NFS 서버에서 내보낸 모든 경로를 확인하려면 서버에 액세스하면서 NFS 클라이언트에서 showmount -e nfs-server-address 명령을 실행하십시오. 결과에 나타나는 모든 디렉터리와 그 디렉터리의 하위 디렉터리를 지정할 수 있습니다.

    • 지정된 폴더의 모든 데이터를 전송하려면 DataSync에 모든 데이터를 읽을 수 있는 권한이 필요합니다. DataSync 권한을 부여하려면 다음 두 가지 중 하나를 수행합니다. no_root_squash를 사용하여 NFS 내보내기를 구성할 수 있습니다. 또는 DataSync 에서 액세스하기를 원하는 모든 파일에 대해, 권한이 모든 사용자에 대해 읽기 액세스를 허용하도록 설정할 수 있습니다. 이렇게 하면 에이전트가 파일을 읽을 수 있습니다. 추가적으로 모든 사용자에게 실행 액세스를 부여해야 에이전트가 디렉터리에 액세스할 수 있습니다.

    • Kerberos 인증 없이 NFS 내보내기 경로에 액세스할 수 있는지 확인하십시오.

    DataSync NFS 위치에서 읽는 데 사용할 NFS 버전을 자동으로 선택합니다. NFS 버전을 지정하려면 NfsMountOptions API 작업에서 선택적 Version 파라미터를 사용합니다.

이들 명령은 다음과 같은 Amazon 리소스 이름(ARN)과 비슷한 NFS 위치의 ARN을 반환합니다.

{ "LocationArn": "arn:aws:datasync:us-east-1:111222333444:location/loc-0f01451b140b2af49" }

디렉터리를 탑재할 수 있는지 확인하려면 에이전트와 동일한 네트워크 구성을 가진 컴퓨터에 연결하여 다음 명령을 실행하십시오.

mount -t nfs -o nfsvers=<nfs-server-version <nfs-server-address:<nfs-export-path <test-folder

다음은 그러한 명령의 예입니다.

mount -t nfs -o nfsvers=3 198.51.100.123:/path_for_sync_to_read_from /temp_folder_to_test_mount_on_local_machine

SMB 위치 생성

SMB 위치는 SMB 서버에서 읽거나 쓸 수 있는 파일 시스템을 정의합니다. 콘솔을 사용하여 SMB 위치를 생성할 수도 있습니다. 자세한 정보는 SMB 파일 서버에서의 AWS DataSync 전송 구성을 참조하세요.

CLI를 사용하여 SMB 위치 생성하기
  • 다음 명령을 사용하여 SMB 소스 위치를 생성합니다.

    aws datasync create-location-smb \ --server-hostname smb-server-address \ --user user-who-can-mount-share \ --domain windows-domain-of-smb-server \ --password user-password \ --agent-arns datasync-agent-arns \ --subdirectory smb-export-path

    --subdirectory매개 변수에 대해smb-export-path 제공한 경로는 SMB 서버에서 내보낸 경로여야 합니다. 슬래시를 사용하여 경로를 지정합니다 (예:)/path/to/folder. 네트워크의 다른 SMB 클라이언트가 이 경로에 액세스할 수 있어야 합니다.

    DataSync SMB 위치에서 읽는 데 사용할 SMB 버전을 자동으로 선택합니다. SMB 버전을 지정하려면 SmbMountOptions API 작업에서 선택적 Version 파라미터를 사용합니다.

이 명령은 다음과 같은 ARN과 유사한 SMB 위치의 Amazon 리소스 이름(ARN)을 반환합니다.

{ "LocationArn": "arn:aws:datasync:us-east-1:111222333444:location/loc-0f01451b140b2af49" }

HDFS 위치 만들기

HDFS 위치는 읽거나 쓸 수 있는 Hadoop 클러스터의 파일 시스템을 정의합니다. 를 사용하여 HDFS 위치를 만들 수도AWS Management Console 있습니다. 자세한 정보는 HDFS에서 AWS DataSync 전송을 구성하기을 참조하세요.

를 사용하여 HDFS 위치를 만들려면AWS CLI
  • 다음 명령을 사용하여 HDFS 위치를 생성합니다. 다음 예제에서는 각각을 자신의user input placeholder 정보로 바꿉니다.

    aws datasync create-location-hdfs --name-nodes [{"Hostname":"host1", "Port": 8020}] \ --authentication-type "SIMPLE|KERBEROS" \ --agent-arns [arn:aws:datasync:us-east-1:123456789012:agent/agent-01234567890example] \ --subdirectory "/path/to/my/data"

    다음 파라미터는create-location-hdfs 명령에서 필수 파라미터입니다.

    • name-nodes— Hadoop NameNode 클러스터에 있는 의 호스트 이름 또는 IP 주소와 에서 수신 NameNode 중인 TCP 포트를 지정합니다.

    • authentication-type— Hadoop 클러스터에 연결할 때 사용할 인증 유형입니다. SIMPLE 또는 KERBEROS을 지정합니다.

      SIMPLE인증을 사용하는 경우--simple-user 파라미터를 사용하여 사용자의 사용자 이름을 지정하십시오. KERBEROS인증을 사용하는 경우--kerberos-principal--kerberos-keytab, 및--kerberos-krb5-conf 매개 변수를 사용하십시오. 자세한 내용은 을 참조하십시오 create-location-hdfs.

    • agent-arns— HDFS 위치에 사용할 DataSync 에이전트의 ARN입니다.

    위의 명령은 다음과 비슷한 위치 ARN을 반환합니다.

    { "arn:aws:datasync:us-east-1:123456789012:location/loc-01234567890example" }

객체 스토리지 위치 생성

위치는 온프레미스나 다른 클라우드 제공업체 (예: Google Cloud Storage 버킷) 에서 호스팅하는 객체 스토리지 시스템을 나타내는 DataSync 엔드포인트입니다.

호환성 요구 사항을 비롯한 오브젝트 스토리지 위치에 대한 자세한 내용은 을 참조하십시오오브젝트 스토리지 시스템에서의 AWS DataSync 전송 구성.

를 사용하여 오브젝트 스토리지 위치를 만들려면AWS CLI
  1. 다음create-location-object-storage 명령을 복사합니다.

    aws datasync create-location-object-storage \ --server-hostname object-storage-server.example.com \ --bucket-name your-bucket \ --agent-arns arn:aws:datasync:us-east-1:123456789012:agent/agent-01234567890deadfb
  2. 명령에서 다음 필수 파라미터를 지정합니다.

    • --server-hostname— 객체 스토리지 서버의 도메인 이름 또는 IP 주소를 지정합니다.

    • --bucket-name— 전송하거나 전송하려는 오브젝트 스토리지 서버의 버킷 이름을 지정합니다.

    • --agent-arns— 오브젝트 스토리지 서버에 연결할 DataSync 에이전트를 지정합니다.

  3. (선택 사항) 명령에 다음 매개 변수 중 하나를 추가합니다.

    • --server-port— 객체 스토리지 서버의 인바운드 네트워크 트래픽을 수락하는 포트 (예: 포트443) 를 지정합니다.

    • --server-protocol— 객체 스토리지 서버의 통신에 사용되는 프로토콜 (HTTP또는HTTPS) 을 지정합니다.

    • --access-key— 객체 스토리지 서버에 인증하는 데 자격 증명이 필요한 경우 액세스 키 (예: 사용자 이름) 를 지정합니다.

    • --secret-key— 객체 스토리지 서버에 인증하는 데 자격 증명이 필요한 경우 보안 암호 키 (예: 암호) 를 지정합니다.

    • --server-certificate— DataSync 에이전트가 오브젝트 스토리지 서버에 연결할 때 신뢰할 수 있는 개인 또는 자체 서명된 인증서를 지정합니다.

      사용자 지정 인증서 파일은.pem 확장명 (예:file:///home/user/mycert.pem) 을 가져야 합니다.

    • --subdirectory— 객체 스토리지 서버의 객체 접두사를 지정합니다.

      DataSync 이 접두사가 있는 객체만 복사합니다.

    • --tags— 위치 리소스에 추가하려는 태그를 나타내는 키-값 페어를 지정합니다.

      태그는 리소스 관리, 필터링 및 검색에 도움이 됩니다. 위치에 대한 이름 태그를 생성하는 것이 좋습니다.

  4. create-location-object-storage 명령을 실행합니다.

    방금 생성한 위치 ARN을 보여주는 응답을 받게 됩니다.

    { "LocationArn": "arn:aws:datasync:us-east-1:123456789012:location/loc-01234567890abcdef" }

Amazon EFS 위치 생성

위치는 읽거나 쓸 수 있는 Amazon EFS 파일 시스템에서 엔드포인트입니다. 콘솔을 사용하여 이러한 위치를 생성할 수도 있습니다. 자세한 정보는 아마존 EFS 사용한 AWS DataSync 전송 구성을 참조하세요.

를 사용하여 Amazon EFS 위치를 생성하려면AWS CLI
  1. Amazon EFS 파일 시스템을 생성합니다. EFS 파일 시스템을 만드는 방법에 대한 자세한 내용은 Amazon Elastic File System 사용 설명서의 Amazon Elastic File System 시작하기를 참조하십시오.

  2. 해당 파일 시스템에 대해 적어도 1개 이상의 탑재 대상을 갖고 있는 서브넷을 식별하십시오. describe-mount-targets명령을 사용하면 EFS 파일 시스템과 연결된 모든 탑재 대상 및 서브넷을 볼 수 있습니다.

    aws efs describe-mount-targets \ --region aws-region \ --file-system-id file-system-id
    참고

    사용자가 지정한AWS 리전 것은 대상 S3 버킷 또는 EFS 파일 시스템이 있는 위치입니다.

    이 명령은 다음과 같은 정보와 유사한 대상에 대한 정보를 반환합니다.

    { "MountTargets": [ { "OwnerId": "111222333444", "MountTargetId": "fsmt-22334a10", "FileSystemId": "fs-123456ab", "SubnetId": "subnet-f12a0e34", "LifeCycleState": "available", "IpAddress": "11.222.0.123", "NetworkInterfaceId": "eni-1234a044" } ] }
  3. 탑재 대상에 액세스할 수 있는 Amazon EC2 보안 그룹을 지정합니다. 다음 명령을 실행하면 탑재 대상의 보안 그룹을 찾을 수 있습니다.

    aws efs describe-mount-target-security-groups \ --region aws-region \ --mount-target-id mount-target-id

    사용자가 제공한 보안 그룹은 지정된 서브넷의 탑재 대상에 있는 보안 그룹과 통신할 수 있어야 합니다.

    탑재 대상의 보안 그룹 M과 이 단계에서 사용할 수 있도록 사용자가 제공한 보안 그룹 S 사이의 관계는 다음과 같습니다. DataSync

    • 탑재 대상과 연결되는 보안 그룹 M은 보안 그룹 S의 NFS 포트(2049)에서 TCP 프로토콜에 대한 인바운드 액세스를 허용해야 합니다.

      IP 주소(CIDR 범위) 또는 보안 그룹을 통해 인바운드 연결을 활성화할 수 있습니다.

    • Amazon EFS 액세스를 DataSync 위해 사용자가 제공한 보안 그룹 S에는 NFS 포트에 대해 아웃바운드 연결을 활성화하는 규칙이 있어야 합니다. 파일 시스템의 탑재 대상 중 하나에서 아웃바운드 연결을 활성화합니다.

      IP 주소(CIDR 범위)나 보안 그룹을 사용해 아웃바운드 연결을 활성화할 수 있습니다.

      보안 그룹 및 탑재 대상에 관한 자세한 내용은 Amazon Elastic File System 사용 설명서의 Amazon EC2 인스턴스 및 탑재 대상을 위한 보안 그룹을 참조하세요.

  4. 위치를 생성합니다. EFS 위치를 생성하려면 Amazon EC2 서브넷용 ARN, Amazon EC2 보안 그룹 및 파일 시스템이 필요합니다. DataSync API는 정규화된 ARN을 허용하기 때문에 이러한 ARN은 생성할 수 있습니다. 다양한 서비스를 위한 ARN을 구성하는 방법에 대한 자세한 내용은 의 Amazon 리소스 이름 (ARN) 을 참조하십시오 AWS 일반 참조.

    다음 명령을 사용해 EFS 위치를 생성합니다.

    aws datasync create-location-efs \ --subdirectory /path/to/your/subdirectory \ --efs-filesystem-arn 'arn:aws:elasticfilesystem:region:account-id:file-system/filesystem-id' \ --ec2-config SecurityGroupArns='arn:aws:ec2:region:account-id:security-group/security-group-id',SubnetArn='arn:aws:ec2:region:account-id:subnet/subnet-id'
참고

사용자가 지정한AWS 리전 것은 대상 S3 버킷 또는 EFS 파일 시스템이 있는 위치입니다.

이 명령은 다음 중 한 가지와 비슷한 위치 ARN을 반환합니다.

{ "LocationArn": "arn:aws:datasync:us-west-2:111222333444:location/loc-07db7abfc326c50fb" }

Amazon FSx for Windows File Server 위치 생성

위치는 읽거나 쓸 수 있는 FSx for Windows File Server FSx의 엔드포인트입니다.

콘솔을 사용하여 FSx for Windows File Server 위치 생성도 가능합니다. 자세한 정보는 Amazon FSx for Windows File Server 를 사용하여 AWS DataSync 전송 구성을 참조하세요.

를 사용하여 FSx for Windows File Server 위치 생성하기AWS CLI
  • 다음 명령을 사용하여 Amazon FSx for Server 위치 생성하기

    aws datasync create-location-fsx-windows \ --fsx-filesystem-arn arn:aws:fsx:region:account-id:file-system/filesystem-id \ --security-group-arns arn:aws:ec2:region:account-id:security-group/group-id \ --user smb-user --password password

    create-location-fsx-windows 명령에서 다음을 지정합니다.

    • fsx-filesystem-arn— 읽고자 하는 파일 시스템에서 정규화된 Amazon 리소스 이름 (ARN) 입니다.

      DataSync API는 정규화된 ARN을 수락하며 이러한 ARN을 구성할 수 있습니다. 다양한 서비스를 위한 ARN을 구성하는 방법에 대한 자세한 내용은 의 Amazon 리소스 이름 (ARN) 을 참조하십시오 AWS 일반 참조.

    • security-group-arns— 파일 시스템의 기본 서브넷의 네트워크 인터페이스에 적용할 수 있는 Amazon EC2 보안 그룹의 ARN입니다.

    • AWS 리전— 지정한 지역은 대상 Amazon FSx 파일 시스템이 위치한 지역입니다.

위의 명령은 다음 중 한 가지와 유사한 위치 ARN을 반환합니다.

{ "LocationArn": "arn:aws:datasync:us-west-2:111222333444:location/loc-07db7abfc326c50fb" }

Amazon FSx for Lustre 위치 생성

위치는 읽거나 쓸 수 있는 FSx for Lustre 파일 시스템의 엔드포인트입니다.

콘솔을 사용하여 FSx for Lustre 위치 생성 자세한 정보는 Amazon FSx for Lustre Tr에 대한 AWS DataSync Transfer 구성을 참조하세요.

다음을 사용하여 Lustre 위치용 FSx를 만들려면AWS CLI
  • 다음 명령을 사용하여 Lustre 위치용 FSx를 생성할 수 있습니다.

    aws datasync create-location-fsx-lustre \ --fsx-filesystem-arn arn:aws:fsx:region:account-id:file-system:filesystem-id \ --security-group-arns arn:aws:ec2:region:account-id:security-group/group-id

    다음 파라미터는create-location-fsx-lustre 명령에서 필수 파라미터입니다.

    • fsx-filesystem-arn— 읽고자 하는 파일 시스템에서 정규화된 Amazon 리소스 이름 (ARN) 입니다.

    • security-group-arns— 파일 시스템의 기본 서브넷의 네트워크 인터페이스에 적용할 Amazon EC2 보안 그룹의 ARN입니다.

위의 명령은 다음과 비슷한 위치 ARN을 반환합니다.

{ "LocationArn": "arn:aws:datasync:us-west-2:111222333444:location/loc-07sb7abfc326c50fb" }

Amazon FSx for OpenZFS 위치 생성

위치는 전송을 위해 액세스할 DataSync 수 있는 OpenZFS용 FSX 파일 시스템의 엔드포인트입니다. 콘솔에서 OpenZFS용 FSX 위치를 생성할 수도 있습니다.

를 사용하여 FSx for OpenZFS 위치 생성하기AWS CLI
  1. 다음 명령을 복사합니다.

    $ aws datasync create-location-fsx-openzfs \ --fsx-filesystem-arn arn:aws:fsx:region:account-id:file-system/filesystem-id \ --security-group-arns arn:aws:ec2:region:account-id:security-group/group-id \ --protocol NFS={}
  2. 명령에서 다음 필수 옵션을 지정합니다.

    • fsx-filesystem-arn 경우 위치 파일 시스템에서 정규화된 Amazon 리소스 이름 (ARN) 을 지정합니다. 여기에는 파일 시스템이AWS 리전 있는 위치AWS 계정, 사용자 및 파일 시스템 ID가 포함됩니다.

    • 의 경우 OpenZFS 파일 시스템의 기본 서브넷용security-group-arns FSX의 네트워크 인터페이스에 대한 액세스를 제공하는 Amazon EC2 보안 그룹의 ARN을 지정하십시오. 여기에는 Amazon EC2 인스턴스가AWS 리전 있는 위치AWS 계정, 사용자 및 보안 그룹 ID가 포함됩니다.

      보안 그룹에 대한 자세한 내용은 OpenZFS용 Amazon FSX 사용 설명서의 Amazon VPC 사용한 파일 시스템 액세스 제어를 참조하십시오.

    • 의 경우protocol, 파일 시스템 액세스에 DataSync 사용할 프로토콜을 지정합니다. (DataSync 현재는 NFS만 지원합니다.)

  3. 명령을 실행합니다. 방금 생성한 위치를 보여주는 응답을 받습니다.

    { "LocationArn": "arn:aws:datasync:us-west-2:123456789012:location/loc-abcdef01234567890" }

Amazon FSx for NetApp ONTAP 위치 생성

위치는 전송을 위해 액세스할 DataSync 수 있는 FSx for ONTAP 파일 시스템의 엔드포인트입니다. 콘솔에서 ONTAP 위치용 FSx를 생성할 수도 있습니다.

를 사용하여 FSx for ONTAP 위치 생성하기AWS CLI
  1. 다음 명령을 복사합니다.

    $ aws datasync create-location-fsx-ontap \ --storage-virtual-machine-arn arn:aws:fsx:region:account-id:storage-virtual-machine/fs-file-system-id \ --security-group-arns arn:aws:ec2:region:account-id:security-group/group-id \ --protocol data-transfer-protocol={}
  2. 명령에서 다음 필수 옵션을 지정합니다.

    • storage-virtual-machine-arn 경우 데이터를 복사하려는 파일 시스템에서 스토리지 가상 머신 (SVM) 의 정규화된 Amazon 리소스 이름 (ARN) 을 지정합니다.

      이 ARN에는 파일 시스템이AWS 리전 있는 위치, 사용자AWS 계정, 파일 시스템 및 SVM ID가 포함됩니다.

    • 의 경우security-group-arns 파일 시스템의 기본 서브넷의 네트워크 인터페이스에 대한 액세스를 제공하는 Amazon EC2 보안 그룹의 ARN을 지정하십시오.

      여기에는 Amazon EC2 인스턴스가AWS 리전 있는 위치AWS 계정, 사용자 및 보안 그룹 ID가 포함됩니다. 최대 5개의 보안 그룹 ARN을 지정할 수 있습니다.

      보안 그룹에 대한 자세한 내용은 NetApp ONTAP용 Amazon FSx 사용 설명서에서 Amazon VPC를 사용한 파일 시스템 액세스 제어를 참조하십시오.

    • protocol 경우 가 파일 시스템의 SVM에 액세스하는 데 DataSync 사용하는 프로토콜을 구성합니다.

      • NFS의 경우 기본 구성을 사용할 수 있습니다.

        --protocol NFS={}

      • SMB의 경우 SVM에 액세스할 수 있는 사용자 이름과 암호를 지정해야 합니다.

        --protocol SMB={User=smb-user,Password=smb-password}

  3. 명령을 실행합니다.

    방금 생성한 위치를 보여주는 응답을 받습니다.

    { "LocationArn": "arn:aws:datasync:us-west-2:123456789012:location/loc-abcdef01234567890" }

Amazon S3 위치 생성

Amazon S3 위치에는 읽거나 쓸 수 있는 S3 버킷이 필요합니다. S3 버킷을 만들려면 Amazon S3 사용 설명서의 버킷 생성을 참조하십시오.

S3 버킷에 DataSync 액세스하려면 DataSync 필요한 권한이 있는AWS Identity and Access Management (IAM) 역할이 필요합니다. 다음 절차에 따라 를 사용하여 IAM 역할, 필수 IAM 정책 및 S3 위치를 생성합니다AWS CLI.

IAM 역할을 DataSync 수임하려면 계정과 리전에서AWS Security Token Service (AWS STS) 가 활성화되어야 합니다. 임시 보안 자격 증명에 대한 자세한 내용을 알아보려면 IAM 사용 설명서IAM의 임시 보안 자격 증명을 참조하세요.

콘솔을 사용하여 S3 위치를 생성할 수도 있습니다. 자세한 정보는 Amazon S3 를 사용하여 AWS DataSync Transfer 구성을 참조하세요.

CLI를 사용하여 S3 위치 생성하기
  1. S3 버킷에 액세스하는 DataSync 데 필요한 IAM 역할을 맡을 수 있는 IAM 신뢰 정책을 생성합니다.

    다음은 신뢰 정책의 예입니다.

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. 다음 예제에서 보는 바와 같이 IAM 정책에 대한 임시 파일을 생성합니다.

    $ ROLE_FILE=$(mktemp -t sync.iam.role.filename.json) $ IAM_ROLE_NAME='YourBucketAccessRole' $ cat<<EOF> ${ROLE_FILE} { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" }] }
  3. IAM 역할을 생성하여 여기에 IAM 정책을 연결합니다.

    다음 명령은 IAM 역할을 생성하고 해당 정책을 이 역할에 연결합니다.

    $ aws iam create-role --role-name ${IAM_ROLE_NAME} --assume-role-policy-document file://${ROLE_FILE} { "Role": { "Path": "/", "RoleName": "YourBucketAccessRole", "RoleId": "role-id", "Arn": "arn:aws:iam::account-id:role/YourBucketAccessRole", "CreateDate": "2018-07-27T02:49:23.117Z", "AssumeRolePolicyDocument": { "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "datasync.amazonaws.com" }, "Action": "sts:AssumeRole" }] } } }
  4. 생성된 IAM 역할이 S3 버킷에 쓰기를 실행하도록 허용하십시오.

    S3 버킷에 액세스할 수 있는 충분한 권한이 있는 IAM 정책을 IAM 역할에 연결합니다. 다음 예제는 에서 S3 버킷을 읽고 쓰는 DataSync 데 필요한 최소 권한을 보여줍니다AWS 리전.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "s3:GetBucketLocation", "s3:ListBucket", "s3:ListBucketMultipartUploads" ], "Effect": "Allow", "Resource": "YourS3BucketArn" }, { "Action": [ "s3:AbortMultipartUpload", "s3:DeleteObject", "s3:GetObject", "s3:ListMultipartUploadParts", "s3:PutObjectTagging", "s3:GetObjectTagging", "s3:PutObject" ], "Effect": "Allow", "Resource": "YourS3BucketArn/*" } ] }

    IAM 역할에 정책을 연결하려면 다음 명령을 실행하십시오.

    $ aws iam attach-role-policy \ --role-name role-name \ --policy-arn 'arn:aws:iam::aws:policy/YourPolicyName'

    Amazon S3 버킷이 켜져 있는AWS Outposts 경우 다음 정책을 사용하십시오.

    { "Version": "2012-10-17", "Statement": [{ "Action": [ "s3-outposts:ListBucket", "s3-outposts:ListBucketMultipartUploads" ], "Effect": "Allow", "Resource": [ "s3OutpostsBucketArn", "s3OutpostsAccessPointArn" ], "Condition": { "StringLike": { "s3-outposts:DataAccessPointArn": "s3OutpostsAccessPointArn" } } }, { "Action": [ "s3-outposts:AbortMultipartUpload", "s3-outposts:DeleteObject", "s3-outposts:GetObject", "s3-outposts:ListMultipartUploadParts", "s3-outposts:PutObjectTagging", "s3-outposts:GetObjectTagging", "s3-outposts:PutObject" ], "Effect": "Allow", "Resource": [ "s3OutpostsBucketArn/*", "s3OutpostsAccessPointArn" ], "Condition": { "StringLike": { "s3-outposts:DataAccessPointArn": "s3OutpostsAccessPointArn" } } }, { "Effect": "Allow", "Action": [ "s3-outposts:GetAccessPoint" ], "Resource": "s3OutpostsAccessPointArn" } ] }
  5. S3 위치를 생성합니다.

    다음 명령을 사용하여 Amazon S3 위치를 생성합니다.

    $ aws datasync create-location-s3 \ --s3-bucket-arn 'arn:aws:s3:::DOC-EXAMPLE-BUCKET' \ --s3-storage-class 'your-S3-storage-class' \ --s3-config 'BucketAccessRoleArn=arn:aws:iam::account-id:role/role-allowing-DS-operations' \ --subdirectory /your-folder

    이 명령은 다음 중 한 가지와 비슷한 위치 ARN을 반환합니다.

    { "LocationArn": "arn:aws:datasync:us-east-1:111222333444:location/loc-0b3017fc4ba4a2d8d" }

    위치 유형 정보는 에 인코딩됩니다LocationUri. 이 예제에서s3:// 접두사는 위치의 유형을LocationUri 나타냅니다.

    Amazon S3 버킷이AWS 아웃포스트에 있는 경우 아웃포스트에 Amazon EC2 에이전트를 배포해야 합니다. 에이전트는 명령에 지정된 액세스 포인트에 액세스할 수 있는 VPC (Virtual Private Cloud) 에 있어야 합니다. 또한 에이전트는 Outpost의 상위 리전에서 활성화되어 있어야 하며 버킷의AWS Outposts 엔드포인트에서 Amazon S3로 라우팅할 수 있어야 합니다. 에서 DataSync 에이전트를 시작하는 방법에 대한 자세한 내용은AWS Outposts 을 참조하십시오에이전트를 다음 위치에 배치하세요 AWS Outposts.

    다음 명령을 사용하여 전초 기지에 Amazon S3 위치를 생성합니다.

    aws datasync create-location-s3 \ --s3-bucket-arn access-point-arn \ --s3-config BucketAccessRoleArn=arn:aws:iam::account-id:role/role-allowing-DS-operations \ --agent-arns arn-of-datasync-agent-in-vpc-that-can-access-your-s3-access-point
참고
  • 객체 데이터 또는 메타데이터를 변경하는 것은 객체를 삭제하고 이를 대체할 새 객체를 만드는 것과 같습니다. 이로 인해 다음과 같은 시나리오에서 추가 요금이 부과됩니다.

    • 객체 버전 관리를 사용하는 경우 - 객체 데이터 또는 메타데이터를 변경하면 새 버전의 객체가 생성됩니다.

    • 객체 덮어쓰기, 삭제 또는 검색에 대해 추가 요금이 부과될 수 있는 스토리지 클래스를 사용하는 경우 — 객체 데이터 또는 메타데이터를 변경하면 해당 요금이 부과됩니다. 자세한 정보는 Amazon S3 전송 시 스토리지 클래스 고려 사항을 참조하세요.

  • 객체 버전 관리를 사용하는 경우 단일 DataSync 작업 실행으로 둘 이상의 Amazon S3 객체 버전이 생성될 수 있습니다.

  • DataSync 권한을 부여하는 IAM 정책 외에도 S3 버킷에 대한 멀티파트 업로드 버킷 정책을 생성하는 것이 좋습니다. 이렇게 하면 스토리지 비용을 관리하는 데 도움이 됩니다. 자세한 내용은 블로그 게시물 S3 수명 주기 관리 업데이트 - 멀티파트 업로드 및 삭제 마커 지원 을 참조하세요.