AWS 스토리지 유형
블록 스토리지 (100%가 아니라도 실행 됨 대신 모자란 만큼만 실행이 안될 뿐임)
- 블록 스토리지에서 파일은 동일 크기의 데잍터 조각 (블록)으로 구분됨
- 블록 스토리지는 Amazon EC2 인스턴스에서 실행되는 애플리케이션에 사용
블록 스토리지 참고 사이트
[AWS] 📚 EBS 개념 & 사용법 💯 정리 (EBS Volume 추가하기)
EBS (Elastic Block Storage) 컴퓨터 본체를 보면, cpu와 램카드, 그래픽카드, SSD, HDD가 다같이 장착되어 컴퓨터가 돌아가게 된다. EC2 인스턴스가 연산에 관한 (CPU,메모리 등) 처리를 한다고 하면, 데이터
inpa.tistory.com
인스턴스 스토리지
- 속도가 빠름
- 인스턴스를 중지하고 다시 시작하면 데이터가 날아감
EBS 볼륨 (인스턴스 스토어와 비교하는 문제가 자주 출제 됨)
종료되더라도 데이터가 일부러 삭제하지 않으면 남아있음.
초기 설정에 EC2를 지우면 볼륨도 날아가게 설정되어있으나 설정을 바꾸면 EC2를 지워도 볼륨은 남아있음.
EBS 스냅샷 : 백업용으로 사용 -> OS 없이 데이터만 백업
커스텀 AMI (백업의 일종) -> OS 있음
주로 사용하는 백업 방법
데일리는 스냅샷으로 백업하고 주단위로는 AMI로 만들어 관리.
객체 스토리지(100%가 아니면 안됨) : S3
클라우드 운영 방식
1. S3 (Simple Storage Service)
S3는 객체 스토리지 서비스로, 파일이나 정적 데이터를 저장하고 제공하는 데 가장 효율적입니다.
- 탑재하는 데이터: 이미지, 비디오, 문서 파일, 백업 파일, 로그 데이터, 정적 웹사이트 파일(HTML, CSS, JS) 등 비정형 데이터를 저장합니다.
- 운영 방식:
- 정적 콘텐츠 호스팅: 웹사이트의 정적인 파일들을 S3에 저장하여 EC2 인스턴스의 부하를 줄일 수 있습니다. S3를 웹 서버처럼 사용해 정적 웹사이트를 직접 호스팅하는 것도 가능합니다.
- 데이터 백업: EC2나 RDS의 백업 파일을 S3에 저장하여 안전하고 저렴하게 데이터를 보관합니다.
- 비용 효율성: 접근 빈도에 따라 S3 Standard, S3 Glacier 등 다양한 스토리지 클래스를 선택하여 비용을 최적화할 수 있습니다. 예를 들어, 자주 사용하지 않는 백업 데이터는 S3 Glacier에 저장하여 비용을 크게 절감합니다.
2. EC2 (Elastic Compute Cloud)
EC2는 가상 서버로, 애플리케이션의 핵심 로직을 실행하는 데 사용됩니다.
- 탑재하는 데이터: 웹 애플리케이션, 백엔드 서버, API 서버, 배치 처리, 게임 서버 등 동적인 컴퓨팅 작업을 수행하는 애플리케이션을 탑재합니다.
- 운영 방식:
- 부하 분산: **Elastic Load Balancing (ELB)**을 사용하여 여러 대의 EC2 인스턴스로 트래픽을 분산하고, Auto Scaling Group을 통해 트래픽 양에 따라 자동으로 인스턴스 수를 조절하여 가용성과 효율성을 높입니다.
- 인스턴스 타입 선택: 애플리케이션의 성능 요구사항에 맞춰 컴퓨팅 최적화(C-시리즈), 메모리 최적화(R-시리즈), 범용(T/M-시리즈) 등 적절한 EC2 인스턴스 타입을 선택해야 합니다.
3. RDS (Relational Database Service)
RDS는 관계형 데이터베이스 서비스로, 애플리케이션에서 사용하는 구조화된 데이터를 관리합니다.
- 탑재하는 데이터: 사용자 정보, 게시물, 상품 목록, 주문 내역 등 정형화되고 관계를 가지는 데이터를 저장합니다.
- 운영 방식:
- 관리 자동화: 데이터베이스 관리(패치, 백업, 모니터링)를 AWS가 대신 해주므로 운영 부담이 크게 줄어듭니다.
- 읽기 전용 복제본 (Read Replica): 읽기 요청이 많은 서비스의 경우, 읽기 전용 복제본을 추가하여 데이터베이스의 읽기 부하를 분산시키고 성능을 향상시킬 수 있습니다.
- 다중 AZ (Multi-AZ): 데이터베이스 인스턴스를 여러 가용 영역(Availability Zone)에 복제하여 장애 발생 시 자동으로 페일오버하여 고가용성을 확보합니다.
Amazon S3 액세스 제어 목록 (ACL)
버킷 정책 -> JSON 형식 사용 데이터를 주고 받기에 용이함.
Amazon S3 액세스 포인트
모듈화 관리를 원칙으로 함 -> 유지보수를 쉽게 하기 위함
서버 측 암호화 키 유형 (시험에 잘 나옴)
- Amazon S3 관리형 키 (SSE-S3)
- AWS KMS 키 (SSE-KMS)
- 이중 계층 서버 측 암호화 (DSSE-KMS)
- 고객 제공 키(SSE-C)
Amazon S3 스토리지 클래스
S3 Standard
- 자주 엑세스하는 데이터를 위한 설계
- 최소 3개의 가용 영역에 데이터를 저장
S3 Standard-IA
- 자주 엑세스하지 않는 데이터에 이상적
- S3 Standard와 유사하지만 스토리지 가격은 더 낮고 검색 가격은 더 높음
S3 One Zone-IA
- 단일 가용 영역에서 데이터를 저장
- S3 Standard-IA보다 스토리지 가격이 저렴
S3 Intelligent-Tiering
- 액세스 패턴이 불확실하거나 바뀌는 데이터에 이상적
- 객체당 약간의 월별 모니터링 및 자동화 요금 부과
S3 Glacier
- 데이터 아카이빙을 위해 설계된 저비용 스토리지
- 몇분에서 몇시간내에 객체를 검색
S3 Glacier Deep Archive
- 가장 저렴한 객체 스토리지 클래스
- 12시간 이내에 객체를 검색
S3 Intellingent-Tiering
-
상시 액세스 계층 (Frequent Access Tier):자주 액세스하는 데이터에 최적화된, 고성능의 계층
-
저빈도 액세스 계층 (Infrequent Access Tier):드물게 액세스하는 데이터에 최적화되어, 상시 액세스 계층보다 저렴한 비용을 제공
-
아카이브 액세스 계층 (Archive Access Tier):매우 드물게 액세스하는 데이터에 적합하며 가장 저렴한 비용을 제공파일 스토리지파일 스토리지에서는 여러 클라이언트가 공유 파일 폴더에 저장된 데이터에 엑세스할 수 있음예시) PC와 파일을 공유하는 스토리지Amazon Elastic File System -> Linux용 파일 공유 시스템FSx -> Windows용 파일 공유 시스템AWS 데이터 마이그레이션 도구
- 온라인 데이터 전송: AWS DataSync
- 데이터베이스 마이그레이션: AWS Data Migration Service (DMS)
- 대규모 오프라인 데이터 전송: AWS Snow Family -> 택배사와 협력해 장비를 보내고 데이터를 복사한 뒤 옮겨줌
- 애플리케이션 및 서버 마이그레이션: AWS Application Migration Service (MGN)