Amazon Web Services 한국 블로그

Amazon Elastic File System – 정식 서비스 개시 (3개 리전)

AWS 스토리지 서비스는 시간에 따라서 더 많아지면서 풍부해지고 있습니다.  초기에 Amazon S3 라는 단일 스토리지 서비스를 시작한 이후, 일반적인 스토리지 클래스, 자주 접근하지 않는 경우에 사용하는 스토리지, 백업 및 아케이빙용까지 다양하게 제공하고 있습니다.유사하게, Amazon Elastic Block Store (EBS) 의 경우, 단일 볼륨 타입을 비롯 네 가지 다양한 타입(SAN 스타일 블록 스토리지, 데이터 타입 및 접근 트래픽에 따른 블록 스토리지)을 제공합니다.

객체 스토리지와 블록 스토리지를 S3와 EBS를 통해 제공하는 사이에 파일 시스템에 대한 고객 요구에도 귀를 기울이게 되었으며,  작년에 여러 EC2 인스턴스 사이에 공유할 수 있는 지연속도가 낮은 네트워크 파일 시스템인 Amazon Elastic File System (EFS)에 대한 공개 계획 소식 을 알려드렸습니다.오랜 베타 및 미리보기 서비스를 마치고, 오늘 드디어 Amazon EFS를   US East (Northern Virginia), US West (Oregon)Europe (Ireland) 리전에 우선 공개하게 되었습니다.EFS 미리 보기 기간 동안, 웹 기반의 대용량의 처리량에 높은 워크로드에 대해 콘텐츠 처리를 할 수 있도록 개선을 해왔습니다. 그동안 많은 긍정적인 고객 피드백을 기반으로 성능을 향상하고, 파일 시스템 메타 데이터에 사용량, 데이터 읽기 지연 속도 등에 대한 민감한 워크로드에 대한 개선도 이루었습니다. 오늘 서비스 정식 출시를 통해 다양한 사용 케이스에 대해 더 좋은 서비스를 제공할 수 있게 되었고, 참여 고객사 역시 EFS를 실제 정식 서비스에 활용할 수 있게 되었습니다.

Amazon Elastic File System 소개

Amazon EFS는 여러 대의 EC2 인스턴스에서  네트워크 파일 시스템인 EFS 파일 시스템을 로컬 스토리지 디바이스처럼 접근할 수 있습니다. Amazon EFS를 사용하면 여러 EC2 인스턴스가 동시에 파일 시스템에 액세스하여 하나 이상의 인스턴스에서 실행 중인 워크로드와 애플리케이션에 대한 공통 데이터 소스를 제공할 수 있습니다.

이 분산 데이터 스토리지 설계는 다중 스레드 애플리케이션 및 여러 Amazon EC2 인스턴스에서 동시에 데이터에 액세스하는 애플리케이션이 전체 처리량과 IOPS를 크게 향상할 수 있다는 것을 의미합니다. 빅 데이터 및 분석 워크로드, 미디어 처리 워크플로, 콘텐츠 관리 및 웹 지원을 이러한 애플리케이션의 예로 들 수 있습니다.

또한, Amazon EFS 데이터는 여러 가용 영역으로 분산되어 높은 수준의 내구성과 가용성을 제공합니다.

각 EFS는 단일 VPC에서 접근 가능하며, VPC내에 생성되는 마운트 지점(Mount targets)에서 연결할 수 있습니다.

EFS는 “범용(General Purpose)“과 “최대 I/O(Maximized I/O)” 성능 두 가지의 모드를 제공합니다. “범용” 성능 모드는 대부분 파일 시스템에 적합하며, 파일 시스템을 생성할 때 기본적으로 선택되는 모드입니다. “최대 I/O” 성능 모드는 수십, 수백 또는 수천 개의 EC2 인스턴스가 파일 시스템에 액세스하는 애플리케이션에 최적화되어 있습니다. 파일 작업에 대한 지연 시간이 약간 늘어나는 대신 전체 처리량과 초당 작업 수준이 향상됩니다. 자세한 내용은 파일 시스템 성능에 대한 설명서를 참조하십시오.

Elastic File System  사용해 보기
AWS Management Console, AWS 명령줄 인터페이스(AWS CLI), Amazon EFS API(및 다양한 언어별 SDK)를 통해 파일 시스템을 생성할 수 있습니다.

