Amazon ECS에서 Amazon EFS 볼륨 사용 - Amazon Elastic Container Service

Amazon ECS에서 Amazon EFS 볼륨 사용

Amazon Elastic File System(Amazon EFS)은 Amazon ECS 태스크에 간단하고 확장 가능한 파일 스토리지를 제공합니다. Amazon EFS를 사용하면 스토리지 용량이 탄력적입니다. 파일을 추가 및 제거하면 스토리지 용량이 자동으로 확장 및 축소됩니다. 애플리케이션에서 스토리지가 필요할 때 필요한 만큼 확보할 수 있습니다.

Amazon ECS에서 Amazon EFS 파일 시스템을 사용하여 컨테이너 인스턴스 집합 간에 파일 시스템 데이터를 내보낼 수 있습니다. 이렇게 하면 태스크는 해당 태스크가 차지한 인스턴스와 상관없이 동일한 영구 스토리지에 액세스할 수 있습니다. 태스크 정의는 컨테이너 인스턴스에서 볼륨 마운트를 참조하여 파일 시스템을 사용해야 합니다.

자습서는 콘솔을 사용하여 Amazon ECS에 대한 Amazon EFS 파일 시스템 구성을 참조하세요.

고려 사항

Amazon EFS 볼륨을 사용할 때는 다음 사항을 고려해야 합니다.

  • EC2 시작 유형을 사용하는 태스크의 경우, Amazon EFS 파일 시스템 지원이 컨테이너 에이전트 버전이 1.35.0인 Amazon ECS 최적화 AMI 버전 20191212의 공개 미리보기로 추가되었습니다. 그러나 Amazon EFS 파일 시스템 지원은 Amazon EFS 액세스 포인트 및 IAM 권한 부여 기능이 포함된 컨테이너 에이전트 버전이 1.38.0인 Amazon ECS 최적화 AMI 버전 20200319의 정식 출시를 시작했습니다. 이러한 기능을 사용하려면 Amazon ECS 최적화 AMI 버전 20200319 이상을 사용하는 것이 좋습니다. 자세한 내용은 Amazon ECS 최적화 Linux AMI 단원을 참조하십시오.

    참고

    자체 AMI를 생성하는 경우 컨테이너 에이전트 1.38.0 이상, ecs-init 버전 1.38.0-1 이상을 사용하고 Amazon EC2 인스턴스에서 다음 명령을 실행하여 Amazon ECS 볼륨 플러그인을 활성화해야 합니다. 이 명령은 기본 이미지로 Amazon Linux 2 또는 Amazon Linux를 사용하는지에 따라 달라집니다.

    Amazon Linux 2

    yum install amazon-efs-utils systemctl enable --now amazon-ecs-volume-plugin

    Amazon Linux

    yum install amazon-efs-utils sudo shutdown -r now
  • Fargate에서 호스팅되는 태스크의 경우 Amazon EFS 파일 시스템이 플랫폼 버전 1.4.0 이상(Linux)에서 지원됩니다. 자세한 내용은 Amazon ECS에 대한 Fargate 플랫폼 버전 단원을 참조하십시오.

  • Fargate에서 호스팅되는 태스크에 Amazon EFS 볼륨을 사용할 경우, Fargate는 Amazon EFS 볼륨을 관리하는 감독자 컨테이너를 생성합니다. 감독자 컨테이너는 소량의 태스크 메모리를 사용합니다. 감독자 컨테이너는 작업 메타데이터 버전 4 엔드포인트를 쿼리할 때 표시됩니다. 또한 CloudWatch Container Insights에서 컨테이너 이름 aws-fargate-supervisor로 표시됩니다. Amazon EC2 시작 유형을 사용하는 경우 자세한 내용은 Amazon ECS 작업 메타데이터 엔드포인트 버전 4 섹션을 참조하세요. Fargate 시작 유형을 사용하는 방법에 대한 자세한 내용은 Fargate의 작업에 대한 Amazon ECS 작업 메타데이터 엔드포인트 버전 4 섹션을 참조하세요.

  • Amazon EFS 볼륨 사용이나 EFSVolumeConfiguration 지정은 외부 인스턴스에서 지원되지 않습니다.

  • 에이전트 구성 파일의 ECS_ENGINE_TASK_CLEANUP_WAIT_DURATION 파라미터를 기본값보다 작은 값(약 1시간)으로 설정하는 것이 좋습니다. 이 변경을 통해 EFS 마운트 보안 인증 만료를 방지하고 사용하지 않는 마운트를 정리할 수 있습니다. 자세한 내용은 Amazon ECS 컨테이너 에이전트 구성 섹션을 참조하세요.

Amazon EFS 액세스 포인트 사용

Amazon EFS 액세스 포인트는 EFS 파일 시스템에 대한 애플리케이션별 진입점으로, 공유 데이터 세트에 대한 애플리케이션 액세스를 관리할 수 있도록 합니다. Amazon EFS 액세스 포인트와 액세스 제어 방법에 대한 자세한 정보는 Amazon Elastic File System 사용 설명서Amazon EFS 액세스 포인트 사용하기를 참조하세요.

액세스 포인트는 액세스 포인트를 통해 이루어지는 모든 파일 시스템 요청에 대해 사용자의 POSIX 그룹을 포함한 사용자 자격 증명을 적용할 수 있습니다. 또한 파일 시스템에 대해 다른 루트 디렉터리를 적용할 수 있습니다. 이는 클라이언트가 지정된 디렉터리 또는 하위 디렉터리의 데이터에만 액세스할 수 있도록 합니다.

참고

EFS 액세스 포인트를 생성할 때 파일 시스템에서 루트 디렉터리 역할을 하는 경로를 지정합니다. Amazon ECS 태스크 정의의 액세스 포인트 ID로 EFS 파일 시스템을 참조할 때 루트 디렉터리는 생략하거나 /로 설정할 수 있습니다. 그러면 EFS 액세스 포인트에 설정된 경로가 적용됩니다.

Amazon ECS 태스크 IAM 역할을 사용하여 특정 애플리케이션에서 특정 액세스 포인트를 사용하도록 적용할 수 있습니다. IAM 정책을 액세스 포인트와 결합하면 애플리케이션의 특정 데이터 세트에 안전하게 액세스할 수 있습니다. IAM 역할을 사용하는 방법에 대한 자세한 정보는 Amazon ECS 작업 IAM 역할 섹션을 참조하세요.