📖 학습 주제
- RDS, DocumentDB, DynamoDB
- Route53
- Certification Manager
- CloudFront
- ELB
- VPC
✏️ 주요 메모 사항 소개
AWS는 현재 다양한 DB를 제공하고 있다. 관계형 데이터베이스인 RDS 부터, NoSQL 기반의 데이터들을 다루는 DocumentDB, DynamoDB와 같은 서비스들도 있다.
RDS

DB 인스턴스를 클라우드에서 실행하는 격리된 데이터베이스 환경, DB 인스턴스에는 여러 사용자가 만든 데이터베이스가 포함될 수 있으며, 독립 실행형 데이터베이스 인스턴스에 액세스할 때 사용하는 도구 및 애플리케이션을 사용해 액세스할 수 있다.
실습
1) DB 엔진 선택하기

2) 상황에 맞게 템플릿 설정

3) 이름과 관리자 설정하기


- 이후 MySQL Workbench와 같은 툴을 이용해 엔드포인트 주소로 접속을 하면 된다.
DocumentDB

-
MongoDB API 워크로드의 완전 관리 및 유연한 확장이 가능한 문서전용(Document) 데이터베이스. Amazon DocumentDB에서는 스토리지 및 컴퓨팅이 분리되어 각각을 독립적으로 조정한다.
-
개발자는 데이터 크기에 관계없이 지연 시간이 짧은 읽기 전용 복제본을 몇 분 내에 최대 15개까지 추가하여 읽기 용량을 초당 수백만 개의 요청으로 늘릴 수 있음.
-
기본적으로 JSON 데이터를 이용하고 유연한 인덱싱을 제공
MongoDB

- Document 지향 데이터베이스로, 데이터 중복이 발생할 수 있지만, 접근성과 가시성이 좋다.
- 스키마 설계가 어렵지만, 유연하기 때문에 Application 요구사항에 맞게 데이터를 수용할 수 있다.
- 분산 솔루션을 자체적으로 지원하여 Scale-out이 쉽고, 확장 시 Application을 변경하지 않아도 된다.

DynamoDB

- 완전관리형 Key-Value 기반 NoSQL 데이터베이스
- Auto-Scaling을 제공하여 자동적으로 저장소 용량을 늘려준다.
- 유휴 시 암호화를 제공하여 중요한 데이터 보호와 관련된 운영 부담 및 복잡성을 제거
- 원하는 양의 데이터를 저장 및 검색하고 어느 수준의 요청 트래픽도 처리할 수 있는 데이터베이스 테이블을 생성할 수 있다.
- AWS Management Console을 사용하여 리소스 사용률 및 성능 지표를 모니터링할 수 있고 온디맨드 백업 기능을 제공한다.
- 테이블 생성 시 스키마를 생성할 필요가 없다.



Route53
가용성과 확장성이 뛰어난 DNS(도메인 이름 시스템) 웹 서비스, Route 53을 사용하여 도메인 등록, DNS 라우팅, 상태 확인을 조합하여 실행할 수 있다.
- public host zone 과 private host zone이 존재한다.

