Azure Blob 스토리지를 사용한AWS DataSync 전송 구성 - AWS DataSync

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

Azure Blob 스토리지를 사용한AWS DataSync 전송 구성

이 기능은 AWS DataSync 평가판 릴리스에 있으므로 변경될 수 있습니다.

Azure Blob Storage에서 블럽 (객체라고도 함) 을 전송하려면AWS DataSync 전송 위치를 만들어야 합니다. 그런 다음 Blob을 DataSync지원하는 모든AWS 스토리지 서비스로 이동할 수 있습니다.

Azure Blob 스토리지에 액세스

개체를 전송하려면 Azure Blob 저장소를 읽을 수 있는 권한이DataSync 필요합니다. 또한 객체는 작업할DataSync 수 있는 액세스 계층에 있어야 합니다.

SAS 토큰

공유 액세스 서명 (SAS) 토큰은 Blob 스토리지에 대한 액세스 권한을 지정합니다. (SAS에 대한 자세한 내용은 Azure Blob Storage 설명서를 참조하십시오.)

다양한 액세스 수준에서 SAS 토큰을 생성할 수 있습니다. DataSync다음과 같은 액세스 수준의 토큰을 지원합니다.

  • 계정

  • 컨테이너

  • 폴더

전송에 필요한 액세스 권한을DataSync 제공하려면 최소한 SAS 토큰에 읽기 및 목록 권한이 있어야 합니다. 액세스 수준에 따라 다른 권한으로 토큰을 구성해야 할 수도 있습니다. 예를 들어 계정 수준 액세스 권한이 있는 토큰에는 폴더 수준 액세스 권한이 있는 토큰보다 더 많은 권한이 필요합니다.

계정 수준 액세스를 위한 SAS 토큰 권한

DataSync다음 권한으로 계정 수준 액세스 토큰을 구성해야 합니다.

  • 허용된 서비스 — Blob

  • 허용되는 리소스 유형 — 컨테이너, 객체 (이러한 권한을 포함하지 않으면 객체 메타데이터를 전송할DataSync 수 없음)

  • 허용된 권한 — 읽기, 목록

  • 허용된 블럽 인덱스 권한 — 읽기/쓰기 (개체 태그를DataSync 복사하려는 경우)

컨테이너 수준 액세스를 위한 SAS 토큰 권한

DataSync다음 권한으로 컨테이너 수준 액세스 토큰을 구성해야 합니다.

폴더 수준 액세스를 위한 SAS 토큰 권한

블럽 스토리지와 함께 Azure Data Lake Storage Gen2를 사용하는 경우 컨테이너의 특정 폴더에만 액세스할 수 있는 SAS 토큰을 제공할DataSync 수 있습니다.

DataSync다음 권한으로 폴더 수준 액세스 토큰을 구성해야 합니다.

  • 읽기

  • 목록

이러한 종류의 토큰을 구성하는 방법에 대한 자세한 내용은 Azure Blob Storage 설명서를 참조하십시오.

에 대한DataSync Azure Blob 저장소 위치를 만들 때는 동일한 폴더의 전체 경로를 지정해야 합니다.

SAS 만료 정책

전송을 완료하기 전에 SAS가 만료되지 않았는지 확인하십시오. SAS 만료 정책 구성에 대한 자세한 내용은 Azure Blob Storage 설명서를 참조하십시오.

전송 중에 SAS가 만료되면 Azure Blob Storage 위치에 더 이상 액세스할 수 없습니다 (디렉터리를 열지 못했습니다).DataSync 이 경우 새 SAS 토큰으로 위치를 업데이트하고DataSync 작업을 다시 시작해야 합니다.

액세스 계층

DataSync핫 티어 또는 콜드 티어에서 Azure Blob Storage 개체를 전송할 수 있습니다. 아카이브 액세스 계층의 객체 전송을 건너뛰게 됩니다. 아카이브 계층의 객체를 전송하기 전에 핫 티어 또는 콜드 티어로 다시 하이드레이션해야 합니다.

블럽 유형

DataSync블록, 페이지 및 추가 블롭을 포함하는 모든 블럽 유형을 전송할 수 있습니다. 자세한 내용은 Azure Blob 저장소 문서를 참조하십시오.

설정

현재 이 기능은DataSync 콘솔AWS Command Line Interface, 또는 에서만 사용할 수AWS SDK for Java 2.x 있습니다.

참고

DataSync콘솔을 사용하는 경우 별도의 설정이 필요하지 않습니다.

를 사용하여 설정하기AWS CLI

