Mountpoint 구성 및 사용 - Amazon Simple Storage Service

Mountpoint 구성 및 사용

Mountpoint for Amazon S3를 사용하려면 호스트에 마운트하려는 하나 이상의 버킷에 대한 액세스 권한이 있는 유효한 AWS 자격 증명이 필요합니다. 다양한 인증 방법은 GitHub의 AWS 자격 증명을 참조하세요.

예를 들어, 이 목적을 위해 새 AWS Identity and Access Management(IAM) 사용자 및 역할을 생성할 수 있습니다. 이 역할에 마운트하려는 하나 이상의 버킷에 대한 액세스 권한이 있는지 확인합니다. 인스턴스 프로파일을 사용하여 Amazon EC2 인스턴스에 IAM 역할을 전달할 수 있습니다.

Mountpoint for Amazon S3 사용

Mountpoint for Amazon S3를 사용하여 다음을 수행합니다.

  1. mount-s3 명령을 사용하여 버킷을 마운트합니다.

    다음 예에서는 amzn-s3-demo-bucket을 S3 버킷 이름으로 바꾸고 ~/mnt를 S3 버킷을 마운트할 호스트의 디렉터리로 바꿉니다.

    mkdir ~/mnt mount-s3 amzn-s3-demo-bucket ~/mnt

    Mountpoint 클라이언트는 기본적으로 백그라운드에서 실행되기 때문에 이제 ~/mnt 디렉터리를 통해 S3 버킷의 객체에 액세스할 수 있습니다.

  2. Mountpoint를 통해 버킷의 객체에 액세스합니다.

    버킷을 로컬로 마운트 후 cat 또는 ls와 같은 일반적인 Linux 명령을 사용하여 S3 객체 작업을 수행할 수 있습니다. Mountpoint for Amazon S3는 S3 버킷의 키를 슬래시(/) 문자로 분할하여 파일 시스템 경로로 해석합니다. 예를 들어 버킷에 객체 키 Data/2023-01-01.csv가 있는 경우 Mountpoint 파일 시스템에 Data라는 디렉터리가 있고 그 안에 2023-01-01.csv라는 파일이 있습니다.

    Mountpoint for Amazon S3는 의도적으로 파일 시스템에 대한 전체 POSIX 표준 사양을 구현하지 않습니다. Mountpoint는 파일 시스템 인터페이스를 통해 Amazon S3에 저장된 데이터에 대한 높은 처리량의 읽기 및 쓰기 액세스가 필요하지만 그 외에는 파일 시스템 기능에 의존하지 않는 워크로드에 최적화되어 있습니다. 자세한 내용은 GitHub의 Mountpoint for Amazon S3 파일 시스템 동작을 참조하세요. 보다 풍부한 파일 시스템 의미 체계가 필요한 고객은 Amazon Elastic File System(Amazon EFS) 또는 Amazon FSx 등의 다른 AWS 파일 서비스를 고려해야 합니다.

  3. umount 명령을 사용하여 버킷을 마운트 해제합니다. 이 명령은 S3 버킷을 마운트 해제하고 Mountpoint를 종료합니다.

    다음 예제 명령을 사용하려면 ~/mnt를 S3 버킷이 마운트된 호스트의 디렉터리로 바꿉니다.

    umount ~/mnt
    참고

    이 명령의 옵션 목록을 보려면 umount --help를 실행합니다.

추가 Mountpoint 구성 세부 정보는 GitHub의 S3 버킷 구성 및 파일 시스템 구성을 참조하세요.

Mountpoint에서 캐시 구성

Mountpoint for Amazon S3는 다양한 유형의 데이터 캐싱을 지원합니다. 반복되는 읽기 요청을 가속화하려면 다음을 옵트인할 수 있습니다.

  • 로컬 캐시 - Amazon EC2 인스턴스 스토리지 또는 Amazon Elastic Block Store 볼륨에서 로컬 캐시를 사용할 수 있습니다. 동일한 컴퓨팅 인스턴스에서 동일한 데이터를 반복적으로 읽고 반복 읽기 데이터세트에 대해 로컬 인스턴스 스토리지에 미사용 공간이 있는 경우 로컬 캐시에 옵트인해야 합니다.

  • 공유 캐시 - S3 Express One Zone에서 공유 캐시를 사용할 수 있습니다. 여러 컴퓨팅 인스턴스에서 작은 객체를 반복적으로 읽거나 반복적으로 읽는 데이터세트의 크기를 모르고 캐시 크기의 탄력성을 활용하려는 경우 공유 캐시에 옵트인해야 합니다. 옵트인하면 Mountpoint는 S3 Express One Zone을 사용하는 디렉터리 버킷에 최대 1MB 크기의 객체를 유지합니다.

  • 로컬 캐시 및 공유 캐시 결합 - 로컬 캐시에 미사용 공간이 있지만 여러 인스턴스에서 공유 캐시도 원할 경우 로컬 캐시와 공유 캐시를 모두 옵트인할 수 있습니다.

Mountpoint에서의 캐시는 여러 번 읽는 동안 변경되지 않는 동일한 데이터를 반복적으로 읽는 사용 사례에 적합합니다. 예를 들어, 모델 정확도를 높이기 위해 학습 데이터 세트를 여러 번 읽어야 하는 기계 학습 훈련 작업에 캐시를 사용할 수 있습니다.

