[데이터 엔지니어링 데브코스 2기] TIL-7주차-파트03 AWS 클라우드(2)

이재호·2023년 11월 21일
0

1. Route53

  • Route53은 도메인 관련 기능(도메인 등록, DNS 라우팅, 상태 확인 등)을 지원하는 서비스입니다.

  • Route53에는 public host zone과 private host zone이 존재합니다.

  • Route53 = DNS + 모니터링 + L4 + GSLB.

작동 방식)

  1. End user가 특정 도메인에 대한 요청을 하면,
  2. 해당 네임 서버를 찾아 가고,
  3. 지엽적으로 등록된 네임 서버를 찾아 간 후,
  4. 최종적으로 local에 등록된 네임 서버를 찾아 갑니다.



2. DB

  • DB 종류는 크게 두 가지로 나뉩니다. SQL(RDBMS) vs. NoSQL

  • AWS에서는 RDBMS를 지원하는 서비스가 RDS입니다.

2-1. RDS

  • 클라우드에서 실행하는 격리된 데이터베이스 환경.

  • DB 인스턴스에 액세스할 수 있으며, 간단하게 DB 인스턴스를 만들고 수정할 수가 있습니다.

  • 직접 (서버 내)시스템 로그인은 불가능하며, RDS는 servreless는 아닙니다.

  • 일반적인 쿼리 등은 자유롭게 사용 가능합니다.

  • RDS에 접속이 되지 않는다면 고려해 볼 요소는 다음 네 가지입니다.

    1. 엔드포인트를 제대로 입력했는지.
    2. 퍼블릭 액세스 기능이 켜져 있는지.
    3. 포트가 열려 있는지.
    4. 인바운드 규칙을 만족하는지.
  • 만약 DB를 Rollback하고 싶다면, 메뉴 중에 특정 시점으로 복원 메뉴를 선택하면 됩니다.

2-2. Document DB

  • MongoDB API와 연계되는 문서 전용 (NoSQL) DB입니다.

  • Amazon의 DocumentDB에서는 스토리지 및 컴퓨팅이 분리되어 각각을 독립적으로 조정합니다.

  • 복사본을 3개의 AZ(가용 영역)으로 나눠서 저장합니다.

  • JSON 데이터를 이용.

  • 유연한 인덱싱 지원.

2-3. MongoDB

  • Document 지향 DB.

  • 데이터 중복 가능성이 있으나, 접근성과 가시성이 좋습니다.

  • 스키마 설계가 어렵지만, 스키마가 유연해서 앱의 요구사항에 맞게 다양한 데이터 수용이 가능합니다.

  • 분산에 대한 솔루션을 자체적으로 지원하여 Scale-out이 쉽습니다.

  • 확장 시, 앱을 변경하지 않아도 됩니다.

  • MongoDB의 주된 용어는 다음과 같습니다.

    • Collection : RDBMS의 Table.

    • Document : RDBMS의 Row(record).

    • Field : RDBMS의 Column

2-3. Dynamo DB

  • Key-Value 기반의 NoSQL 데이터베이스 서비스.
  • Auto-Scailing 기능 지원 : 데이터가 쌓이면 알아서 내부적으로 용량이 증가합니다.
  • 온디맨드 백업 기능이 제공됩니다.
  • 테이블 생성 시 별도의 스키마 생성 작업을 할 필요가 없습니다.
  • Dcoument DB vs. Dynamo DB: 공통점)
    • NoSQL DB.

    • AWS DB Migration Service를 통해, 데이터 마이그렝션을 위한 이식성을 제공.

    • AWS Key Management Service를 통한 저장 데이터 암호화와 보안 기능 제공.

    • 관리 API 호출과 CloudFormation에 대한 CloudTrail 및 VPC Flow Logs로 감사 기능 제공

      차이점)

    • 리전 : Dynamo DB는 모든 리전. Document DB는 특정 리전.

    • 자격 증명 : Dynamo DB는 IAM을 통해서. Document DB는 User를 생성하고 관리.

    • 백업 : Dynamo DB는 사용자가 백업을 진행. Document DB는 DB 자체가 알아서 일일 백업.




3. Certification Manager

  • 인증서를 등록/발급하고 관리하는 서비스입니다.
  1. 사용할 TLS/SSL 인증서를 AWS 계정으로 요청하거나 가져온다.
  2. DNS 또는 이메일 검증을 통해 요청된 인증서의 도메인 소유권을 검증하여 인증서 발급을 완료한다.
  3. Elastic Load Balancing(ELB), Amazon CloudFront 등과 같은 AWS 서비스에서 새로 발급되거나 가져온 인증서를 사용한다.
  • ACM 통합 서비스를 위한 무료 퍼블릭 인증서 제공.

  • 관리형 인증서 갱신 기능.

  • 손쉬운 인증서 받기.