다음 지침은 이 기능을 사용하도록 AWS Command Line Interface(AWS CLI) 버전 2를 설정하는 방법을 설명합니다.

AWS CLI을 설정하려면
  1. DataSyncAPI 모델을 다운로드하고 JSON 파일의 압축을 풉니다.

  2. 다음 명령을 실행하여AWS CLI 구성에 서비스 모델을 추가합니다.

    이 예에서는datasync-azure-blob 서비스 이름을 생성합니다. 다른 이름을 지정할 수 있습니다.

    aws configure add-model \ --service-model file://datasync-service-model.json \ --service-name datasync-azure-blob

모델을 추가한 후에는 이 기능을 에서 사용할 수AWS CLI 있습니다.

를 사용하여 설정하기AWS SDK for Java 2.x

다음 지침에서는 이 기능을 사용하도록 설정하는 방법을 설명합니다.AWS SDK for Java 2.x

Java 2.x용 SDK 설정
  1. AwsJavaSdk-DataSync-2.0.jar파일이 있는지 확인합니다. 그렇지 않은 경우 담당자에게DataSync 문의하세요.

  2. Maven 프로젝트에서pom.xml 파일에DataSync Java SDK의 명시적 종속성이 있는지 확인하십시오. 종속성이 없는 경우 다음 예제를 사용하여 종속성을 생성하십시오.

    <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>datasync</artifactId> <version>2.17.290</version> </dependency>
  3. 다음 명령을 실행합니다.

    mvn org.apache.maven.plugins:maven-install-plugin:3.0.0-M1:install-file \ --batch-mode -Dfile=/AwsJavaSdk-DataSync-2.0.jar \ -DgroupId=software.amazon.awssdk \ -DartifactId=datasync \ -Dversion=2.17.290 \ -Dpackaging=jar

    다음과 같은 사항에 유의하세요.

    • 올바른AwsJavaSdk-DataSync-2.0.jar 파일 경로를 사용해야 합니다.

    • 2.17.290버전은 예시입니다.

DataSync상담원 만들기

Azure Blob 저장소 컨테이너에 연결할 수 있는DataSync 에이전트가 필요합니다. 에이전트는 컨테이너를 읽고 객체를 쉽게 이동할 수 있도록 합니다AWS.

Azure Blob 저장소 전송 위치 만들기

기존 Azure Blob Storage 컨테이너를 전송의 소스DataSync 위치로 사용하도록 구성할 수 있습니다.

시작하기 전: Azure Blob Storage에DataSync 액세스하는 방법과 Blob Storage 액세스 계층에서 작동하는 방법을 알고 있는지 확인하세요.

  1. https://console.aws.amazon.com/datasync/ 에서AWS DataSync 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 데이터 전송을 확장한 다음 위치위치 생성을 선택합니다.

  3. 위치 유형에서 Microsoft Azure Blob 스토리지를 선택합니다.

  4. 에이전트의 경우 Azure Blob Storage 컨테이너에 연결할 수 있는DataSync 에이전트를 선택합니다.

    한 명 이상의 상담원을 선택할 수 있습니다. 자세한 정보는 송금에 여러 AWS DataSync 명의 상담원 사용을 참조하세요.

  5. 컨테이너 URL에 전송과 관련된 컨테이너의 URL을 입력합니다.

  6. 컨테이너의 가상 디렉터리로 전송을 제한하려면 폴더에 경로 세그먼트를 입력합니다 (예:/my/images).

    DataSync이러한 경로 세그먼트가 있는 오브젝트만 복사합니다.

    중요

    SAS 토큰이 폴더에 대한 액세스만 허용하는 경우 전송이 작동하려면 여기에 이 폴더의 전체 경로를 지정해야 합니다.

  7. SAS 토큰의 경우 BlobDataSync 스토리지에 액세스할 수 있는 SAS 토큰을 입력합니다.

    토큰은 스토리지 리소스 URI와 물음표 뒤에 오는 SAS URI 문자열의 일부입니다. 토큰은 다음과 같은 형태입니다.

    sp=r&st=2023-12-20T14:54:52Z&se=2023-12-20T22:54:52Z&spr=https&sv=2021-06-08&sr=c&sig=aBBKDWQvyuVcTPH9EBp%2FXTI9E%2F%2Fmq171%2BZU178wcwqU%3D
  8. (선택 사항) 위치에 태그를 지정하려면 KeyValue 필드에 값을 입력합니다.

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

  9. 위치 생성을 선택합니다.

참고

