본문 바로가기

Stack/AWS

[AWS DEA] 문제로 공부하기 3 - Lambda · EFS

반응형
AWS DEA-C01 온프레미스 NFS → AWS 마이그레이션 | Lambda + EFS 완전 정리

온프레미스 NFS → AWS 마이그레이션 — Lambda에서 EFS를 써야 하는 이유

AWS DEA-C01 시험에 자주 나오는 스토리지 마이그레이션 문제 유형입니다. 온프레미스 NFS 파일 공유를 AWS로 이전하면서 Lambda 함수가 NFS 프로토콜로 데이터를 공유해야 할 때, EFS / EBS / DynamoDB / Lambda 로컬 스토리지 중 무엇을 선택해야 하는지 도식과 함께 비교 정리합니다.

📋 문제

회사의 데이터가 온프레미스 NFS 파일 공유에 있다. 회사는 AWS로 마이그레이션할 계획이며, 데이터 분석에 데이터가 사용된다. 이 회사는 AWS Lambda 함수를 작성해 데이터를 분석한다. 그리고 Lambda가 액세스하는 파일 시스템에 NFS를 계속 사용하고자 한다. 동시에 실행되는 모든 Lambda 함수 전반에서 데이터가 공유되어야 한다.

다음 중 회사가 이 데이터 마이그레이션에 사용해야 할 솔루션은 무엇인가?

✅ 핵심 요구사항 체크

  • 🔌
    NFS 프로토콜 유지
    온프레미스에서 쓰던 NFS(Network File System) 방식을 AWS에서도 그대로 사용해야 함
  • 🔗
    Lambda 함수에서 직접 마운트 가능
    Lambda가 파일 시스템을 마운트하여 파일처럼 데이터에 접근해야 함
  • 🤝
    동시 실행 Lambda 간 데이터 공유
    여러 Lambda 인스턴스가 동시에 실행되어도 하나의 공유 스토리지에서 같은 데이터를 읽고 써야 함

📐 마이그레이션 흐름

🏢
온프레미스
NFS 파일 공유
(데이터 저장)
📁
Amazon EFS
NFS 지원
공유 파일 시스템
λ
AWS Lambda
EFS 마운트
동시 접근 ✅

EFS는 NFS v4 프로토콜을 지원 → Lambda가 파일 시스템처럼 마운트해서 사용 가능

🗄️ AWS 스토리지 종류 비교

📁
Amazon EFS
파일 스토리지 (File Storage)
  • NFS 프로토콜 지원 (v4.0, v4.1)
  • Lambda에서 마운트 포인트로 직접 연결
  • 동시에 수천 개 연결 지원
  • 자동 확장 · 고가용성
✅ 모든 요구사항 충족
💽
Amazon EBS
블록 스토리지 (Block Storage)
  • EC2 인스턴스 전용 블록 디스크
  • Lambda에서 직접 연결 불가
  • 단일 AZ, 단일 인스턴스에만 연결
  • NFS 프로토콜 미지원
❌ Lambda 연결 불가
🗃️
Amazon DynamoDB
NoSQL 데이터베이스
  • 키-값 / 문서 형태 데이터베이스
  • API(SDK) 방식으로만 접근
  • NFS 프로토콜 미지원
  • 파일 시스템이 아닌 DB 서비스
❌ NFS 미지원
Lambda 로컬 스토리지
/tmp 임시 디렉토리
  • 각 Lambda 인스턴스에만 독립 존재
  • 인스턴스 간 데이터 공유 불가
  • 최대 512MB~10GB (비영구적)
  • NFS 프로토콜 미지원
❌ 공유 불가 + NFS 미지원

📝 선택지 해설

각 항목을 클릭하면 해설이 펼쳐집니다.

💡 Lambda의 로컬 스토리지(/tmp)는 해당 Lambda 인스턴스에만 존재하는 임시 격리 공간입니다. 동시에 실행 중인 다른 Lambda 인스턴스와 데이터를 공유할 수 없으며, NFS 프로토콜도 지원하지 않습니다. 두 요구사항을 모두 충족하지 못합니다.
💡 EBS는 EC2 전용 블록 스토리지입니다. Lambda 함수는 EBS 볼륨에 직접 연결할 수 없습니다. 또한 기본적으로 단일 EC2 인스턴스에만 연결되는 구조라 공유 파일 시스템으로 사용하기 어렵고, NFS 프로토콜도 지원하지 않습니다.
💡 DynamoDB는 키-값 구조의 NoSQL 데이터베이스로, AWS SDK/API를 통해서만 접근합니다. NFS 프로토콜을 지원하지 않으며, 파일 시스템 마운트도 불가합니다. 데이터 구조 자체가 NFS 파일 공유와 맞지 않습니다.
💡 정답. Amazon EFS는 NFS v4 프로토콜을 지원하는 완전관리형 공유 파일 시스템입니다. Lambda 함수 설정에서 EFS 마운트 포인트를 지정하면, 파일 시스템처럼 데이터에 접근할 수 있습니다. 동시에 실행되는 수천 개의 Lambda 인스턴스가 같은 EFS를 마운트하여 데이터를 공유할 수 있어 세 가지 요구사항(NFS 유지, Lambda 접근, 동시 공유)을 모두 충족합니다.

정답: D — Amazon EFS

Amazon EFS는 NFS v4 프로토콜을 기본 지원하며, Lambda가 파일 시스템 마운트 포인트로 직접 연결할 수 있습니다. 수천 개의 Lambda 인스턴스가 동시에 같은 EFS를 마운트하여 데이터를 읽고 쓸 수 있어 온프레미스 NFS 공유 환경을 AWS에서 그대로 재현합니다.

# 흐름 요약 온프레미스 NFS 파일 공유 └─ AWS DataSync / Direct Connect 로 이전 └─ Amazon EFS (NFS v4 지원) └─ Lambda 함수 (마운트 포인트: /mnt/efs) ├─ Lambda 인스턴스 #1 ─┐ ├─ Lambda 인스턴스 #2 ─┼─ 동일 EFS 동시 접근 ✅ └─ Lambda 인스턴스 #N ─┘

📊 스토리지 옵션 비교 요약

스토리지 유형 NFS 지원 Lambda 연결 동시 공유
Amazon EFS ⭐ 파일 스토리지 ✅ v4.0/4.1 ✅ 마운트 가능 ✅ 수천 개
Amazon EBS 블록 스토리지 ❌ EC2 전용 ❌ 단일 연결
Amazon DynamoDB NoSQL DB ⚠️ SDK만 가능 ✅ API로는 가능
Lambda /tmp 임시 로컬 저장소 ✅ 기본 제공 ❌ 인스턴스 격리
#AWS_DEA-C01 #AWS데이터엔지니어 #NFS마이그레이션 #AmazonEFS #LambdaEFS #EFS마운트 #EBSvsEFS #Lambda파일시스템 #온프레미스마이그레이션 #서버리스스토리지 #AWS자격증 #클라우드스토리지
반응형