3-1. SSL 인증서

  • 공개 키와 개인 키라는 키 쌍을 갖고 있는 인증서. (자물쇠 표시)
    업로드중..

  • 인증서는 "주체(subject)"를 포함하는데 이는 인증서/웹사이트 소유자의 ID를 의미합니다.

  • 인증서를 얻기 위해 서버에서 인증서 서명 요청(CSR)을 생성하며, 이 과정에서 서버에 개인 키와 공개 키가 생성됩니다.

  • SSL 인증서 발급자(CA)에게 CSR 파일과 공개 키가 전송됩니다.




4. CloudFront

  • CDN(콘텐츠 전송 네트워크) 서비스를 지원하는 서비스.

  • 대기 시간 감소.

  • 보안 향상.

  • 비용 절감.

  • 사용자 정의 전송.

4-1. CDN

  • CDN은 데이터 사용량이 많은 앱의 웹 페이지 로드 속도를 높여 주는 상호 연결된 서버 네트워크입니다.

  • 정적 콘텐츠와 동적 콘텐츠가 있습니다.

  • 캐싱 / 동적 가속 / 엣지 로직 계산 기능이 존재합니다.




5. ELB

  • elastic load balancing의 약자로, 로드 밸런싱은 앱을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법입니다.

  • L4(네트워크 단계) or L7(앱 단계) 등과 같은 유형에 따라 로드 밸런서가 존재합니다.

  • 대상 그룹 : 어디에 연결되는 ELB인지.




6. VPC

  • Virtual Private Cloud의 약자로서, 사용자가 정의한 가상 네트워크로 AWS 리소스를 시작할 수 있습니다.

  • 가상 네트워크는 AWS의 확장 가능한 인프라를 사용한다는 이점과 함께 고객의 자체 데이터 센터에서 운영하는 기존 네트워크와 유사합니다.

  • VPC를 생성한 후 서브넷을 추가할 수 있습니다.

  • 서브넷 : VPC의 IP 주소 범위로, 단일 AZ(가용 영역)에 상주해야 합니다. 서브넷을 추가한 후, VPC에 AWS 리소스를 배포할 수 있습니다.

  • IP 주소 지정 : VPC와 서브넷에 IPv4 주소와 IPv6 주소를 할당할 수 있습니다. 또한, 퍼블릭 IPv4 및 IPv6의 GUA 주소를 AWS로 가져 오고, VPC의 리소스에 할당할 수 있습니다.

  • 라우팅 : 라우팅 테이블을 사용하여 서브넷 또는 게이트웨이의 네트워크 트래픽이 전달되는 위치를 결정합니다.

  • 게이트웨이 및 엔드포인트 : 게이트웨이는 VPC를 다른 네트워크에 연결합니다. VPC 엔드포인트를 사용하여 인터넷 게이트웨이 또는 NAT 장치를 사용하지 않고 AWS 서비스에 비공개로 연결합니다.

  • 피어링 연결 : VPC 간의 연결을 지원하며, 두 VPC 간 트래픽을 라우팅합니다.

  • 트래픽 미러링 : 네트워크 인터페이스에서 네트워크 트래픽을 복사하고 심층 패킷 검사를 위해 보안 및 모니터링 어플라이언스로 전송합니다.

  • Transit Gateway : 중앙 허브 역할을 하는 전송 게이트웨이로, VPC, VPN 및 AWS Direct Connect 연결 간에 트래픽을 라우팅합니다.

  • VPC 흐름 로그 : VPC의 네트워크 인터페이스로 들어오고 나가는 IP 트래픽에 대한 정보를 캡쳐합니다.

  • VPN 연결 : AWS VPN을 사용하여 온 프레미스 네트워크에 VPC를 연결합니다.

  1. IP 주소 범위 선택
  2. AZ 별 서브넷 설정
  3. 라우팅 경로 생성
  4. VPC 트래픽 설정

6-1. CIDR

  • Classless Inter-Domain Routing의 약자로, 클래스가 없는 도메인 간 라우팅하는 방법입니다.

  • 예) 0.0.0.0 /24 => 앞에서 부터 24bit는 네트워크 영역, 나머지 8bit는 host영역(할당 가능한 IP영역)

profile
천천히, 그리고 꾸준히.

0개의 댓글