Mountpoint에서 캐싱을 구성하는 방법에 대한 자세한 내용은 다음 예제를 참조하세요.

로컬 캐시

--cache CACHE_PATH 플래그를 사용하여 로컬 캐시에 옵트인할 수 있습니다. 다음 예시에서 데이터를 캐시하려는 디렉터리의 파일 경로로 CACHE_PATH를 바꾸세요. amzn-s3-demo-bucket을 S3 버킷 이름으로 바꾸고 ~/mnt를 S3 버킷을 마운트할 호스트의 디렉터리로 바꿉니다.

mkdir ~/mnt mount-s3 --cache CACHE_PATH amzn-s3-demo-bucket ~/mnt

S3 버킷을 마운트하고 로컬 캐싱을 옵트인하면 하위 디렉터리가 아직 없는 경우 Mountpoint는 구성된 캐시 위치에 빈 하위 디렉터리를 생성합니다. 버킷을 처음 마운트하고 마운트를 해제하면 Mountpoint는 로컬 캐시의 콘텐츠를 삭제합니다.

중요

로컬 캐싱을 활성화할 경우 Mountpoint는 마운트 시 제공된 로컬 캐시 위치에 마운트된 S3 버킷의 암호화되지 않은 객체 콘텐츠를 보관합니다. 데이터를 보호하려면 파일 시스템 액세스 제어 메커니즘을 사용하여 데이터 캐시 위치에 대한 액세스를 제한해야 합니다.

공유 캐시

여러 컴퓨팅 인스턴스에서 작은 객체(최대 1MB)를 반복적으로 읽거나 반복적으로 읽는 데이터세트 크기가 로컬 캐시 크기를 초과하는 경우가 많을 경우 S3 Express One Zone에서 공유 캐시를 사용해야 합니다. 여러 인스턴스에서 동일한 데이터를 반복적으로 읽으면 마운트된 S3 버킷에 대한 중복 요청을 방지하여 지연 시간을 개선합니다.

공유 캐시에 옵트인하면 S3 Express One Zone의 디렉터리 버킷에 캐시된 데이터에 대한 비용을 지불합니다. 또한 S3 Express One Zone의 디렉터리 버킷에 있는 데이터에 대한 요청도 비용을 지불합니다. 자세한 내용은 Amazon S3 요금을 참조하십시오. Mountpoint는 디렉터리 버킷에서 캐시된 객체를 삭제하지 않습니다. 스토리지 비용을 관리하려면 디렉터리 버킷에 수명 주기 정책을 설정하여 Amazon S3가 지정한 기간 이후에 S3 Express One Zone에서 캐시된 데이터를 만료하도록 해야 합니다. 자세한 내용은 GitHub의 Mountpoint for Amazon S3 캐싱 구성을 참조하세요.

범용 버킷을 컴퓨팅 인스턴스에 마운트할 때 S3 Express One Zone에서 캐싱에 옵트인하려면 --cache-xz 플래그를 사용하고 디렉터리 버킷을 캐시 위치로 지정합니다. 다음 예제에서는 사용자 입력 자리 표시자를 바꿉니다.

mount-s3 amzn-s3-demo-bucket ~/mnt --cache-xz amzn-s3-demo-bucket--usw2-az1--x-s3

로컬 캐시 및 공유 캐시 결합

인스턴스에 미사용 공간이 있지만 여러 인스턴스에서 공유 캐시도 사용하려는 경우 로컬 캐시와 공유 캐시를 모두 옵트인할 수 있습니다. 이 캐싱 구성을 사용하면 필수 데이터가 로컬 스토리지에서 캐싱될 때 디렉터리 버킷의 공유 캐시에 대한 동일한 인스턴스의 중복 읽기 요청을 방지할 수 있습니다. 이렇게 하면 요청 비용을 줄이고 성능을 개선할 수 있습니다.

S3 버킷을 마운트할 때 로컬 캐시와 공유 캐시를 모두 옵트인하려면 --cache--cache-xz 플래그를 사용하여 두 캐시 위치를 모두 지정합니다. 다음 예제를 사용하여 로컬 캐시와 공유 캐시를 모두 옵트인하려면 사용자 입력 자리 표시자를 바꿉니다.

mount -s3 amzn-s3-demo-bucket ~/mnt --cache /path/to/mountpoint/cache --cache -xz amzn-s3-demo-bucket--usw2-az1--x-s3

자세한 내용은 GitHub의 Mountpoint for Amazon S3 캐싱 구성을 확인하세요.

중요

공유 캐싱을 활성화할 경우 Mountpoint는 마운트된 S3 버킷의 객체 콘텐츠를 공유 캐시 위치로 제공하는 S3 디렉터리 버킷으로 복사하므로 S3 디렉터리 버킷에 액세스할 수 있는 모든 호출자가 액세스할 수 있습니다. 캐시된 데이터를 보호하려면 Amazon S3의 보안 모범 사례에 따라 버킷이 올바른 정책을 사용하고 공개적으로 액세스할 수 없도록 해야 합니다. Mountpoint 공유 캐싱 전용 디렉터리 버킷을 사용하고 Mountpoint 클라이언트에만 액세스 권한을 부여해야 합니다.