[AWS] EFS에 대하여

HYEOB KIM·2022년 7월 1일
1

aws

목록 보기
53/62

EFS(Elastic File System)

서버리스로 파일 시스템을 관리할 수 있는 AWS 서비스입니다. 여러 가용 영역에서 동시에 하나의 파일 시스템을 사용하게 할 수 있습니다. Direct Connect를 이용하면 온프레미스 인프라에서도 접근할 수 있습니다.

EFS는 다음과 같은 특징이 있습니다.

  • 사용자가 파일을 추가하고 제거할 때 자동으로 확장/축소.
  • NFS(Network File System) 버전 4 (NFSv4.1 및 NFSv4.0) 프로토콜을 지원.
  • EFS 파일 시스템에 동시에 액세스할 수 있으며 두 개 이상의 컴퓨팅 인스턴스 또는 서버에서 실행하는 워크로드와 애플리케이션에 대해 공통 데이터 원본을 제공 가능.

클래스

IA(Infrequent Access) 스토리지: 자주 액세스 하지 않는 스토리지

스토리지 클래스특징내구성가용성가용 영역기타 고려 사항
EFS 표준높은 내구성과 가용성이 요구되는 자주 액세스하는 데이터99.999999999%99.99%>=3None
EFS 표준 - IA가장 높은 내구성과 가용성이 요구되는 오래 지속되고 자주 액세스하지 않는 데이터99.999999999%99.99%>=3GB당 검색 요금이 적용됩니다.
EFS 원 존최고 수준의 내구성과 가용성을 요구하지 않는 자주 액세스하는 데이터입니다.99.999999999%99.90%1가용 영역의 손실에 대한 복원력(resilient)이 없습니다.
EFS 원 존-IA최고 수준의 내구성과 가용성을 요구하지 않는 오래 지속되고 자주 액세스하지 않는 데이터입니다.99.999999999%99.90%1가용 영역의 손실에 대한 복원력(resilient)이 없습니다. GB당 검색 요금이 적용됩니다.

클래스 요약

  • 표준 스토리지 클래스3개 이상의 가용 영역에 저장하기 때문에 아무래도 내구성과 가용성이 원 존에 비해 높습니다. 대신 원 존 클래스보다 비쌉니다.
  • 원 존 스토리지 클래스의 경우 데이터를 하나의 가용 영역에 저장하기 때문에 그 가용 영역에 문제가 생겼을 때 데이터가 손실될 수 있습니다. 대신 표준 클래스보다 저렴합니다.
  • IA 클래스는 저장된 데이터 당 월별 GB 요금이 동일 일반 스토리지 클래스에 비해 10배 이상 저렴합니다. 하지만 데이터를 조회할 때 요금이 발생합니다.
  • 일반 클래스와 IA 클래스가 서로 독립적인 것이 아닙니다. 수명 주기 관리 기능을 사용하면 자주 액세스 하지 않는 파일을 IA 스토리지로 전송되도록 할 수 있습니다. 이렇게 하면 통상적으로 일반 스토리지에 자주 액세스하는 약 20%의 데이터가, IA 스토리지에는 자주 액세스 하지 않는 약 80%의 데이터가 저장됩니다.

요금

프리티어
AWS를 사용하는 첫 12개월 동안 매월 최대 5GB까지 EFS Standard 스토리지 클래스를 무료로 사용할 수 있습니다.

Amazon EFS를 사용하면 파일 시스템에서 사용한 스토리지에 대해서만 요금을 지불하면 되고 최소 요금이나 설정 비용은 없습니다.

수명 주기 관리 기능을 사용할 경우 자주 액세스 되지 않는 데이터들은 IA 스토리지로 전송됩니다. 따라서 요금을 계산할 때는 일반 스토리지와 IA 스토리지를 모두 고려해야 합니다.

예를 들어, 버지니아 북부에서 원 존 클래스를 이용하고 총 500GB일반 스토리지20%, IA 스토리지80%의 데이터가 저장되어 있다고 한다면 요금은 아래와 같이 계산할 수 있습니다.

요금 
= (자주 액세스하는 데이터의 스토리지 요금 + 자주 액세스하지 않는 데이터의 스토리지 요금) / 총 스토리지
= (500 * 20%) * (0.16 USD) + (500 * 80%) * (0.0133 USD) / 500 =
= (16 USD + 5.32 USD)/500
= 0.043 USD/GB-월

버지니아 북부원 존 클래스에 대한 요금은 아래와 같습니다.

클래스요금
One Zone Storage(GB-월)0.16 USD
One Zone-Infrequent Access 스토리지(GB-월)0.0133 USD

EFS의 요금에 대한 자세한 설명은 AWS EFS 요금을 참고하세요.

성능 모드

  • 범용 모드 : 최대 35,000 IOPS를 지원하며 작업당 지연 시간이 가장 낮습니다.
    Standard 스토리지 클래스가 있는 파일 시스템의 경우 범용 모드 또는 최대 I/O 모드를 사용할 수 있습니다.
    One Zone 스토리지 클래스가 있는 파일 시스템은 범용 모드만 사용합니다.
  • 최대 I/O 모드 : 500,000개 이상의 IOPS를 지원하며 범용 모드에 비해 작업당 지연 시간이 더 높습니다.