다음 지침에서는datasync-azure-blob 명령을 사용하지만 이 명령의 이름을 다른 이름으로 지정할 수 있습니다. 자세한 정보는 를 사용하여 설정하기AWS CLI을 참조하세요.

  1. 다음create-location-azure-blob 명령을 복사합니다.

    aws datasync-azure-blob create-location-azure-blob \ --container-url "https://path/to/container" \ --authentication-type "SAS" \ --sas-configuration '{ "Token": "your-sas-token" }' \ --agent-arns my-datasync-agent-arn \ --subdirectory "/path/to/my/data" \ --tags [{"Key": "key1","Value": "value1"}]
  2. --container-url매개 변수로 전송과 관련된 Azure Blob Storage 컨테이너의 URL을 지정합니다.

  3. --authentication-type매개변수로 지정합니다SAS.

  4. --sas-configuration매개변수Token 옵션으로 Blob 스토리지에 액세스할 수DataSync 있는 SAS 토큰을 지정합니다.

    토큰은 스토리지 리소스 URI와 물음표 뒤에 오는 SAS URI 문자열의 일부입니다. 토큰은 다음과 같은 형태입니다.

    sp=r&st=2023-12-20T14:54:52Z&se=2023-12-20T22:54:52Z&spr=https&sv=2021-06-08&sr=c&sig=aBBKDWQvyuVcTPH9EBp%2FXTI9E%2F%2Fmq171%2BZU178wcwqU%3D
  5. --agent-arns파라미터에 연결할 수 있는DataSync 에이전트의 Amazon 리소스 이름 (ARN) 을 지정합니다.

    다음은 에이전트 ARNarn:aws:datasync:us-east-1:123456789012:agent/agent-01234567890deadfb

    둘 이상의 에이전트를 지정할 수 있습니다. 자세한 정보는 송금에 여러 AWS DataSync 명의 상담원 사용을 참조하세요.

  6. 전송을 컨테이너의 가상 디렉터리로 제한하려면--subdirectory 파라미터에 경로 세그먼트를 지정하십시오 (예:/my/images).

    DataSync이러한 경로 세그먼트가 있는 오브젝트만 복사합니다.

    중요

    SAS 토큰이 하위 디렉터리 (또는 폴더) 에 대한 액세스만 허용하는 경우 전송이 작동하려면 여기에 이 하위 디렉터리의 전체 경로를 지정해야 합니다.

  7. (선택 사항)--tags 파라미터에 키-값 페어를 지정합니다.

    위치에 대한 이름 태그를 생성하는 것이 좋습니다.

  8. create-location-azure-blob 명령을 실행합니다.

    생성한 위치의 ARN을 보여주는 응답을 받게 됩니다. 예시:

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

Azure Blob 스토리지 전송 위치 보기

기존 Azure Blob 저장소 위치에 대한 세부 정보를 얻을 수 있습니다.

  1. https://console.aws.amazon.com/datasync/ 에서AWS DataSync 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 위치를 선택합니다.

  3. Azure Blob 저장소 위치를 선택합니다.

    위치를 사용하는 모든DataSync 작업을 포함하여 위치에 대한 세부 정보를 볼 수 있습니다.

참고

다음 지침에서는datasync-azure-blob 명령을 사용하지만 이 명령의 이름을 다른 이름으로 지정할 수 있습니다. 자세한 정보는 를 사용하여 설정하기AWS CLI을 참조하세요.

  1. 다음describe-location-azure-blob 명령을 복사합니다.

    aws datasync-azure-blob describe-location-azure-blob \ --location-arn "your-azure-blob-location-arn"
  2. --location-arn매개 변수로 만든 Azure Blob 저장소 위치의 ARN을 지정합니다.

  3. describe-location-azure-blob 명령을 실행합니다.

    위치에 대한 세부 정보를 보여주는 응답을 받게 됩니다. 예시:

    { "LocationArn": "arn:aws:datasync:us-east-1:123456789012:location/loc-12345678abcdefgh", "LocationUri": "azure-blob://my-user.blob.core.windows.net/container-1", "AuthenticationType": "SAS", "Subdirectory": "/my/images", "AgentArns": ["arn:aws:datasync:us-east-1:123456789012:agent/agent-01234567890deadfb"], }

Azure Blob 저장소 전송 위치 업데이트

필요한 경우 위치 구성을 수정할 수 있습니다.

참고

DataSync콘솔에서는 이 작업을 수행할 수 없습니다.

참고

