S3 버킷에 파일 시스템 연결 - FSx for Lustre

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

S3 버킷에 파일 시스템 연결

Amazon FSx for Lustre 파일 시스템을 Amazon S3의 데이터 리포지토리에 연결할 수 있습니다. 파일 시스템을 생성할 때 또는 파일 시스템을 생성한 후 언제든지 링크를 생성할 수 있습니다.

파일 시스템의 디렉터리와 S3 버킷 또는 접두사 간의 링크는 데이터 리포지토리 연결(DRA)이라고 부릅니다. FSx for Lustre 파일 시스템에 최대 8개의 데이터 리포지토리 연결을 구성할 수 있습니다. 최대 8개의 DRA 요청을 대기열에 넣을 수 있지만 파일 시스템에 대해 한 번에 하나의 요청만 처리할 수 있습니다. 각 데이터 리포지토리 연결에는 고유한 FSx for Lustre 파일 시스템 디렉터리 및 이와 연결된 고유한 S3 버킷 또는 접두사가 있어야 합니다.

참고

FSx for Lustre 2.10 파일 시스템 또는 Scratch 1 파일 시스템에서는 데이터 리포지토리 연결, 자동 내보내기 및 다중 데이터 리포지토리 지원을 사용할 수 없습니다.

파일 시스템의 파일 및 디렉터리로 S3 데이터 리포지토리의 객체에 액세스하려면 파일 및 디렉터리 메타데이터를 파일 시스템에 로드해야 합니다. DRA를 만들 때 연결된 데이터 리포지토리에서 메타데이터를 로드하거나, 나중에 데이터 리포지토리 가져오기 작업을 사용하여 FSx for Lustre 파일 시스템을 사용하여 액세스하려는 파일 및 디렉터리 배치에 대한 메타데이터를 로드하거나, 데이터 리포지토리에서 객체가 추가, 변경 또는 삭제될 때 자동 내보내기를 사용하여 메타데이터를 자동으로 로드할 수 있습니다.

자동 가져오기 전용, 자동 내보내기 전용 또는 두 가지 모두에 대해 데이터 리포지토리 연결을 구성할 수 있습니다. 자동 가져오기와 자동 내보내기로 구성된 데이터 리포지토리 연결은 파일 시스템과 연결된 S3 버킷 간에 데이터를 양방향으로 전파합니다. S3 데이터 리포지토리의 데이터를 변경하면 FSx for Lustre가 변경 사항을 감지한 다음 변경 사항을 파일 시스템으로 자동으로 가져옵니다. 파일을 생성, 수정 또는 삭제할 때 애플리케이션이 파일 수정을 완료하면 FSx for Lustre는 정의된 변경 사항을 자동으로 Amazon S3에 비동기식으로 내보냅니다.

중요
  • 파일 시스템과 S3 버킷 모두에서 동일한 파일을 수정하는 경우 애플리케이션 수준의 조정을 통해 충돌을 방지해야 합니다. FSx for Lustre는 여러 위치에서의 쓰기 충돌을 방지하지 않습니다.

  • 변경할 수 없는 속성으로 표시된 파일의 경우 FSx for Lustre는 FSx for Lustre 파일 시스템과 파일 시스템에 연결된 S3 버킷 간의 변경 사항을 동기화할 수 없습니다. 변경 불가 플래그를 장기간 설정하면 Amazon FSx와 S3 간의 데이터 이동 성능이 저하될 수 있습니다.

