강의를 수강하면 아래의 내용을 알게 된다.
- AWS 서비스를 이용하여 일반적인 아키텍처를 이해할 수 있다.
- 기본적인 서비스의 용도를 이해하고 적용할 수 있다.
두 번에 걸쳐 2시간 30분씩 진행한다.
-
AWS에 대한 전반적인 소개(30분)
- 리전 - 2개 이상의 가용영역으로 이루어져 있음
- 리전을 결정할 때 무엇을 고려해야 하는가?
- 내가 이용할려고 하는 서비스가 있는 지
- 가격이 적정한 지
- 리전을 결정할 때 무엇을 고려해야 하는가?
- 가용영역 - 데이터센터들이 클러스터 형태로 구성되어 있는 집합체
- 엣지 로케이션 - Caching을 담당하는 시설물. 인구밀도가 높은 도시에 위치하여 있음. 전세계적으로 200여개 이상.
- 고가용성(High Availability), 내결함성(Fault Tolerant)의 의미
- 고가용성 - 서버와 네트워크, 프로그램 등의 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질. 절대 고장나지 않음을 의미.
- 내결함성 - 네트워크상에 어떤 문제가 발생할 때를 대비해서 미리 장애 대비를 해놓는 것. 장애 대비책으로 대부분 이중 구조를 의미하고 전체 네트워크가 하나의 지점에서 발생한 장애로 인해 영향을 받는 것을 방지하기 위한 대책.
- 예시
- 최소 4대의 인스턴스가 있어야 1초 이내의 응답속도가 보장되는 시스템이 있다. '1초 이내의 응답 속도'가 시스템의 서비스 수준 협약서(Service Level Agreement)라고 하자.
- 이 시스템을 1개의 AZ에서 4대로 돌리는 경우
- 고가용성 미충족
- 내결함성 미충족
- 이 시스템을 2개의 AZ에서 2대씩 배치하는 경우
- 고가용성 충족
- 내결함성 미충족
- 이 시스템을 2개의 AZ에서 4대씩 배치하는 경우
- 고가용성 충족
- 내결함성 충족
- 비용이 2배
- 이 시스템을 3개의 AZ에서 2대씩 배치하는 경우
- 고가용성 충족
- 내결함성 충족
- 비용이 1.5배
- 화이트보딩(리전과 가용영역 그리고 엣지 로케이션과의 관계)
- 리전 - 2개 이상의 가용영역으로 이루어져 있음
-
AWS의 기본적인 서비스 소개(1시간)
- EC2 - AWS의 기본적인 컴퓨팅 서비스
- EC2 라이브 사이클, 가격 정책 모델 숙지(전용호스트와 전용인스턴스의 차이), 그 외에도 Savings plan이 있음.
- 유저 데이터, 메타 데이터 설명
- 인스턴스 유형
- T2/T3 인스턴스 - 개발 환경
- C5 인스턴스 - 고성능 웹 서버
- H1 인스턴스 - 고성능 데이터베이스
- P3 인스턴스 - 딥 러닝
- R4/R5 인스턴스 - 분산 파일 시스템
- Amazon VPC - AWS의 클라우드에서 격리된 프라이빗한 가상 네트워크
- 서브넷마스크, CIDR 블록
- NAT 게이트웨이 - 내부 내트워크에서는 공인되지 않은 IP 주소를 사용하고, 인터넷으로 나갈 때만 공인 주소(즉 유일한 IP 주소)를 가지고 나가는 방식(IP mascarading)
- 보안 액세스 옵션들
- AWS Site-to-Site VPN
- AWS Direct Connect
- AWS Transit Gateway
- AWS VPN CloudHub
- 소프트웨어 VPN
- EBS - 블록 스토리지 서비스
- 주요 기능
- EC2의 루트 볼륨 스토리지로 사용
- EBS에 저장된 데이터는 가용 영역 내에 자동으로 복제
- EBS 볼륨은 연결된 인스턴스의 워크로드로 투명하게 암호화
- 여러 EBS 스토리지 타입들 설명
- SSD
- Provisioned IOPS
- GP2, GP1
- HDD
- Throughput optimized
- Cold HDD
- SSD
- 주요 기능
- 데모 1 - EC2 프로비저닝 해보기
- S3 - 오브젝트 스토리지 서비스
- 메타데이터의 의미
- 버저닝, 정적 웹 호스팅, 미디어 호스팅, 백업 용도로 사용 등
- 블록 스토리지와 오브젝트 스토리지의 차이점 설명(파일 스토리지에 대해서도 알고 있어야 함)
- 데모 2 - S3를 이용하여 정적 웹 호스팅 해보기
- 실습 1 - VPC 구축해보기
- EC2 - AWS의 기본적인 컴퓨팅 서비스
-
IAM - 권한 제어 접근 관리 서비스
- User - 기본적인 사용 단위. 영구적인 권한 부여하는 방법. 여러 그룹에 속할 수 있음.
- Role - 사용자나 그룹 그리고 리소스에 부여할 수 있음
- Group - User를 묶을 수 있는 단위. 여러 User를 포함할 수 있음.
- Policy - 사용자의 권한이 명세되어 있는 JSON 파일. User, Role 그리고 Group에 부여 가능.
- 명시적 거부, 명시적 허용, 묵시적 거부 설명
- 화이트보딩(전반적인 IAM 서비스를 주체들을 기반으로 관계 설명)
- 데모 2 - IAM 사용하기
- NG 그룹을 생성 및 정책(EC2 생성 및 VPC 접근) 부여하기.
- demo_user를 생성하고 console로 로그인을 한다.
- 실제로 접근해본다.
- S3에 대한 접근 권한을 추가로 부여한다.
- 이를 확인한다.
-
데이터베이스
- RDS - 관계형 데이터베이스
- DynamoDB - 비관계형 데이터베이스
- 실습 2 - 데이터베이스를 VPC 내에 구축해보고 데이터 저장하기
-
고가용성 아키텍처 및 모니터링 시스템
- Auto Scaling
- CloudWatch 알람을 이용하여 Auto Scaling 트리거하는 것.
- 예약 오토 스케일링, 동적 오토 스케일링, 기계학습 기반의 오토 스케일링의 차이
- ELB
- CLB - EC2-classic에서 운영하던 로드 벨런서. 추가적인 버전이 없음.
- ALB - L7 영역에서 HTTP/HTTPS 프로토콜이나 URL 기반으로 룰을 셋팅하고 타켓 그룹을 설정할 수 있음.
- NLB - L4 레벨에서 포트번호를 기반으로 분기 설정 가능. 더 빠른 성능을 보장.
- CloudWatch - 모니터링 서비스
- 데모 3 - CloudWatch 의 구성요소 탐색
- 실습 3 - 로드밸런서를 이용하여 인스턴스를 자동으로 프로비저닝하는 것 구성하기
- Auto Scaling