다음 지침에서는datasync-azure-blob 명령을 사용하지만 이 명령의 이름을 다른 이름으로 지정할 수 있습니다. 자세한 정보는 를 사용하여 설정하기AWS CLI을 참조하세요.

  1. 다음update-location-azure-blob 명령을 복사합니다.

    aws datasync-azure-blob update-location-azure-blob \ --location-arn "your-azure-blob-location-arn" \ --authentication-type "SAS" \ --sas-configuration '{ "Token": "your-sas-token" }' \ --agent-arns my-datasync-agent-arn \ --subdirectory "/path/to/my/data"
  2. --location-arn매개 변수로 업데이트하려는 Azure Blob 저장소 위치의 ARN을 지정합니다.

  3. --authentication-type매개변수로 지정합니다SAS.

  4. --sas-configuration매개변수Token 옵션으로 Blob 스토리지에 액세스할 수DataSync 있는 SAS 토큰을 지정합니다.

    토큰은 스토리지 리소스 URI와 물음표 뒤에 오는 SAS URI 문자열의 일부입니다. 토큰은 다음과 같은 형태입니다.

    sp=r&st=2022-12-20T14:54:52Z&se=2022-12-20T22:54:52Z&spr=https&sv=2021-06-08&sr=c&sig=qCBKDWQvyuVcTPH9EBp%2FXTI9E%2F%2Fmq171%2BZU178wcwqU%3D
  5. --agent-arns파라미터에 연결하려는DataSync 에이전트의 Amazon 리소스 이름 (ARN) 을 지정합니다.

    다음은 에이전트 ARNarn:aws:datasync:us-east-1:123456789012:agent/agent-01234567890deadfb

    둘 이상의 에이전트를 지정할 수 있습니다. 자세한 정보는 송금에 여러 AWS DataSync 명의 상담원 사용을 참조하세요.

  6. 전송을 컨테이너의 가상 디렉터리로 제한하려면--subdirectory 파라미터에 경로 세그먼트를 지정하십시오 (예:/my/images).

    DataSync이러한 경로 세그먼트가 있는 오브젝트만 복사합니다.

    중요

    SAS 토큰이 하위 디렉터리 (또는 폴더) 에 대한 액세스만 허용하는 경우 전송이 작동하려면 여기에 이 하위 디렉터리의 전체 경로를 지정해야 합니다.

메타데이터 처리

Azure Blob Storage에서 전송할 때 메타데이터를DataSync 처리하는 방법은 대상 위치에 따라 다릅니다.

목적지가 다음과 같은 경우 DataSync양철통
  • Amazon S3

다음 메타데이터를 대상에 복사합니다.

  • 사용자 정의 객체 메타데이터

  • 객체 태그

  • 다음 시스템 정의 객체 메타데이터

    • Content-Disposition

    • Content-Encoding

    • Content-Language

    • Content-Type

    참고: 초기 전송 시 모든 객체의 시스템 메타데이터를DataSync 복사합니다. 변경된 데이터만 전송하도록 작업을 구성한 경우 객체의 콘텐츠 또는 사용자 메타데이터도 수정되지 않는 한 후속 전송 시 시스템 메타데이터를 복사하지 않습니다.DataSync

  • Amazon EFS

  • FSx for Lustre

  • OpenZFs

  • ONTAP용 FSx (NFS 사용)

대상 파일 및 폴더에 기본 POSIX 메타데이터를 적용합니다. 이 방법에는 기본 POSIX 사용자 ID 및 그룹 ID 값 사용이 포함됩니다.

  • FSx for Windows File Server

  • ONTAP용 FSx (SMB 사용)

다음 메타데이터를 대상에 적용합니다.

  • 파일 및 폴더 타임스탬프

  • DataSync대상 위치를 만들 때 지정한 Windows 사용자를 기반으로 하는 소유권

  • 상위 디렉터리에서 상속된 권한

제한 사항

다음을 사용하여 Azure Blob Storage에서 데이터를 이동할 때 현재 다음과 같은 제한 사항이 있습니다DataSync.

  • AWS GovCloud (US)및 중국 지역을DataSync 제외하고 AWS 리전지원되는 모든 지역에 Azure Blob Storage 위치를 만들 수 있습니다.

  • Azure Blob Storage는 소스 위치로만 사용할 수 있습니다.

  • Amazon S3로 전송할 때 5TB보다 큰 Azure Blob 스토리지 객체는 전송하지DataSync 않습니다.

  • Amazon S3로 전송할 때 메타데이터가 2KB를 초과하는 Azure Blob Storage 객체는 전송하지 않습니다.DataSync