나의 공부기록

[AWS] 26. EFS(Elastic File System) - Elastic, Provisioned, Burst 유형 본문

자격증/AWS

[AWS] 26. EFS(Elastic File System) - Elastic, Provisioned, Burst 유형

나의 개발자 2025. 4. 7. 18:03

EFS(Elastic File System)

  • 관리형 NFS(Network File System) - 여러 EC2 인스턴스에서 동시에 마운트 가능
    ➡️
    내부적으로 NFS 프로토콜 사용
  • Multi-AZ 지원, 고가용성 제공
  • Linux 기반 AMI만 지원 - Windows 지원❌
  • POSIX 호환 파일 시스템 - 일반적인 Linux 파일 API 사용 가능
  • 자동 확장, 용량 계획 필요 없음 - 사용한 만큼 과금(pay-per-use)
    ➡️ EBS보다 비쌈(약 3배)
  • KMS를 통한 정지 상태 암호화 제공
  • 접근 제어보안그룹(Security Group)으로 설정

EFS 사용 사례

  • 콘텐츠 관리 시스템(CMS)
  • 웹 서버
  • 데이터 공유
  • Wordpress 등

EFS 퍼포먼스 및 처리량 설정

퍼포먼스 모드(EFS 생성 시, 설정)

모드 설명 사용 사례
General Purpose(default) 낮은 지연시간에 최적화 웹 서버, CMS
Max I/O 높은 처리량, 높은 지연시간 허용 빅데이터, 미디어 처리 등

 

처리량 모드(Throughput Mode)

모드 설명
Bursting 기본 : 1TB 당 50MiB/s + 최대 100MiB/s 버스트
Provisioned 스토리지 크기와 관계없이 처리량 지정 가능
Elastic 워크로드에 따라 자동 조절(최대: 읽기 3GiB/s, 쓰기 1GiB/s)

 

EFS 스토리지 클래스 및 라이프 사이클

스토리지 계층

티어 설명
standard 자주 접근하는 파일
Infrequent Access(EFS-IA) 드물게 접근, 저장 비용 낮음, 조회 시 요금 발생
Archive(EFS Archive) 거의 접근하지 않는 데이터, EFS-IA보다 50% 더 저렴

👉 라이프사이클 정책을 통해 N일 후, 자동 이동 가능

 

AZ 기반 옵션

스토리지 타입 설명
Standard (Mulit-AZ) 고가용성, 프로덕션 환경 추천
One Zone 한 AZ에만 존재, 비용 절감(IA 버전도 존재 : One Zone-IA)

👉 최대 90% 비용 절감 가능


EFS 실습

1. EFS 생성

[ 기본 설정 ]

 

[ 사용자 설정 ]

 

1. 파일 시스템 설정

  • Region - 프로덕션 환경에 추천
    • 여러 가용 영역에 걸쳐 한 지역 내에 파일 시스템을 제공하는 리전
    • 데이터의 가용성과 내구성을 매우 높게 유지 가능
  • One Zone(AZ) - 개발 환경에 추천
    • 비용 절감하고 싶다면 특정 가용 영역을 하나만 선택
    • 개발 환경에서는 좋지만, 프로덕션 환경에서는 가용영역이 사용할 수 없게 되면 데이터 액세스 불가
      ➡️ 가용성⬇️
  • 수명 주기 관리
    • 여러 스토리지 계층으로 데이터를 이동하여 비용을 절감 가능
    • 예시) infrequent access ➡️ Archive ➡️ Standard 전환 가능
  • 마지막으로 액세스 된 기간을 기준으로 좀 더 저렴한 스토리지로 전환 가능

 

2. 성능 설정 - Enhanced & Elastic을 권장(AWS)

 

✅ 성능 설정 유형 - Provisioned & Burst

더보기

1. Provisioned - 미리 처리량을 정하면 처리량 청구 요금을 확인 가능

2. Burst

  • 지연 시간이 길어지는 대신 더 많은 I/O를 얻을 수 있음

 

3. 네트워크 액세스

  • 해당 VPC의 리전, 서브넷, IP가 자동으로 할당됨
  • 각 AZ에 보안 그룹을 지정해야 함 ➡️ EFS를 위한 특정 보안 그룹을 생성해야 함

3-1. 보안그룹 생성

  • 인바운드 규칙 설정하지 않고 보안 그룹 생성

 

3-2. 모든 가용영역에 위에서 생성한 보안그룹 지정

 

4. EFS 생성 확인

  • EFS는 사용한 스토리지만큼 비용을 지불

 

EC2 인스턴스에 EFS 마운트

1. EC2 인스턴스 생성

 

2. 인스턴스 설정

  • 서브넷 선택 필수! ➡️ 선택하지 않으면 EFS 스토리지 선택❌

 

  • 스토리지 구성 - EFS 연결

  • 예전에는 EC2 인스턴스에 직접 실행하고 데이터 스크립트를 직접 생성
    ➡️ 이제는 EC2 콘솔에서 자동으로 실행&생성해 줌
    👉 EFS의 보안그룹에 자동으로 추가되어 EC2인스턴스에서 EFS에 접근 가능

 

 

3. 인스턴스 생성 확인 - Instance A

 

4. 새로운 인스턴스 생성 - Instance B

  • 다른 AZ에 생성한 인스턴스에서도 동일한 EFS를 제공받는 것을 검증하기 위해서 생성 

 

 

5. 두 인스턴스가 실행 중인 것을 확인 ➡️ EFS로 이동

5-1. 인스턴스 실해 확인

 

5-2. EFS의 네트워크에 보안그룹이 자동으로 추가된 것을 확인 가능

 

5-3. EFS의 보안그룹 확인 - 인바운드 규칙 

  • 보안그룹에서 확인해 보면 인바운드 규칙을 만들지 않았는데, 인바운드 규칙이 추가된 것을 확인 가능
  • 해당 보안그룹은 EC2 Instance B에 연결된 보안그룹
    ➡️ Instance B의 EFS 파일시스템 접근을 허용 = EC2 Instance B의 보안 그룹이 연결되었기 때문

 

6. EC2 Instance A 연결

 

7. EC2 Instance B 연결

 

8. 다른 AZ에 존재하는 EC2인스턴스가 동일한 EFS 파일 시스템을 공유하는 것을 확인   


EFS 삭제 방법