🧐 공부용

📘 IAM & 보안 기초
🔐 주요 구성 요소
| 항목 | 역할 |
|---|
| IAM 사용자 | AWS 리소스를 사용하는 실제 사용자 |
| IAM 그룹 | 사용자의 집합, 그룹에 부여한 권한을 공유 |
| IAM 역할 | AWS 리소스가 다른 서비스에 접근할 수 있게 해주는 권한 객체 (ex. EC2 → S3 접근) |
| 인스턴스 프로필 | IAM 역할을 EC2와 같은 인스턴스에 연결할 때 사용하는 중간 객체 |
| 정책 (Policy) | JSON 형식의 권한 문서 (버전, 허용/거부, 작업, 리소스, 조건 등 구성) |
📝 자주 등장하는 정책 예시
{
"Version": "2012-10-17",
"Statement": [{
"Effect": "Allow",
"Action": "s3:GetObject",
"Resource": "arn:aws:s3:::example-bucket/*"
}]
}
🧠 출제 포인트
- 정책 구성에서 Effect, Action, Resource 항목 이해 중요
aws:PrincipalOrgID 키워드 등장 시 → 조직 내부 계정만 접근 가능하도록 제한
📗 EC2 인스턴스 유형 & 확장 전략
☁️ 인스턴스 구매 방식 비교
| 구매 방식 | 설명 | 출제 시나리오 키워드 |
|---|
| 온디맨드 | 짧은 시간 동안 즉시 사용 | 예측 불가, 유연한 워크로드 |
| 예약 인스턴스 | 1~3년 장기 사용 시 할인 | 장기 워크로드, 비용 절감 |
| 세이빙 플랜 | 서비스 및 인스턴스 변경에도 유연하게 할인 | 인스턴스 교체 필요, 예산 예측 |
| 스팟 인스턴스 | 미사용 용량 활용, 중단 가능성 있음 | 일괄 작업, 저비용, 중단 허용 가능 |
| 전용 호스트 | 물리 서버 단위로 독점 사용 | 소프트웨어 라이선스 제약, 보안 규제 대응 |
| 용량 예약 | 가용 영역 내 인스턴스 수량 확보 | 용량 확보가 중요한 경우 |
🧩 배치 그룹(Placement Group)
| 유형 | 특징 | 적합 사례 |
|---|
| 클러스터형 | 동일 가용 영역 내 가까운 위치에 배치 | 고성능 계산, 낮은 지연 시간 요구 |
| 스프레드형 | 물리적 리소스에 분산 배치 | 고가용성, 장애 분리 필요 |
| 파티션형 | 논리적으로 분리된 그룹에 나눠 배치 | 빅데이터, 대용량 병렬 처리 (Hadoop 등) |
📦 스토리지 서비스
🔹 EBS (Elastic Block Store)
- EC2에 부착하여 사용하는 네트워크 기반 가상 디스크
- 특정 가용 영역(AZ)에서만 사용 가능
- 한 번에 하나의 인스턴스에만 마운트 가능
- 스냅샷을 통해 백업 가능하나 복구 시 지연 → RTO(복구 시간 목표)에 적합하지 않음
📌 EBS 볼륨 유형
| 유형 | 설명 | 특징 |
|---|
| gp2 / gp3 | 범용 SSD | gp3는 성능 조절 가능, 비용 효율적 |
| io1 / io2 | 프로비저닝된 IOPS SSD | 낮은 지연 시간, 고성능 필요 시 |
| st1 | 처리량 최적화 HDD | 자주 접근하는 대용량 데이터에 적합 |
| sc1 | 콜드 HDD | 접근 빈도 낮은 데이터용, 가장 저렴 |
🔹 EFS (Elastic File System)
- 여러 EC2 인스턴스 간 파일 시스템 공유 가능
- 병렬 접근 가능, 리눅스 전용
- 리전 단위 서비스로 여러 가용 영역에 걸쳐 복제 → 고가용성 보장
✅ 퍼포먼스/처리량 모드
| 설정 | 설명 |
|---|
| 일반 목적 | 기본 모드, 대부분 워크로드에 적합 |
| 최대 I/O | 대규모 데이터 처리, 수천 개의 연결 필요 시 |
| 버스팅 | 소규모, 간헐적 처리량 필요할 때 |
| 사전 할당 | 예측 가능한 처리량 설정 |
| 탄력 | 자동 조절, 예측 어려운 워크로드에 적합 |
🔹 AMI (Amazon Machine Image)
- EC2 인스턴스의 템플릿
- 운영체제, 설정, 소프트웨어 포함
- 유형: 기본 제공 AMI / 사용자 지정 AMI / 마켓플레이스 AMI
🔹 S3 (Simple Storage Service)
- 객체 기반 스토리지
- 글로벌 서비스, 무제한 저장 가능
- 내구성 99.999999999% (11 9's)
✅ 스토리지 클래스
| 클래스 | 설명 |
|---|
| Standard | 자주 접근, 기본 스토리지 |
| S3 IA | 자주 접근하지 않음 + 빠른 접근 필요 |
| One Zone-IA | IA와 유사, 단일 가용 영역 → 더 저렴 |
| Glacier Instant Retrieval | 저빈도 + 즉시 검색 필요 시 |
| Glacier Flexible Retrieval | 수 분 ~ 수 시간 검색 시간, 연 1~2회 접근 |
| Glacier Deep Archive | 최장 검색 시간 (12~48시간), 가장 저렴 |
| Intelligent-Tiering | 머신러닝 기반 자동 계층 이동 (추가 요금 없음) |
✅ 기능 정리
- 멀티파트 업로드: 5GB 이상 객체를 나눠서 업로드
- 전송 가속화: 엣지 로케이션을 통해 전송 속도 향상
- 객체 잠금
- 규정 준수 모드: 모든 사용자 변경 불가
- 거버넌스 모드: 권한 있는 사용자만 변경 가능
🔹 Storage Gateway
📌 유형별 비교
| 유형 | 설명 | 특징 |
|---|
| S3 파일 게이트웨이 | S3를 백엔드로 사용하는 파일 시스템 인터페이스 | 캐시 포함, SMB/NFS 지원 |
| FSx 파일 게이트웨이 | FSx Windows File Server 연동용 | 자주 접근하는 파일은 로컬 캐시 |
| 볼륨 게이트웨이 | 블록 스토리지로 S3에 백업 | iSCSI 지원,캐시 모드 / 저장 모드 선택 가능 |
| 테이프 게이트웨이 | 백업용 가상 테이프 인터페이스 | 기존 테이프 기반 백업 시스템 대체 |
🔹 Amazon FSx
📌 주요 유형
| 유형 | 설명 |
|---|
| FSx for Lustre | 고성능 분산 처리용, S3 연동, 병렬 처리에 적합 |
| FSx for Windows File Server | SMB 프로토콜 지원, Windows 공유 디스크 대체 |
| FSx for NetApp ONTAP | NetApp 워크로드 마이그레이션에 적합 |
| FSx for OpenZFS | ZFS 기반 오픈소스 파일 시스템 |
🔹 DataSync
- 온프레미스 ↔ AWS 간 대용량 데이터 복사 자동화
- 모든 스토리지 클래스 지원, 권한 및 메타데이터 보존
- 오프라인/온라인 전송 모두 지원, NFS/SMB 연동 가능
🗃️ 데이터베이스 서비스
🔹 RDS (Relational Database Service)
- 관계형 데이터베이스를 완전관리형으로 운영 가능
- 지원 엔진: MySQL, PostgreSQL, MariaDB, Oracle, SQL Server, Aurora
- 자동 백업, 모니터링, 고가용성 구성 (다중 가용 영역)
📌 주요 기능
- 다중 가용 영역(Multi-AZ): 동기식 복제, 자동 장애 조치 지원 → 가용성 보장
- 읽기 전용 복제본(Read Replica): 비동기 복제, 읽기 부하 분산
- 스냅샷 백업 지원
- 스토리지 자동 확장, 성능 측정 도구 제공
✅ 출제 포인트
- "고가용성 필요" → Multi-AZ
- "읽기 처리량 증가" → 읽기 전용 복제본
- "장기 백업 보존" → 스냅샷 + 백업 설정
🔹 Aurora
- AWS가 개발한 고성능 관계형 DB 엔진
- MySQL, PostgreSQL 호환(MongoDB는 안됨) / RDS보다 5배 성능 우수
- 저장소는 6개 복제본으로 분산 → 자동 복구, 고내구성
📌 특징
- 최대 15개의 읽기 복제본 지원
- Global Database: 여러 리전에 걸쳐 복제 (읽기 전용)
- Aurora Serverless: 필요 시 자동 시작/중지, 스케일 조절 가능
- RDS Proxy와 연동 시 장애 전환 시간 66% 감소
✅ 출제 포인트
- “높은 성능 + 고가용성” → Aurora Multi-AZ
- “다중 리전 복제” → Aurora Global Database
- “간헐적 트래픽 + 비용 최적화” → Aurora Serverless
🔹 RDS Proxy
- DB 커넥션 풀링 및 연결 관리
- 장애 조치 시간 단축, 연결 수 제한 회피
- VPC 내부에서 사용, 퍼블릭 접근 불가
✅ 출제 포인트
- "데이터베이스 커넥션 수 과다 발생" → RDS Proxy
🔹 DynamoDB
- 완전관리형 NoSQL 키-값 / 문서형 데이터베이스
- 서버리스, 밀리초 응답 속도, 자동 확장성
📌 주요 기능
- 온디맨드 모드: 사용량만큼 과금, 처리량 계획 불필요
- 사전 할당 모드: 초당 읽기/쓰기 수량 지정
- TTL 설정: 만료 시간 지난 항목 자동 삭제
- 전역 테이블(Global Tables): 여러 리전에 데이터 동기화
- DAX: 인메모리 캐시를 통해 읽기 지연 최소화
- PITR: 최대 35일간 시점 복구 가능
✅ 출제 포인트
- "일시적/예측 불가 트래픽" → 온디맨드 모드
- "데이터 읽기 성능 향상" → DAX 사용
- "전 세계 분산 환경" → Global Tables
🔹 ElastiCache
- Redis 또는 Memcached 기반 인메모리 캐시 서비스
- DB 요청 처리 속도를 개선, 지연 감소
📌 비교
| 항목 | Redis | Memcached |
|---|
| 고가용성 | O (복제, 페일오버) | X |
| 스레드 | 단일 스레드 | 멀티 스레드 |
| 지속성 | O | X |
| 보안 및 백업 | IAM 연동 불가, 직접 구성 필요 | |
✅ 출제 포인트
- "반복적인 읽기 요청 처리, 지연 시간 최소화" → ElastiCache for Redis
- "S3, DynamoDB, RDS의 읽기 부하 완화" → 캐싱 사용
🔹 DocumentDB
- MongoDB 호환 문서형 DB 서비스
- JSON 기반 문서 저장/검색/인덱싱
- 빠른 성능, 고가용성, 자동 백업 지원
🔹 Amazon Neptune
- 그래프 기반 관계형 데이터베이스
- 수십억 개의 관계를 초단위로 질의 가능 (밀리초 지연)
- SNS 서비스에 주로 사용
- RDF/SPARQL, Property Graph/Gremlin 지원
✅ 출제 포인트
- "데이터 관계 분석 필요", "그래프 쿼리" → Neptune
🔹 Amazon Keyspaces / QLDB / Timestream
| 서비스 | 특징 |
|---|
| Keyspaces | Apache Cassandra 호환 NoSQL DB |
| QLDB | 변경 내역 추적 가능한 원장형 DB (회계, 감시 로그 등) |
| Timestream | 시계열 데이터 저장 및 분석용 (IoT, 모니터링 등) |
⚙️ 서버리스 & 애플리케이션 통합
🔹 Lambda
- 이벤트 기반 서버리스 컴퓨팅 서비스
- 서버 관리 불필요, 자동 확장, 수많은 AWS 서비스와 통합
- 최대 15분 유지 가능
- 초당 과금 (100ms 단위)
✅ 출제 포인트
- "이벤트 기반 실행", "서버 관리 없이 간단한 작업 처리" → Lambda
- UDP 트리거는 지원하지 않음
🔹 Lambda@Edge
- CloudFront 엣지 로케이션에서 Lambda 실행
- 사용자의 위치에 가까운 곳에서 처리 → 지연 최소화
- 요청 필터링, 리다이렉션, 사용자 인증 처리에 적합
🔹 API Gateway
- 외부 클라이언트가 AWS 서비스에 접근하도록 하는 API 프록시 역할
- REST API, HTTP API 지원
- Lambda, DynamoDB 등과 결합
✅ 출제 포인트
- "RESTful API 설계 + 인증 + 과금 + 트래픽 제어" → API Gateway
🔹 Step Functions
- 여러 AWS 서비스 및 Lambda 함수들을 순차적/조건적 흐름으로 조립
- 시각적 워크플로우 구성 가능
✅ 출제 포인트
- "작업 순서를 시각적으로 제어" → Step Functions
- "복잡한 상태 관리 필요" → Step Functions
🔹 App Runner
- 소스 코드 혹은 컨테이너 이미지를 가져와 자동으로 웹 애플리케이션 배포
- 자동 확장, TLS, 고가용성 제공
- 정적 웹, API 서버, 마이크로서비스 구성에 적합
✅ 출제 포인트
- "컨테이너를 코드로 쉽게 배포하고 싶을 때" → App Runner
🔹 EventBridge
- AWS 서비스, 사용자 앱, SaaS 앱 간 이벤트 기반 연결 허브
- CloudWatch Events의 확장 버전
✅ 출제 포인트
- "서버 간 실시간 이벤트 전송/통합" → EventBridge
🔐 보안 및 모니터링
🔹 IAM (Identity and Access Management)
- AWS 리소스에 대한 접근 제어 시스템
- 사용자, 그룹, 역할, 정책을 통해 권한 부여
✅ 핵심 구성 요소
| 구성 요소 | 설명 |
|---|
| 사용자 | 개별 계정, 직접 로그인 가능 |
| 그룹 | 사용자 집합, 공통 권한 부여 |
| 역할 | 리소스가 다른 리소스에 접근 시 사용 (예: EC2 → S3) |
| 정책 | JSON 문서로 권한 명시 (Effect, Action, Resource, Condition) |
aws:PrincipalOrgID: 특정 조직 내부 계정만 접근 허용할 때 사용
🔹 KMS (Key Management Service)
- 암호화 키 생성 및 관리 서비스
- IAM, CloudTrail, S3, RDS 등과 통합 가능
- API 호출 감사를 위해 CloudTrail과 통합됨
✅ 키 유형
| 키 유형 | 설명 |
|---|
| 고객 관리형 키 | 직접 생성 및 제어 가능, 감사 및 키 순환 설정 가능 |
| AWS 관리형 키 | AWS에서 자동 관리 |
- 다중 리전 키 사용 가능 (리전 간 복호화 허용)
🔹 Secrets Manager vs SSM Parameter Store
| 항목 | Secrets Manager | Parameter Store |
|---|
| 암호 자동 교체 | O | X |
| KMS 통합 | O | O |
| 자동화 기능 | 강력 (암호 교체 주기 설정 등) | 제한적 |
| 가격 | 유료 | 대부분 무료 (표준 tier) |
🔹 CloudTrail
- AWS 계정 내 모든 API 호출과 이벤트를 기록하는 서비스
- S3, CloudWatch Logs, EventBridge와 통합 가능
✅ 출제 포인트
- "누가 언제 어떤 리소스를 액세스했는지 추적" → CloudTrail
- 로그 무결성 검증 기능 있음 (로그 파일 검증)
🔹 CloudWatch
- AWS 자원 및 애플리케이션을 모니터링
- 지표, 로그, 알람, 대시보드 기능 제공
✅ 주요 구성 요소
| 구성요소 | 설명 |
|---|
| Logs | 로그 수집 및 저장 |
| Metrics | 모니터링 지표 (예: CPU 사용률) |
| Alarms | 임계치 기반 자동 경보 및 트리거 |
| Dashboards | 시각화 도구 |
🔹 AWS Config
- 리소스 구성 변경 사항 기록 및 규정 준수 확인
- 삭제/쓰기 추적은 불가 (CloudTrail과 보완 관계)
✅ 출제 포인트
- "구성 변경 이력 확인", "규칙 기반 평가" → AWS Config
🔹 WAF (웹 애플리케이션 방화벽)
- 7계층 웹 공격 방어 (XSS, SQL 삽입 등)
- ALB, API Gateway, CloudFront와 연동 가능 (NLB는 불가)
- Web ACL(보안 규칙) 구성 가능
🔹 AWS Shield
- DDoS 공격 대응 보안 서비스
- Standard: 모든 사용자에게 자동 제공
- Advanced: 유료 서비스, 더 강력한 보호 및 가시성 제공
🔹 Firewall Manager
- 조직 단위로 WAF, Shield, 보안 그룹 정책을 중앙 관리
- 여러 계정의 보안 정책을 일괄 적용
🔹 GuardDuty
- 이상 트래픽 탐지, 지능형 위협 분석
- CloudTrail, VPC 흐름 로그, DNS 로그 분석
🔹 Macie
- 민감한 정보(PII 등) 탐지 및 보호를 위한 서비스
- S3에 저장된 데이터에서 자동으로 개인정보 검색
🔹 Inspector
- EC2, 컨테이너 이미지, Lambda에 대한 보안 취약점 자동 스캔
🔹 AWS Certificate Manager (ACM)
- SSL/TLS 인증서 발급 및 자동 갱신
- ELB, CloudFront, API Gateway와 통합
(EC2 직접은 불가)
✅ 출제 포인트
- "SSL 인증서 자동 관리 + 비용 절감" → ACM
📊 분석 · 마이그레이션 · 머신러닝 · 백업
🔹 Athena
- S3에 저장된 데이터를 SQL로 분석 (서버리스)
- CSV, JSON, Parquet 등 다양한 포맷 지원
✅ 출제 포인트
- "S3에 저장된 로그를 분석하고 싶을 때" → Athena
🔹 Redshift
- 페타바이트급 OLAP 데이터 웨어하우스
- PostgreSQL 기반, 고속 쿼리 처리, 대규모 분석 작업에 최적화
- Redshift Spectrum: S3 데이터를 로드 없이 직접 분석
✅ 출제 포인트
- "대규모 분석 + S3 직접 분석 필요" → Redshift Spectrum
🔹 Glue
- 서버리스 데이터 카탈로그 + ETL 플랫폼
- S3 로그 정리 → 데이터 분석 전처리에 적합
🔹 QuickSight
- 데이터 시각화 도구 (대시보드, 차트 생성)
- 다양한 데이터 소스 통합, 실시간 대시보드 제공
🔹 EMR (Elastic MapReduce)
- Hadoop 기반 빅데이터 병렬 처리 클러스터 자동 생성 및 운영
🔹 DMS (Database Migration Service)
- 데이터베이스 간 이전 (소스 DB는 마이그레이션 중에도 운영 가능)
- CDC(변경 데이터 캡처) 지원
🔹 AWS Backup
- 다양한 AWS 리소스를 대상으로 백업 계획 생성 및 복원 자동화
- EC2, RDS, EFS, DynamoDB 등 지원
- 교차 리전, 교차 계정 백업 지원
🔹 재해 복구 전략 (DR 전략)
| 전략 | 설명 | 복구 시간 목표 (RTO) / 복구 시점 목표 (RPO) |
|---|
| 백업 & 복원 | 가장 기본적인 방식 | 수 시간 단위 |
| 파일럿 라이트 | 최소 구성 요소만 항상 실행 | 수 분 ~ 10분 |
| 웜 스탠바이 | 축소 버전이 항상 실행 중 | 수 분 |
| 멀티 사이트 | 이중 활성 리전 운영 | 실시간 수준 (초 단위) |
🔹 Migration Hub / MGN
- AWS로 마이그레이션 상태 추적 및 EC2로 서버 이전 지원
🔹 Machine Learning
| 서비스 | 역할 |
|---|
| SageMaker | 머신러닝 모델 개발/학습/배포 |
| Rekognition | 이미지·영상 인식 (객체, 사람, 텍스트 등) |
| Transcribe | 음성을 텍스트로 변환 |
| Polly | 텍스트를 자연스러운 음성으로 변환 |
| Translate | 실시간 다국어 번역 |
| Comprehend | 자연어 처리 (감정 분석 등) |
| Personalize | 추천 시스템 구축 |
| Textract | 이미지/스캔 문서에서 텍스트 추출 |
| Lex & Connect | 음성 챗봇 서비스 / 콜센터 자동화 |
| Forecast | 수요 예측 / 시계열 예측 서비스 |
| Kendra | 자연어 문서 검색 서비스 |