Certification Manager
AWS Certification Manager(ACM)을 사용하면 AWS 서비스 및 연결된 내부 리소스에 사용할 공인 및 사설 SSL/TLS 인증서를 프로비저닝, 관리 및 배포할 수 있다. ACM은 SSL/TLS 인증서를 구매, 업로드 및 갱신하는 데 드는 시간 소모적인 수동 프로세스를 대신 처리해준다.
SSL 인증서
- SSL 인증서는
공개 키와 개인 키라는 키 쌍을 갖고 있는데, 이 키들이 함께 작용하여 암호화된 연결을 수립한다.
- 인증서는 '주체(subject)'라는 것을 포함하고 이는 인증서/웹사이트 소유자의 ID이다.
- 인증서를 얻으려면 서버에서 인증서 서명 요청(CSR)을 생성해야 한다. 이 과정에서 서버에 개인 키와 공개 키를 생성한다.
- SSL 인증서 발급자(인증기관,CA)에게 보내는 CSR 데이터 파일에는 공개 키가 포함된다.
ACM은 사용할 TLS/SSL 인증서를 AWS 계정으로 요청하거나 가져오고 도메인 이름 시스템(DNS) 또는 이메일 검증을 통해 요청된 인증서의 도메인 소유권을 검증하여 인증서 발급을 완료한다.
Elastic Load Balancing(ELB), Amazon CloudFront 와 같은 다양한 AWS 서비스에서 새로 발급되거나 가져온 인증서를 사용한다.
CloudFront
뛰어난 성능, 보안 및 개발자 편의를 위해 구축된 콘텐츠 전송 네트워크(CDN) 서비스
특징으로 대기시간 감소, 보안 향상, 비용 절감, 사용자 정의 전송이 있다.
CDN
- 데이터 사용량이 많은 애플리케이션의 웹 페이지 로드 속도를 높이는 상호 연결된 서버 네트워크
- 정적 콘텐츠와 동적 콘텐츠를 모두 다룬다.
- 캐싱, 동적 가속, 엣지 로직 계산등과 같은 기능을 포함

ELB (Elastic Load Balancing)
로드 밸런싱이란 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법. 로드 밸런서는 서버에 가해지는 부하를 분산해주는 장치 또는 기술을 통칭한다.
- L4 로드밸런서와 L7 로드밸런서로 나누어 진다.

- ELB를 이용하려면 먼저 ELB 대상 그룹을 생성해야 한다. 기본적으로 로드 밸런서는 대상 그룹에 대해 지정한 프로토콜과 포트 번호를 사용하여 등록된 대상으로 요청을 전송한다. 대상 그룹에 각 대상을 등록할 때 이 포트를 재정의할 수도 있다.
VPC (Virtual Private Cloud)
사용자가 정의한 가상 네트워크로 AWS 리소스를 시작할 수 있게 해주는 서비스. 이 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 유사하다는 장점이 있다.

VPC 기능들
- 서브넷 : VPC의 IP주소 범위로, 서브넷은 단일 가용 영역에 상주해야 함. 서브넷 추가 후 VPC에 AWS 리소스 배포 가능
- IP 주소 지정 : VPC와 서브넷에 IPv4 및 IPv6 주소를 할당 가능. 또한 IP주소를 AWS로 가져오고 VPC의 리소스(EC2, NAT...)에 할당 가능
- 라우팅 : 라우팅 테이블을 사용하여 네트워크 트래픽이 전달되는 위치를 결정
- 게이트웨이 및 엔드포인트 : VPC를 다른 네트워크에 연결. VPC 엔드포인트를 사용하여 인터넷 게이트웨이나 NAT 장치를 사용하지 않고 AWS 서비스에 비공개로 연결
- 피어링 연결 : VPC 피어링 연결을 사용하여 두 VPC의 리소스 간 트래픽을 라우팅
- 트래픽 미러링 : 네트워크 인터페이스에서 트래픽을 복사하고 심층 패킷 검사를 위해 보안 및 모니터링 어플라이언스로 전송.
- Transit Gateway : 중앙 허브 역할을 하는 전송 게이트웨이를 사용하여 VPC, VPN 연결 및 AWS Direct Connect 연결 간에 트래픽을 라우팅
- VPC 흐름 로그 : VPC의 네트워크 인터페이스로 들어오고 나가는 IP 트래픽에 대한 정보를 캡처한다.
- VPN 연결 : AWS VPN을 사용하여 온프레미스 네트워크에 VPC를 연결한다.
CIDR
Classless Inter-Domain Routing의 약자로 기존에 나누어져 있던 A,B클래스와 같은 클래스 없이 도메인 간 라우팅 하는 기법
![업로드중..]()
VPC 생성
![업로드중..]()
💦 공부하며 어려웠던 내용
그냥 모든것이 다 어렵다 ㅠㅠ