데이터베이스
RDS
DB 인스턴스는 클라우드에서 실행하는 격리된 데이터베이스 환경이며 serverless가 아니다. DB 인스턴스에는 여러 사용자가 만든 데이터베이스가 포함될 수 있으며, 독립 실행형 데이터베이스 인스턴스에 액세스 할 때 사용하는 도구 및 애플리케이션을 사용해 액세스 할 수 있다.
실습
퍼블릭 접속(예), 인바운드 규칙이 올바르게 설정되어 있지 않으면 접속이 안된다.
- AWS RDS 대시보드 접속
- RDS 생성 : 이름, 관리자 계정, 성능 등 선택 / 퍼블릭 접속(예), MySQL
- 보안 그룹 설정 : 인바운드 규칙에 3306 포트가 올바르게 설정돼 있는지 확인
- Workbench를 통해 연결
Document DB (NoSQL)
MongoDB API 워크로드의 완전 관리 및 유연한 확장 가능한 문서전용(Document) 데이터베이스이다. Amazon DocumentDB에서는 스토리지 및 컴퓨팅이 분리되어 각각을 독립적으로 조정하며, 개발자는 데이터 크기에 관계없이 지연 시간이 짧은 읽기 전용 복제본을 몇 분 내에 최대 15개까지 추가하여 읽기 용량을 초당 수백만 개의 요청으로 늘릴 수 있다. 또한 JSON 데이터를 사용하며, 유연한 인덱싱을 제공한다.
MongoDB
Document 지향 데이터베이스로 데이터 중복이 발생할 수 있지만, 접근성과 가시성이 좋다. 또한 스키마 설계가 어렵지만, 유연해서 Application의 요구사항에 맞게 데이터를 수용할 수 있다. 분산에 대한 솔류선을 자체적으로 지원해서 Scale-out이 쉽고, 확장 시 Application을 수정하지 않아도 된다.
Dynamo DB (NoSQL)
Amazon Dynamo DB는 완전 관리형 Key-Value 기반 NoSQL 데이터베이스이다. 암호화를 제공하여 데이터 보호와 관련된 운영 부담 및 복잡성이 없으며, AWS Management Console을 통해 리소스 사용률 및 성능 지표를 모니터링할 수 있다. 또한 원하는 양의 데이터를 저장 및 검색하고 어느 수준의 요청 트래픽도 처리할 수 있는 데이터베이스 테이블을 생성할 수 있다.
네트워크
Route53
가용성과 확장성이 뛰어는 DNS 웹 서비스이다. Route53을 사용하여 도메인 등록, DBS 라우팅, 상태 확인을 조합하여 실행할 수 있다.
Certification Manager
Amazon Certification Manager(ACM)를 사용하면 AWS 서비스 및 연결된 내부 리소스에 사용할 공인 및 사설 SSL/TLS 인증서를 프로비저닝, 관리 및 배포할 수 있다. ACM은 SSL/TLS 인증서를 구매, 업로드 및 갱신하는 데 드는 시간 소모적인 수동 프로세스를 대신 처리해 준다.
- 사용할 SSL/TLS 인증서를 AWS 계정으로 요청 및 가져오기
- DNS 또는 이메일 검증을 통해 요청된 인증서의 도메인 소유권을 검증하여 인증서 발급
- Elastic Load Balancing(ELB), Amazon CloudFront와 같은 AWS 서비스에서 새로 발급되거나 가져온 인증서 사용
SSL 인증서
공개 키-개인 키 쌍을 갖고 있으며, 이 키들이 함께 작용하여 암호화된 연결을 수립한다. 인증서는 "주체(subject)"라는 것을 포함하고 있는 인증서/웹사이트 소유자의 ID이다.
CloudFront
Amazon CloudFront는 뛰어난 성능, 보안 및 개발자 편의를 위해 구축된 콘텐츠 전송 네트워크(CDN) 서비스이다.
- 대기 시간 감소
- 보안 향상
- 비용 절감
- 사용자 정의 전송
CDN
콘텐츠 전송 네트워크(CDN)는 데이터 사용량이 많은 애플리케이션의 웹 페이지 로드 속도를 높이는 상호 연결된 서버 네트워크로 정적 & 동적 콘텐츠를 지원한다. CDN은 캐싱, 동적 가속, 엣지 로직 계산을 수행한다.
Elastic Load Balancing(ELB)
로드 밸런싱은 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법이다. 로드 밸런서는 서버에 가해지는 부하(=로드)를 분산(=밸런싱)해주는 장치 또는 기술을 통칭한다.
ELB 대상 그룹
기본적으로 로드 밸런서는 대상 그룹에 대해 지정한 프로토콜과 포트 번호를 사용하여 등록된 대상으로 요청을 전송하거나 대상 그룹에 각 대상을 등록할 때 이 포트를 재정의할 수 있다.
VPC
Amazon Virtual Pricate Cloud(Amazon APC)를 이용하면 사용자가 정의한 가상 네트워크로 AWS 리소스를 시작할 수 있다. 이 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 유사하다.
기능
- Virtual Private Cloud(VPC) : 기존 데이터센터에서 운영하는 기존 네트워크와 유사한 가상 네트워크
- 서브넷 : VPC의 IP 주소 범위
- IP 주소 지정 : VPC와 서브넷에 IPv4와 IPv6 할당 가능
- 라우팅 : 라우팅 테이블을 사용해 서브넷 혹은 게이트웨이의 네트워크 트래픽이 전달되는 위치 결정
- 게이트웨이 : VPC를 다른 네트워크에 연결
- 엔드포인트 : 인터넷 게이트웨이 또는 NAT 장치를 사용하지 않고 AWS 서비스에 비공개로 연결
- 피어링 연결 : 두 VPC 리소스 간 트래픽을 라우팅
- 트래픽 미러링 : 네트워크 트래픽 복사 및 심층 패킷 검사를 위해 보안 및 모니터링 어플라이언스로 전송
- Transit Gateway : 전송 게이트웨이를 사용하여 VPC, VPN 연결 및 AWS Direct Connect 연결 간 트래픽 라우팅
- VPC 흐름 로그 : VPC의 네트워크 인터페이스로 들어오고 나가는 IP 트래픽에 대한 정보 캡처
- VPN 연결 : AWS VPN을 사용하여 온프레미스 네트워크에 VPC를 연결
CIDR(Classless Inter-Domain Routing, 사이더)
CIDR은 클래스 없는 도메인 간 라우팅하는 기법이다. '/24'라고 표시된 부분은 Network bit 수를 표기한 것이다. 32 bits 중 앞에서부터 24 bits는 Network bit, 나머지 8 bits는 할당 가능한 host bits이다.
VPC 생성
- IP 주소 범위 선택
- 가용 영역(AZ) 별 서브넷 설정
- 인터넷으로 향하는 경로(route) 만들기
- VPC 트래픽 설정
'[프로그래머스] 데이터 엔지니어링 데브코스 3기 > TIL(Today I Learn)' 카테고리의 다른 글
[TIL - 29일 차] AWS 클라우드 (4) (2) | 2024.05.02 |
---|---|
[TIL - 28일 차] AWS 클라우드 (3) (0) | 2024.05.01 |
[TIL - 26일 차] AWS 클라우드 (1) (0) | 2024.04.29 |
[TIL - 25일 차] 데이터 웨어하우스와 SQL과 데이터 분석 (5) (0) | 2024.04.26 |
[TIL - 24일 차] 데이터 웨어하우스와 SQL과 데이터 분석 (4) (0) | 2024.04.25 |