데이터 리포지토리 연결을 생성할 때 다음 속성을 구성할 수 있습니다.

  • 파일 시스템 경로 - 아래의 지정된 데이터 저장소 one-to-one 경로와 매핑될 디렉터리 (예:/ns1/) 또는 하위 디렉터리 (예:/ns1/subdir/) 를 가리키는 파일 시스템의 로컬 경로를 입력합니다. 이름 앞에 슬래시가 있어야 합니다. 두 개의 데이터 리포지토리 연결에 중복되는 파일 시스템 경로가 있을 수 없습니다. 예를 들어, 데이터 리포지토리가 파일 시스템 경로 /ns1과 연결된 경우, 또 다른 데이터 리포지토리를 파일 시스템 경로 /ns1/ns2와 연결할 수 없습니다.

    참고

    슬래시(/)만 파일 시스템 경로로 지정하는 경우 파일 시스템에 하나의 데이터 리포지토리만 연결할 수 있습니다. 파일 시스템과 연결된 첫 번째 데이터 리포지토리의 파일 시스템 경로로 '/'만 지정할 수 있습니다.

  • 데이터 리포지토리 경로 - S3 데이터 리포지토리의 경로를 입력합니다. 경로는 s3://myBucket/myPrefix/ 형식의 S3 버킷 또는 접두사일 수 있습니다. 이 속성은 S3 데이터 리포지토리에서 파일을 가져오거나 내보낼 위치를 지정합니다. 데이터 리포지토리 경로를 제공하지 않으면 FSx for Lustre는 데이터 리포지토리 경로에 후행 “/”를 추가합니다. 예를 들어 데이터 리포지토리 s3://myBucket/myPrefix 경로를 제공하면 FSx for Lustre는 이를 s3://myBucket/myPrefix/와 같이 해석합니다.

    두 개의 데이터 리포지토리 연결에 중복되는 데이터 리포지토리 경로가 있을 수 없습니다. 예를 들어, 데이터 리포지토리가 파일 시스템 경로 s3://myBucket/myPrefix/와 연결된 경우, 데이터 리포지토리 경로 s3://myBucket/myPrefix/mySubPrefix와 연결되는 또 다른 데이터 리포지토리를 생성할 수 없습니다.

  • 리포지토리에서 메타데이터 가져오기 - 이 옵션을 선택하면 데이터 리포지토리 연결을 생성한 후 즉시 전체 데이터 리포지토리에서 메타데이터를 가져올 수 있습니다. 또는 데이터 리포지토리 연결이 생성된 후 언제든지 데이터 리포지토리 가져오기 작업을 실행하여 연결된 데이터 리포지토리의 메타데이터 전체 또는 일부를 파일 시스템으로 로드할 수 있습니다.

  • 가져오기 설정 - 연결된 S3 버킷에서 파일 시스템으로 자동으로 가져올 업데이트된 객체(신규, 변경 및 삭제된 객체의 모든 조합)의 유형을 지정하는 가져오기 정책을 선택합니다. 콘솔에서 데이터 리포지토리를 추가하면 자동 가져오기 (신규, 변경, 삭제) 가 기본적으로 활성화되지만, AWS CLI 또는 Amazon FSx API를 사용할 때는 기본적으로 비활성화됩니다.

  • 내보내기 설정 - S3 버킷으로 자동으로 내보낼 업데이트된 객체(신규, 변경 및 삭제된 객체의 모든 조합)의 유형을 지정하는 내보내기 정책을 선택합니다. 콘솔에서 데이터 리포지토리를 추가하면 자동 내보내기 (새로 만들기, 변경됨, 삭제됨) 가 기본적으로 켜지지만, AWS CLI 또는 Amazon FSx API를 사용할 때는 기본적으로 비활성화됩니다.

파일 시스템 경로데이터 리포지토리 경로 설정은 Amazon FSx의 경로와 S3의 객체 키 간 1:1 매핑을 제공합니다.

연결된 S3 버킷에 대한 리전 및 계정 지원

S3 버킷에 대한 링크를 생성할 때는 다음과 같은 리전 및 계정 지원 제한을 염두에 두세요.

  • 자동 내보내기는 크로스 리전 구성을 지원합니다. Amazon FSx 파일 시스템과 연결된 S3 버킷은 AWS 리전 같은 위치에 있거나 다른 위치에 있을 수 있습니다. AWS 리전

  • 자동 가져오기는 크로스 리전 구성을 지원하지 않습니다. Amazon FSx 파일 시스템과 연결된 S3 버킷 모두 같은 AWS 리전에 있어야 합니다.

  • 자동 내보내기와 자동 가져오기 모두 계정 간 구성을 지원합니다. Amazon FSx 파일 시스템과 연결된 S3 버킷은 AWS 계정 같거나 다른 것에 속할 수 있습니다. AWS 계정

S3 버킷 링크 생성

