Amazon EFS (Elastic File System) - 관리형 네트워크 파일 시스템
Amazon EFS는 관리형 네트워크 파일 시스템으로, 여러 EC2 인스턴스에서 마운트하고 사용할 수 있는 효율적인 파일 시스템입니다.
가용성과 확장성
Amazon EFS는 여러 가용성 영역(AZ)에 걸쳐 EC2 인스턴스에서 사용할 수 있으며, 가용성과 확장성이 뛰어나다.
예를 들어 us-east-1b 가용성 영역, 또는 us-east-1c 가용성 영역에 EC2 인스턴스가 있다고 했을 때, 이것들을 모두 EFS를 통해 동일한 네트워크 파일 시스템에 동시에 연결이 가능합니다. 파일공유가 가능하다는 것입니다.
여러 가용성 영역에 EC2 인스턴스를 배치하고 EFS를 공유하여 고가용성 및 내구성을 확보할 수 있다.
사용 사례
Amazon EFS의 사용 사례로는 콘텐츠 관리, 웹 서빙, 데이터 공유, WordPress 등이 있다.
프로토콜 및 보안
내부적으로 NFS 프로토콜을 사용하며, EFS에 대한 액세스를 제어하려면 보안 그룹을 설정해야 합니다.
*중요
윈도우가 아닌 Linux 기반 AMI와만 호환이 가능합니다.
EFS는 GP2 EBS 볼륨의 약 3배 비용 효율적이며, 용량을 미리 계획할 필요가 없다는 것(프로비저닝)입니다.
파일 시스템은 자동으로 확장되며 EFS에서 사용하는 데이터 GB 사용량에 따라 비용을 지불하므로 효율적인 비용 관리가 가능합니다.
다양한 성능 및 스토리지 클래스
EFS 스케일은 동시 NFS 클라이언트 수천 개와 10GB 이상의 처리량을 확보할 수 있습니다.
PB 규모의 네트워크 파일 시스템으로 자동 확장할 수 있습니다.
성능 모드 (EFS 생성 시 설정)
일반(General Purpose): 지연 시간에 민감한 사용 사례에 적합한 기본 모드.
최대 I/O(Max I/O): 지연 시간이 더 길지만 처리량이 높고 병렬성이 높다. 빅 데이터 애플리케이션과 미디어 처리에 유용하다.
처리량 모드
버스팅(Bursting) : 초당 50MiB에서 초당 100MiB까지 버스트 가능. 처리량을 프로비저닝하려는 경우에 사용.
프로비전드(Provisioned) : 스토리지 크기에 관계없이 처리량을 설정하고 싶은 경우
엘라스틱(Elastic) : 워크로드에 따라 자동으로 처리량을 조절하는 모드. 예를 들어, 읽기는 초당 최대 3GiB, 쓰기는 초당 1GiB까지 가능.
EFS - 스토리지 클래스
스토리지 클래스를 다양하게 제공하며, 파일을 다른 계층으로 이동할 수 있는 수명 주기 정책을 설정할 수 있다.
표준(Standard): 자주 액세스되는 파일을 위한 계층.
자주 액세스하지 않는(IA, Infrequent Access): 자주 액세스하지 않는 파일을 위한 계층. 파일을 검색할 때 비용이 발생하지만 스토리지 비용이 낮다.
One Zone EFS: 하나의 가용성 영역에 위치하며 백업이 활성화된 개발용 파일 시스템. 비용이 낮아 프로비저닝된 파일을 위한 좋은 선택.
EBS vs EFS
EBS
EBS 볼륨은 기본적으로 한 번에 하나의 EC2 인스턴스에만 첨부됩니다. 다만 io1 및 io2 유형 볼륨의 다중 첨부 기능을 사용하는 특수한 상황도 있습니다.
EBS 볼륨은 특정 가용성 영역(Availability Zone)에 제한됩니다.
AZ 간에 EBS 볼륨을 마이그레이션하려면 스냅샷을 생성하고, 그 스냅샷을 다른 AZ로 복원해야 합니다.
gp2 유형 볼륨은 디스크 크기가 증가하면 I/O 성능도 증가하지만, io1 유형 볼륨은 독립적으로 I/O 성능을 늘릴 수 있습니다.
백업은 I/O를 사용하므로 많은 트래픽을 처리하는 애플리케이션에서 실행하지 않아야 합니다.
EFS
Amazon EFS는 네트워크 파일 시스템으로, 여러 가용성 영역에서 수백 개의 EC2 인스턴스에 첨부할 수 있습니다.
하나의 EFS 파일 시스템으로 서로 다른 AZ에서 서로 다른 마운트 대상을 가질 수 있으며, 가용성과 내구성을 확보할 수 있습니다.
EFS는 EBS보다 비용이 높을 수 있지만, EFS-IA(Infrequent Access) 기능을 활용하여 비용을 절감할 수 있습니다.
사용 사례에 대한 알맞은 선택
EBS: 단일 EC2 인스턴스에 스토리지가 필요한 경우, 특히 블록 수준 스토리지가 필요한 경우에 적합합니다.
EFS: 다중 EC2 인스턴스에서 공유 파일 시스템이 필요한 경우, 예를 들어 여러 웹 서버 인스턴스에서 데이터 공유나 WordPress와 같은 애플리케이션을 호스팅하려는 경우에 적합합니다.
'AWS Cloud > solution architect' 카테고리의 다른 글
로드벨런서 ALB/NLB/GWLM 개념 (4) | 2023.11.01 |
---|---|
확장성 및 고가용성 / ELB (Elastic Load Balancing) 개요 (1) | 2023.10.31 |
AMI (Amazon Machine Image) 개요 및 EC2 인스턴스 스토어 (0) | 2023.10.27 |
EBS (Elastic Block Store) 개요 및 유형/기능/암호화 (1) | 2023.10.27 |