TIL - 20250926

juni·2025년 9월 26일

TIL

목록 보기
137/315

0926 AWS : AMI, EFS, RDS


✅ 1. AMI (Amazon Machine Image): 나만의 서버 템플릿

  • AMI는 EC2 인스턴스를 시작하는 데 필요한 모든 정보를 담고 있는 "서버 템플릿" 또는 "이미지"입니다. AMI 하나만 있으면 동일한 구성의 EC2 인스턴스를 몇 분 만에 수십, 수백 개 복제할 수 있습니다.

➕ AMI에 포함되는 내용

  1. 루트 볼륨 템플릿: 운영체제(OS), 애플리케이션, 라이브러리 등이 설치된 스토리지(EBS)의 스냅샷.
  2. 시작 권한: 어떤 AWS 계정이 이 AMI를 사용하여 인스턴스를 시작할 수 있는지에 대한 권한 정보.
  3. 블록 디바이스 매핑: 인스턴스에 연결할 스토리지 볼륨(EBS, 인스턴스 스토어)의 구성 정보.

➕ AMI 활용 및 EC2 Image Builder

  • AMI 생성: 이미 실행 중인 EC2 인스턴스를 기반으로 나만의 커스텀 AMI를 생성할 수 있습니다. 웹 서버, WAS, 데이터베이스 드라이버 등 필요한 모든 소프트웨어를 설치하고 설정한 후, 이 인스턴스를 이미지로 만들면 됩니다.
  • EC2 Image Builder: AMI 생성, 관리, 테스트, 배포 과정을 자동화해주는 서비스입니다. 보안 패치, 소프트웨어 업데이트 등을 정기적으로 적용한 최신 AMI를 자동으로 생성하는 파이프라인을 구축할 수 있어, "Golden AMI"를 유지 관리하는 데 매우 유용합니다.

✅ 2. EC2 스토리지 옵션: Instance Store vs EFS

  • EBS 외에도, EC2는 특정 워크로드에 맞는 다양한 스토리지 옵션을 제공합니다.
스토리지 종류특징데이터 영속성사용 사례
EBS (Elastic Block Store)네트워크 연결 스토리지 (가상 하드 디스크)
• AZ(가용 영역)에 종속
• 인스턴스와 독립적인 생명주기
영구적 (Persistent)
인스턴스가 종료되어도 데이터 유지
• 부팅 볼륨 (OS)
• 데이터베이스
• 일반적인 영구 데이터 저장
Instance Store• 인스턴스를 호스팅하는 물리적 서버에 직접 연결된 스토리지
매우 빠른 I/O 속도 (네트워크 지연 없음)
임시적 (Ephemeral)
인스턴스가 중지/종료되면 데이터 완전 삭제
• 임시 캐시
• 버퍼, 스크래치 데이터
• 빠른 I/O가 필요한 데이터 처리
EFS (Elastic File System)여러 EC2 인스턴스에서 동시에 접근할 수 있는 공유 파일 시스템 (NFS)
리전(Region) 단위 서비스
• 사용량에 따라 용량이 자동 확장/축소
영구적 (Persistent)
인스턴스와 독립적
• 여러 웹 서버 간의 콘텐츠 공유
• 데이터 분석
• 여러 인스턴스가 공유해야 하는 파일 저장소
  • 핵심 비교: EBS는 하나의 인스턴스에 연결되는 전용 하드 디스크, Instance Store는 인스턴스에 내장된 초고속 임시 디스크, EFS는 여러 인스턴스가 함께 사용하는 네트워크 공유 폴더라고 이해할 수 있습니다.

✅ 3. 데이터베이스 서비스와 RDS (Relational Database Service)

  • AWS는 다양한 유형의 데이터베이스를 완전 관리형 서비스로 제공하여, 사용자가 데이터베이스 설치, 관리, 백업 등의 복잡한 작업에서 벗어나 애플리케이션 개발에 집중할 수 있도록 돕습니다.

➕ 데이터베이스의 종류

구분설명AWS 대표 서비스
관계형 (Relational)정해진 스키마(테이블 구조)에 따라 데이터를 저장. SQL 사용Amazon RDS, Amazon Aurora
키-값 (Key-Value)고유한 키에 하나의 값을 매핑하여 저장. 매우 빠른 읽기/쓰기Amazon DynamoDB
문서 (Document)JSON과 유사한 형식의 문서를 저장. 유연한 스키마Amazon DocumentDB
인메모리 (In-Memory)데이터를 메모리에 저장하여 매우 빠른 응답 속도 제공Amazon ElastiCache (Redis, Memcached)
검색 (Search)텍스트 검색 및 분석에 최적화Amazon OpenSearch Service

➕ Amazon RDS (Relational Database Service)

  • RDS는 AWS 클라우드에서 관계형 데이터베이스를 손쉽게 설치, 운영, 확장할 수 있도록 지원하는 완전 관리형 서비스입니다.

  • RDS의 주요 장점 (관리형 서비스의 의미):

    1. 간편한 설정: 클릭 몇 번으로 원하는 데이터베이스 엔진(MySQL, PostgreSQL, MariaDB, Oracle, SQL Server 등)과 사양을 선택하여 DB 인스턴스를 생성할 수 있습니다.
    2. 자동화된 관리: AWS가 OS 설치, 보안 패치, 소프트웨어 업데이트, 자동 백업, 장애 조치 등의 일상적인 관리 작업을 대신 처리해줍니다.
    3. 고가용성 (Multi-AZ): 다중 가용 영역(Multi-AZ) 옵션을 활성화하면, 주(Primary) DB 인스턴스의 데이터를 다른 AZ에 있는 예비(Standby) 인스턴스에 실시간으로 동기 복제합니다. 주 DB에 장애가 발생하면 AWS가 자동으로 예비 DB로 장애 조치(Failover)하여 서비스 중단을 최소화합니다.
    4. 읽기 성능 확장 (Read Replicas): 읽기 전용 복제본(Read Replica)을 여러 개 생성하여, 읽기(SELECT) 트래픽을 분산시킬 수 있습니다. 이를 통해 원본 DB의 부하를 줄이고 읽기 성능을 크게 향상시킬 수 있습니다.

📌 요약

  • AMI는 OS와 애플리케이션이 설치된 서버 템플릿으로, 동일한 구성의 EC2 인스턴스를 신속하게 복제하는 데 사용됩니다.
  • EC2 스토리지는 전용 영구 디스크(EBS), 초고속 임시 디스크(Instance Store), 네트워크 공유 폴더(EFS) 등 용도에 맞는 다양한 옵션을 제공합니다.
  • RDS는 AWS가 설치, 패치, 백업 등을 대신 관리해주는 완전 관리형 관계형 데이터베이스 서비스입니다.
  • RDS의 다중 AZ(Multi-AZ) 기능은 고가용성(장애 복구)을, 읽기 전용 복제본(Read Replica)읽기 성능 확장을 위해 사용되는 핵심 기능입니다.

0개의 댓글