먼저 콘솔에서 Create file system 버튼을 클릭합니다.

VPC와 함께 서브넷의 마운트 타겟을 생성 합니다.

내 보안 그룹 (corp-vpc-mount-target)에서  EC2 인스턴스가 2049 포트의 마운트 지점에 접근할 수 있도록 설정을 아래와 같이 바꿉니다.

이제 Name 및 Owner tags, 그리고 범용(General Purpose) 성능으로 선택합니다.

설정 내용을 모두 확인 후 Create File System을 선택합니다.

이제 새로운 파일 시스템이 준비 되었습니다. (몇 분 정도 소요 될 수 있음)

이제 EC2 마운트 도움말을 통해 어떻게  EC2 인스턴스에서 연결하는지 잘 살펴 봅니다.

제 인스턴스에서 /efs 디렉토리에 마운트를 하게 됩니다.

여러 개의 파일을 복사해 보면서,  NFS  통계를 살펴 볼 수 있습니다.

콘솔에서는 파일 시스템의 사용 용량 및 다양한 정보를 수집해서 보여 주며, 시간 단위로 수집되어 2-3시간 후에 보여집니다.

CloudWatch 통계 수치
각 파일 시스템에서 CloudWatch를 통해 아래 통계 수치를 수집합니다.

  • BurstCreditBalance – 급격하게 처리량이 높아질 때 대비한 크레딧 수치
  • ClientConnections – 파일 시스템에 접근한 클라이언트 연결 숫자
  • DataReadIOBytes – 파일 시스템 읽기 처리량
  • DataWriteIOBytes -파일시스템 쓰기 처리량
  • MetadataIOBytes – 읽기 및 쓰기 중 메타 데이터 처리량
  • TotalIOBytes – 읽기, 쓰기 및 메타 데이터 등 전체 처리량
  • PermittedThroughput -파일시스템크기에 따른 전체 처리 허용량
  • PercentIOLimit – 범용모드일 때, 허용 가능한 I/O 제한 수치

이들 통계 수치는 CloudWatch 콘솔에서 보실 수 있습니다.

EFS 버스팅 및 성능 모델

파일 시스템에서 지원할 수 있는 처리량은 파일 시스템이 확장됨에 따라 증가합니다. 일반적으로 파일 기반 워크로드는 변동이 심하므로 일정 시간 동안 높은 수준의 처리량이 필요하고 나머지 시간에는 더 낮은 수준의 처리량이 필요합니다. Amazon EFS는 일정 시간 동안 높은 처리량 수준으로 버스트할 수 있도록 설계되었습니다.

모든 파일 시스템은 스토리지의 TB당 50MB/초라는 일관된 기준 성능을 제공하며, 크기와 관계없이 모든 파일 시스템은 100MB/초까지 버스트할 수 있고, 1TB보다 큰 파일 시스템은 스토리지의 TB당 100MB/초까지 버스트할 수 있습니다. 파일 시스템에 데이터가 추가됨에 따라, 파일 시스템에서 지원할 수 있는 최대 처리량은 스토리지와 함께 선형적으로 자동 확장됩니다.

파일 시스템 처리량은 파일 시스템에 연결된 모든 Amazon EC2 인스턴스에서 공유합니다. 예를 들어 처리량을 100MB/초로 버스트할 수 있는 1TB 파일 시스템은 단일 Amazon EC2 인스턴스에서 100MB/초를 지원하거나 10개의 Amazon EC2 인스턴스에서 전체적으로 100MB/초를 지원할 수 있습니다. 자세한 내용은 파일 시스템 성능에 대한 설명서를 참조하십시오.

정식 출시
EFS는 현재 US East (Northern Virginia), US West (Oregon), Europe (Ireland) 리전에 출시하였으며 향후 더 많은 리전으로 확대될 계획입니다. 가격 모델은 여러분이 사용한 데이터 마다 GB당  $0.30 per GB (버지니아 리전 기준)입니다. 최소 비용이나 설정 비용은 없으며 자세한 것은  EFS 요금표 페이지를 참고하시기 바랍니다. 5GB까지 AWS 무료 티어 사용이 가능합니다.

Jeff;

이 글은 Amazon Elastic File System – Production-Ready in Three Regions의 한국어 번역 요약본입니다.