대부분의 응용 프로그램에는 범용 모드를 사용하는 것이 좋기 때문에, 어떤 성능 모드를 사용할 지 잘 모르는 경우 범용 모드를 선택합니다.

처리량 모드

EFS에는 버스트 처리량과 프로비저닝 처리량이라는 두 가지 처리량 모드가 존재합니다. 프로비저닝 처리량 모드는 프로비저닝된 처리량의 양에 의해 결정되는 측정된 처리량입니다. 버스트 처리량 모드는 EFS 표준 또는 원 존 스토리지에 저장된 데이터의 양에 의해 결정되는 측정된 처리량입니다.

보통 읽기 처리량이 쓰기 처리량보다 할인되어 낮고, 리전마다 1.66 ~ 3배 정도 차이납니다. 만약 읽기 처리량과 쓰기 처리량이 모두 30MiBps라면 읽기 처리량은 10MiBps이고, 쓰기 처리량은 30MiBps가 되어 총 40MiBps의 처리량이 됩니다.

버스트 처리량 모드

버스트 처리량 모드는 EFS의 기본 처리량 모드입니다. 이 모드는 버스트 처리량 패턴을 가지는 전통적인 애플리케이션에 적합합니다. 처리량이 낮을 때는 버스트 버킷에 버스트 크레딧을 저장하고, 처리량이 높을 때 저장된 버스트 크레딧을 사용합니다.

예를 들어, 100 GiB의 파일 시스템은 100MiBps의 속도로 24시간 동안 5% 정도 버스트할 수 있고, 나머지 95%의 시간에는 비활성 상태이므로, 24시간 동안 432,000 MiB의 버스트 크레딧이 저장됩니다. 그리고 432,000 MiB의 버스트 크레딧은 72분(72 * 60 = 4,320초)동안의 버스트에 사용됩니다.(432,000MiB / 4,320초 = 100MiBps)

프로비저닝 처리량 모드

상대적으로 일정한 처리량을 갖는 애플리케이션의 경우 프로비저닝된 처리량 모드를 권장합니다. 프로비저닝된 처리량 모드에서는 파일 시스템의 크기 또는 버스트 크레딧 잔액에 관계없이 파일 시스템이 구동할 수 있는 처리량 수준을 지정합니다. 파일 시스템이 버스팅 처리량 모드를 사용하는 경우 스토리지의 양을 기준으로 파일 시스템의 기본 처리량을 초과하는 프로비저닝하는 처리량에 대한 요금이 청구됩니다. 파일 시스템의 측정된 크기가 프로비저닝한 처리량보다 더 높은 기준 처리량을 제공하는 경우 파일 시스템은 자동으로 버스팅 처리량 모드를 사용합니다.

스위칭 처리량 모드

기존 파일 시스템의 처리량 모드를 전환할 수 있으며, 24시간 동안 제한적으로 한 번만 변경할 수 있습니다.

  • 파일 시스템의 처리량 모드 변경
    (프로비저닝된 처리량 -> 버스트 처리량 or 버스트 처리량 -> 프로비저닝된 처리량)

아키텍처

표준 클래스

  • 하나의 VPC에 3개의 가용 영역이 있고, 각 가용 영역에 탑재 대상(Mount Target)이 생성되어 있습니다. 3개의 가용 영역에서 동일한 파일 시스템에 접근 가능합니다. us-west-2c의 경우 서브넷이 2개가 있는데, 탑재 대상(Mount Target)은 그 중 하나의 서브넷에만 생성됩니다.

원 존 클래스

  • 원 존 클래스이므로, 탑재 대상(Mount Target)은 하나의 가용 영역(us-west-2a)에 생성되어 있습니다. 같은 가용 영역 내의 인스턴스에서 파일 시스템에 접근할 때 성능이 향상되고 EC2 액세스 요금 지불이 없습니다.
  • 다른 가용 영역(us-west-2b)의 EC2 인스턴스는 us-west-2a의 탑재 대상에 연결되어 파일 시스템에 접근하는 것을 볼 수 있습니다. 이렇게 되면 다른 가용 영역의 마운트 대상에 액세스 하기 위한 EC2 데이터 액세스 요금을 지불해야 합니다. 요금에 대한 자세한 사항은 AWS EC2 요금을 참고하세요.

Direct Connect를 이용한 하이브리드 인프라 구축

  • 온프레미스 서버와 VPC 간의 AWS Direct Connect 연결을 사용하여 탑재 대상(Mount Target)의 서브넷에 도달할 수 있으면 VPC에서 모든 탑재 대상을 사용할 수 있습니다. 온프레미스 서버에서 EFS에 액세스하려면 온프레미스 서버의 NFS 포트(2049) 에 대한 인바운드 트래픽을 허용하는 규칙을 탑재 대상 보안 그룹에 추가합니다.
profile
Devops Engineer

0개의 댓글