다음 절차는 및 () 를 사용하여 FSx for Lustre 파일 시스템을 기존 S3 버킷에 대한 데이터 리포지토리 연결을 생성하는 프로세스를 안내합니다. AWS Management Console AWS Command Line Interface AWS CLI S3 버킷을 파일 시스템에 연결하기 위해 권한을 추가하는 방법에 대한 자세한 내용은 Amazon S3의 데이터 리포지토리를 사용하기 위한 권한 추가 섹션을 참조하세요.

참고

데이터 리포지토리는 파일 시스템 백업이 활성화된 파일 시스템에 연결할 수 없습니다. 데이터 리포지토리에 연결하기 전에 백업을 비활성화합니다.

  1. https://console.aws.amazon.com/fsx/에서 Amazon FSx 콘솔을 엽니다.

  2. 시작하기 섹션의 1단계: FSx for Lustre 파일 시스템 생성 섹션에 설명된 새 파일 시스템 생성 절차를 따릅니다.

  3. 데이터 리포지토리 가져오기/내보내기 - 선택 사항 섹션을 엽니다. 기본적으로 이 기능은 비활성화되어 있습니다.

  4. S3에서 데이터 가져오기 및 S3로 데이터 내보내기를 선택합니다.

  5. 데이터 리포지토리 연결 정보 대화 상자에서 다음 필드에 대한 정보를 제공합니다.

    • 파일 시스템 경로: S3 데이터 리포지토리와 연결할 Amazon FSx 파일 시스템 내의 상위 수준 디렉터리(예: /ns1) 또는 하위 디렉터리(예:/ns1/subdir)의 이름을 입력합니다. 경로 앞에 슬래시가 있어야 합니다. 두 개의 데이터 리포지토리 연결에 중복되는 파일 시스템 경로가 있을 수 없습니다. 예를 들어, 데이터 리포지토리가 파일 시스템 경로 /ns1과 연결된 경우, 파일 시스템 경로 /ns1/ns2와 또 다른 데이터 리포지토리를 연결할 수 없습니다. 파일 시스템 경로 설정은 파일 시스템의 모든 데이터 리포지토리 연결에서 고유해야 합니다.

    • 데이터 리포지토리 경로: 파일 시스템에 연결할 기존 S3 버킷 또는 접두사의 경로를 입력합니다(예:s3://my-bucket/my-prefix/). 두 개의 데이터 리포지토리 연결에 중복되는 데이터 리포지토리 경로가 있을 수 없습니다. 예를 들어, 데이터 리포지토리가 파일 시스템 경로 s3://myBucket/myPrefix/와 연결된 경우, 또 다른 데이터 리포지토리 경로 s3://myBucket/myPrefix/mySubPrefix와 연결된 다른 데이터 리포지토리를 생성할 수 없습니다. 데이터 리포지토리 경로 설정은 파일 시스템의 모든 데이터 리포지토리 연결에서 고유해야 합니다.

    • 리포지토리에서 메타데이터 가져오기: 링크를 생성한 후 즉시 메타데이터를 가져오는 데이터 리포지토리 가져오기 작업을 선택적으로 실행하려면 이 속성을 선택합니다.

  6. 가져오기 설정 - 선택 사항의 경우 S3 버킷에서 객체를 추가, 변경 또는 삭제할 때 파일 및 디렉터리 목록을 최신 상태로 유지하는 방법을 결정하는 가져오기 정책을 설정합니다. 예를 들어, S3 버킷에서 생성된 새 객체의 메타데이터를 파일 시스템으로 가져오려면 새로 만들기를 선택합니다. 가져오기 정책에 대한 자세한 내용은 S3 버킷에서 업데이트 자동 가져오기 섹션을 참조하세요.

  7. 내보내기 정책에서는 파일 시스템에서 객체를 추가, 변경 또는 삭제할 때 연결된 S3 버킷으로 파일을 내보내는 방법을 결정하는 내보내기 정책을 설정합니다. 예를 들어 파일 시스템에서 콘텐츠 또는 메타데이터가 변경된 객체를 내보내려면 변경됨을 선택합니다. 내보내기 정책에 대한 자세한 내용은 업데이트를 S3 버킷으로 자동 내보냅니다. 섹션을 참조하세요.

  8. 파일 시스템 생성 마법사의 다음 섹션으로 계속 진행합니다.

  1. https://console.aws.amazon.com/fsx/에서 Amazon FSx 콘솔을 엽니다.

  2. 대시보드에서 파일 시스템을 선택한 다음 데이터 리포지토리 연결을 생성할 파일 시스템을 선택합니다.

  3. 데이터 리포지토리 탭을 선택합니다.

  4. 데이터 리포지토리 연결 패널에서 데이터 리포지토리 연결 만들기를 선택합니다.

  5. 데이터 리포지토리 연결 정보 대화 상자에서 다음 필드에 대한 정보를 제공합니다.

    • 파일 시스템 경로: S3 데이터 리포지토리와 연결할 Amazon FSx 파일 시스템 내의 상위 수준 디렉터리(예: /ns1) 또는 하위 디렉터리(예:/ns1/subdir)의 이름을 입력합니다. 경로 앞에 슬래시가 있어야 합니다. 두 개의 데이터 리포지토리 연결에 중복되는 파일 시스템 경로가 있을 수 없습니다. 예를 들어, 데이터 리포지토리가 파일 시스템 경로 /ns1과 연결된 경우, 파일 시스템 경로 /ns1/ns2와 또 다른 데이터 리포지토리를 연결할 수 없습니다. 파일 시스템 경로 설정은 파일 시스템의 모든 데이터 리포지토리 연결에서 고유해야 합니다.

    • 데이터 리포지토리 경로: 파일 시스템에 연결할 기존 S3 버킷 또는 접두사의 경로를 입력합니다(예:s3://my-bucket/my-prefix/). 두 개의 데이터 리포지토리 연결에 중복되는 데이터 리포지토리 경로가 있을 수 없습니다. 예를 들어, 데이터 리포지토리가 파일 시스템 경로 s3://myBucket/myPrefix/와 연결된 경우, 데이터 경로 s3://myBucket/myPrefix/mySubPrefix와 또 다른 데이터 리포지토리를 연결할 수 없습니다. 데이터 리포지토리 경로 설정은 파일 시스템의 모든 데이터 리포지토리 연결에서 고유해야 합니다.

    • 리포지토리에서 메타데이터 가져오기: 링크를 생성한 후 즉시 메타데이터를 가져오는 데이터 리포지토리 가져오기 작업을 선택적으로 실행하려면 이 속성을 선택합니다.

  6. 가져오기 설정 - 선택 사항의 경우 S3 버킷에서 객체를 추가, 변경 또는 삭제할 때 파일 및 디렉터리 목록을 최신 상태로 유지하는 방법을 결정하는 가져오기 정책을 설정합니다. 예를 들어, S3 버킷에서 생성된 새 객체의 메타데이터를 파일 시스템으로 가져오려면 새로 만들기를 선택합니다. 사용자 정책에 대한 자세한 내용은 S3 버킷에서 업데이트 자동 가져오기 섹션을 참조하세요.

  7. 내보내기 정책에서는 파일 시스템에서 객체를 추가, 변경 또는 삭제할 때 연결된 S3 버킷으로 파일을 내보내는 방법을 결정하는 내보내기 정책을 설정합니다. 예를 들어 파일 시스템에서 콘텐츠 또는 메타데이터가 변경된 객체를 내보내려면 변경됨을 선택합니다. 내보내기 정책에 대한 자세한 내용은 업데이트를 S3 버킷으로 자동 내보냅니다. 섹션을 참조하세요.

  8. 생성을 선택합니다.

다음 예제는 새 파일이나 변경된 파일을 파일 시스템으로 가져오는 가져오기 정책과 연결된 S3 버킷으로 새 파일, 변경 또는 삭제된 파일을 내보내는 내보내기 정책을 사용하여 Amazon FSx 파일 시스템을 S3 버킷에 연결하는 데이터 리포지토리 연결을 생성합니다.

  • 데이터 리포지토리 연결을 생성하려면 다음과 같이 Amazon FSx CLI 명령 create-data-repository-association을 사용합니다.

    $ aws fsx create-data-repository-association \ --file-system-id fs-0123456789abcdef0 \ --file-system-path /ns1/path1/ \ --data-repository-path s3://mybucket/myprefix/ \ --s3 "AutoImportPolicy={Events=[NEW,CHANGED,DELETED]},AutoExportPolicy={Events=[NEW,CHANGED,DELETED]}"

Amazon FSx는 DRA에 대한 JSON 설명을 즉시 반환합니다. DRA는 비동기적으로 생성됩니다.

파일 시스템 생성이 완료되기 전에도 이 명령을 사용하여 데이터 리포지토리 연결을 생성할 수 있습니다. 요청은 대기열에 추가되며 파일 시스템을 사용할 수 있게 되면 데이터 리포지토리 연결이 생성됩니다.

데이터 리포지토리 연결 설정 업데이트

다음 절차에 표시된 대로 AWS Management Console, AWS CLI또는 Amazon FSx API를 사용하여 기존 데이터 리포지토리 연결의 설정을 업데이트할 수 있습니다.

참고

DRA를 생성한 후에는 해당 File system path 또는 DRA의 Data repository path를 업데이트할 수 없습니다. File system path 또는 Data repository path를 변경하려면 DRA를 삭제하고 다시 생성해야 합니다.

  1. https://console.aws.amazon.com/fsx/에서 Amazon FSx 콘솔을 엽니다.

  2. 대시보드에서 파일 시스템을 선택한 다음 관리할 파일 시스템을 선택합니다.

  3. 데이터 리포지토리 탭을 선택합니다.

  4. 데이터 리포지토리 연결 패널에서 변경하려는 데이터 리포지토리 연결을 선택합니다.

  5. 업데이트를 선택합니다. 데이터 리포지토리 연결에 대한 편집 대화 상자가 표시됩니다.

  6. 가져오기 설정 - 선택 사항의 경우 가져오기 정책을 업데이트할 수 있습니다. 가져오기 정책에 대한 자세한 내용은 S3 버킷에서 업데이트 자동 가져오기 섹션을 참조하세요.

  7. 내보내기 설정 - 선택 사항의 경우 내보내기 정책을 업데이트할 수 있습니다. 내보내기 정책에 대한 자세한 내용은 업데이트를 S3 버킷으로 자동 내보냅니다. 섹션을 참조하세요.

  8. 업데이트를 선택합니다.

  • 데이터 리포지토리 연결을 업데이트하려면 다음과 같이 Amazon FSx CLI 명령 update-data-repository-association을 사용합니다.

    $ aws fsx update-data-repository-association \ --association-id 'dra-872abab4b4503bfc2' \ --s3 "AutoImportPolicy={Events=[NEW,CHANGED,DELETED]},AutoExportPolicy={Events=[NEW,CHANGED,DELETED]}"

데이터 리포지토리 연결의 가져오기 및 내보내기 정책을 업데이트한 후 Amazon FSx는 업데이트된 데이터 리포지토리 연결의 설명을 JSON으로 반환합니다.

S3 버킷에 대한 연결 삭제

다음 절차는 및 () 를 사용하여 AWS Management Console 기존 Amazon FSx 파일 시스템에서 기존 S3 버킷으로 데이터 리포지토리 연결을 삭제하는 프로세스를 안내합니다. AWS Command Line Interface AWS CLI데이터 리포지토리 연결을 삭제하면 S3 버킷에서 파일 시스템의 연결이 해제됩니다.

  1. https://console.aws.amazon.com/fsx/에서 Amazon FSx 콘솔을 엽니다.

  2. 대시보드에서 파일 시스템을 선택한 다음 데이터 리포지토리 연결을 삭제하려는 파일 시스템을 선택합니다.

  3. 데이터 리포지토리 탭을 선택합니다.

  4. 데이터 리포지토리 연결 창에서 삭제하려는 데이터 리포지토리 연결을 선택합니다.

  5. 작업에서 연결 삭제를 선택합니다.

  6. (선택 사항) 삭제 대화 상자에서 파일 시스템의 데이터 삭제를 선택하여 데이터 리포지토리 연결에 해당하는 파일 시스템의 데이터를 물리적으로 삭제할 수 있습니다.

  7. 삭제를 선택하여 파일 시스템에서 데이터 리포지토리 연결을 제거합니다.

다음 예제는 Amazon FSx 파일 시스템을 S3 버킷에 연결하는 데이터 리포지토리 연결을 삭제합니다. --association-id 파라미터는 삭제할 데이터 리포지토리 연결의 ID를 지정합니다.

  • 데이터 리포지토리 연결을 삭제하려면 다음과 같이 Amazon FSx CLI 명령 delete-data-repository-association을 사용합니다.

    $ aws fsx delete-data-repository-association \ --association-id dra-872abab4b4503bfc \ --delete-data-in-file-system false

데이터 리포지토리 연결을 삭제한 후 Amazon FSx는 설명을 JSON으로 반환합니다.

데이터 리포지토리 연결 세부 정보 보기

FSx for Lustre 콘솔, 및 API를 사용하여 데이터 리포지토리 연결의 세부 정보를 볼 수 있습니다. AWS CLI세부 정보에는 DRA의 연결 ID, 파일 시스템 경로, 데이터 리포지토리 경로, 가져오기 설정, 내보내기 설정, 상태 및 관련 파일 시스템의 ID가 포함됩니다.

  1. https://console.aws.amazon.com/fsx/에서 Amazon FSx 콘솔을 엽니다.

  2. 대시보드에서 파일 시스템을 선택한 다음 데이터 리포지토리 연결의 세부 정보를 보려는 파일 시스템을 선택합니다.

  3. 데이터 리포지토리 탭을 선택합니다.

  4. 데이터 리포지토리 연결 창에서 보려는 데이터 리포지토리 연결을 선택합니다. DRA 세부 정보가 표시된 요약 페이지가 표시됩니다.

    데이터 리포지토리 연결의 Amazon FSx 세부 정보 페이지.
  • 특정 데이터 리포지토리 연결의 세부 정보를 보려면 다음과 같이 Amazon FSx CLI 명령 describe-data-repository-associations를 사용합니다.

    $ aws fsx describe-data-repository-associations \ --association-ids dra-872abab4b4503bfc2

    Amazon FSx는 데이터 리포지토리 연결에 대한 설명을 JSON으로 반환합니다.

데이터 리포지토리 연결 수명 주기 상태

데이터 리포지토리 연결 수명 주기 상태는 특정 DRA에 대한 상태 정보를 제공합니다. 데이터 리포지토리 연결에는 다음과 같은 수명 주기 상태가 있을 수 있습니다.

  • 생성 - Amazon FSx는 파일 시스템과 연결된 데이터 리포지토리 간의 데이터 리포지토리 연결을 생성합니다. 데이터 리포지토리를 사용할 수 없습니다.

  • 사용 가능 - 데이터 리포지토리 연결을 사용할 수 있습니다.

  • 업데이트 - 데이터 리포지토리 연결은 고객이 주도한 업데이트를 진행 중이며, 이로 인해 가용성에 영향을 미칠 수 있습니다.

  • 삭제 - 고객이 데이터 리포지토리 연결을 삭제하는 중입니다.

  • 잘못된 구성 - Amazon FSx는 데이터 리포지토리 연결 구성이 수정될 때까지 S3 버킷에서 업데이트를 자동으로 가져오거나 S3 버킷으로 업데이트를 자동으로 내보낼 수 없습니다.

  • 실패 - 데이터 리포지토리 연결이 복구할 수 없는 터미널 상태입니다(예: 파일 시스템 경로가 삭제되거나 S3 버킷이 삭제되었기 때문).

Amazon FSx 콘솔, AWS Command Line Interface및 Amazon FSx API를 사용하여 데이터 리포지토리 연결의 수명 주기 상태를 볼 수 있습니다. 자세한 정보는 데이터 리포지토리 연결 세부 정보 보기을 참조하세요.

서버 측 암호화된 Amazon S3 버킷 사용

FSx for Lustre는 S3에서 관리하는 키 (SSE-S3) 를 사용한 서버 측 암호화와 저장된 키 (SSE-KMS) 를 사용하는 Amazon S3 버킷을 지원합니다. AWS KMS keys AWS Key Management Service

Amazon FSx에서 S3 버킷에 데이터를 쓸 때 데이터를 암호화하도록 하려면 S3 버킷의 기본 암호화를 SSE-S3 또는 SSE-KMS로 설정해야 합니다. 자세한 내용은 Amazon S3 사용자 가이드기본 암호화 구성을 참조하세요. S3 버킷에 파일을 작성할 때 Amazon FSx는 S3 버킷의 기본 암호화 정책을 따릅니다.

기본적으로 Amazon FSx는 SSE-S3 방식으로 암호화된 S3 버킷을 지원합니다. Amazon FSx 파일 시스템을 SSE-KMS 암호화를 사용하여 암호화된 S3 버킷에 연결하려면 Amazon FSx가 KMS 키를 사용하여 S3 버킷의 객체를 암호화하고 해독할 수 있도록 허용하는 설명을 고객 관리형 키 정책에 추가해야 합니다.

다음 명령문은 특정 Amazon FSx 파일 시스템이 특정 S3 버킷 bucket_name의 객체를 암호화하고 해독할 수 있도록 허용합니다.

{ "Sid": "Allow access through S3 for the FSx SLR to use the KMS key on the objects in the given S3 bucket", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::aws_account_id:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/AWSServiceRoleForFSxS3Access_fsx_file_system_id" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "aws_account_id", "kms:ViaService": "s3.bucket-region.amazonaws.com" }, "StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name/*" } } }
참고

CMK가 있는 KMS를 사용하여 S3 버킷 키가 활성화된 상태에서 S3 버킷을 암호화하는 경우 다음 예제와 같이 EncryptionContext를 객체 ARN이 아닌 버킷 ARN으로 설정합니다.

"StringLike": { "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name" }

다음 정책 설명문은 계정의 모든 Amazon FSx 파일 시스템을 특정 S3 버킷에 연결할 수 있도록 허용합니다.

{ "Sid": "Allow access through S3 for the FSx SLR to use the KMS key on the objects in the given S3 bucket", "Effect": "Allow", "Principal": { "AWS": "*" }, "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey" ], "Resource": "*", "Condition": { "StringEquals": { "kms:CallerAccount": "aws_account_id", "kms:ViaService": "s3.bucket-region.amazonaws.com" }, "StringLike": { "aws:userid": "*:FSx", "kms:EncryptionContext:aws:s3:arn": "arn:aws:s3:::bucket_name/*" } } }

다른 서버에 있는 암호화된 Amazon S3 버킷에 액세스 AWS 계정

암호화된 Amazon S3 버킷에 연결된 FSx for Lustre 파일 시스템을 생성한 후에는 연결된 S3 버킷에서 데이터를 읽거나 쓰기 전에 S3 버킷을 암호화하는 데 사용되는 KMS 키에 대한 AWSServiceRoleForFSxS3Access_fs-01234567890 서비스 연결 역할(SLR) 액세스 권한을 부여해야 합니다. KMS 키에 대한 권한이 이미 있는 IAM 역할을 사용할 수 있습니다.

참고

이 IAM 역할은 KMS 키/S3 버킷이 속한 계정이 아니라 FSx for Lustre 파일 시스템이 생성된 계정(S3 SLR과 동일한 계정)에 있어야 합니다.

IAM 역할을 사용하여 다음 AWS KMS API를 호출하여 S3 SLR에 대한 권한을 생성하여 SLR이 S3 객체에 대한 권한을 얻도록 합니다. SLR과 연결된 ARN을 찾으려면 파일 시스템 ID를 검색 문자열로 사용하여 IAM 역할을 검색하세요.

$ aws kms create-grant --region fs_account_region \ --key-id arn:aws:kms:s3_bucket_account_region:s3_bucket_account:key/key_id \ --grantee-principal arn:aws:iam::fs_account_id:role/aws-service-role/s3.data-source.lustre.fsx.amazonaws.com/AWSServiceRoleForFSxS3Access_file-system-id \ --operations "Decrypt" "Encrypt" "GenerateDataKey" "GenerateDataKeyWithoutPlaintext" "CreateGrant" "DescribeKey" "ReEncryptFrom" "ReEncryptTo"

서비스 연결 역할에 대한 자세한 내용은 Amazon FSx에 대해 서비스 연결 역할 사용 섹션을 참조하세요.