[TIL 27일자] 데브코스 데이터엔지니어링

·2023년 5월 16일
0

데브코스

목록 보기
26/55
post-thumbnail

📚 오늘 공부한 내용

1. Route 53

1) Route 53이란?

  • Amazon Route 53은 가용성과 확장성이 뛰어난 DNS 웹 서비스.
  • 세 가지 주요 기능을 가진다.
    • 도메인 등록
    • DNS 라우팅
    • 상태 확인
  • public host zoneprivate host zone이 존재한다.
  • DNS(네임 서버) + 모니터링 + L4 (Layer 4) + GSLB (Global Server Load Balancing)

2) Route 53 도메인 설정하기

✔ AWS 내부에서 도메인을 설정하는 경우

  • Route 53에 접속해 사용 가능한 도메인을 검색한다. 해당 위치에 도메인으로 사용하고 싶은 키워드만 입력하면 다음과 같이 사용할 수 있는 도메인 주소가 뜨게 된다.
  • 내가 검색한 키워드가 들어간 사용 가능한 도메인과 그 가겨이 뜨게 된다. 검색창 옆에 있는 필터에 따라 가격에 제한을 두고 조회할 수도 있다.

✔ AWS 외부에서 도메인을 설정하는 경우

  • Route 53에 접속해 호스팅 영역을 선택하고 호스팅 영역을 생성한다.
  • 호스팅 영역 생성 시 도메인 이름에 외부에서 할당받은 도메인 이름을 입력해 준다.
  • 이후 호스팅 영역으로 들어가면 생성된 도메인이 뜨게 되는데 그때 외부 업체에서 DNS를 설정하는 곳에 값/트래픽 라우터 대상의 값을 입력해 주면 된다.

2. RDS

  • 클라우드에서 실행하는 격리된 데이터베이스 환경이다.
  • 관계형 데이터베이스 (RDBMS)를 지원하는 서비스이다.
  • 별도의 DB 설치를 하지 않아도 된다. DB에 서버 실행이 가능하며 액세스도 가능하다.
  • serverless는 아니다.
  • 직접 시스템 로그인은 불가능하다.
  • RDS와 관련해서는 추가적으로 AWS 공식 문서 보면서 공부한 부분을 정리한 내용과 데이터베이스 생성 실습 내용을 포스팅 하였다.
    📚 [AWS RDS] RDS 개념 및 기능
    💻 [AWS RDS] 데이터베이스 생성하기

3. Document DB

  • NoSQL의 종류 중 하나로 Mongo DB 기반의 문서 전용(Document) 데이터베이스이다.
  • Amazon DocumentDB에서는 스토리지 및 컴퓨팅이 분리돼서 각각 독립적으로 조정이 가능하다.
  • 데이터 크기와 관계없이 지연 시간이 짧은 읽기 전용 복제본을 몇 분 내에 최대 15 개까지 추가해 읽기 용량을 초당 수백만 개의 요청으로 늘릴 수 있다.
  • Amazon DocumentDB99.99% 가용성을 위해 설계되었으며 6 개의 데이터 복사본을 3 개의 AWS AZ에 나눠서 복제한다.
  • JSON 데이터를 이용한다.
  • 유연한 인덱싱를 제공한다.

4. Mongo DB

  • Document 지향 데이터베이스이다.
  • 데이터 중복이 발생할 수 있다.
  • 접근성가시성이 좋다.
  • 스키마 설계는 어렵지만 유연해서 애플리케이션의 요구 사항에 맞게 데이터를 수용할 수 있다.
  • 분산에 대한 자체적 솔루션을 지원해 스케일 아웃(Scale-Out)이 쉽다.
  • 확장 시 애플리케이션을 변경하지 않아도 된다.
  • RDBMSRows의 개념이 Documents가 되며 Tables의 개념이 Collections이 된다.

5. Dynamo DB

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

📌 Document DB와 Dynamo DB

1) 공통점

  • NoSQL DataBase
  • AWS Database Migration Service를 통해 데이터 마이그레이션을 위한 이식성을 제공
  • AWS Key Management Service를 통해 저장 데이터 암호화와 보안 기능을 제공
  • 관리 API 호출CloudFormation에 대한 CloudTrailVPC Flow Logs감사 기능 제공


    2) 차이점
  • Dynamo DB모든 리전에서 사용 가능하지만 Document DB리전 제한이 있다.
  • Dynamo DBKey-Values 기반이고 Document DB문서(Documents) 기반이다.
  • Dynamo DB하이퍼 스케일을 제공한다.
  • Document DB최대 64TB까지 쉬운 확장이 가능하다.
  • Dynamo DBIAM을 통해 데이터베이스에 대한 액세스를 제어하고, Document DB는 데이터베이스에서 사용자가 생성하고 관리하며 자격증명이 DB에 직접 저장되어 AWS가 관여하지 않는다.
  • Dynamo DB서버리스 서비스사용량에 따라 요금이 책정되고 비용을 예상하기 어렵다. 또한 스토리지를 25GB까지 무료로 제공하지만 Document DB무료로 제공되는 스토리지가 없고 노드 또는 EC2 인스턴스 당 비용을 지불하므로 일부 인스턴스만 사용한다 해도 전체 요금을 지불해야 한다.
  • Dynamo DB사용자가 백업을 진행하고, 데이터에서 지원하는 대로 필요할 때 데이터 복구가 가능하다. Document DB데이터베이스 자체에서 일일 백업을 관리하여 필요할 때 복구되며 모든 유형의 백업이 지원된다.

6. Cerification Manager

💻 [AWS] AWS Cerification Manager 및 인증서 신규 발급 방법
따로 포스팅해 두었다.

SSL 인증서

  • 공개 키개인 키라는 키 쌍을 가진다.
  • 키들이 함께 작용해서 암호화된 연결을 수립한다.
  • 주체라는 것을 포함하고 이는 인증서/웹사이트 소유자 ID이다.
  • 인증서를 얻으려면 서버에서 인증서 서명 요청 (CSR)을 생성해야 한다. 이 과정을 통해 서버에서 공개 키와 개인 키를 생성한다.
  • SSL 인증서 발급자에게 보내는 CSR 데이터 파일에는 공개 키가 포함된다.

7. CloudFront

  • Amazon CloudFront뛰어난 성능, 보안 및 개발자 편의를 위해 구축된 콘텐츠 전송 네트워크(CDN) 서비스이다.
  • 처음부터 CDN을 구성하기보다는 도메인 생성, 인증서 발급 후 진행한다.

📌 콘텐츠 전송 네트워크(CDN)

  • 지리적인 제약 없이 전 세계 사용자에게 빠르고 안전하게 콘텐츠를 전송할 수 있는 콘텐츠 전송 기술
  • 데이터 사용량이 많은 애플리케이션의 웹 페이지 로드 속도를 높이는 상호 연결된 서버 네트워크
  • 정적 콘텐츠동적 콘텐츠
  • 캐싱, 동적 가속, 엣지 로직을 계산

7. Elastic Load Balancer (ELB)

  • 로드 밸런싱은 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법이다.
  • 대상 그룹에 대상을 등록해야 한다.
  • 로드 밸런서대상 그룹에 대해 지정한 프로토콜과 포트 번호를 사용해 등록된 대상으로 요청을 전송하거나 대상 그룹에 각 대상을 등록할 때 포트를 재정의할 수 있다.
  • 로드 밸런서는 서버에 가해지는 부하(=로드)를 분산(=밸런싱)해 주는 장치 또는 기술을 말한다. L4 로드밸런서L7 로드 밸런서가 존재한다.
  • 💻 [AWS] Elastic Load Balancer (ELB) 로드 밸런서 생성
    따로 포스팅해 두었다.

8. VPC

작성을 하다 보니 내용이 많이 길어져 따로 포스팅 해 두었다.
💻 [AWS] VPC 개념, 기능 및 생성


🔎 어려웠던 내용 & 새로 알게 된 내용

1. GSLB (Global Server Load Balancing)란?

  • 특정 지역에 집중되는 트래픽을 분산하는 DNS 기반의 로드 밸런싱이다.
  • 만약 글로벌 특정 지역에 트래픽이 갑자기 증가하는 경우 DNS를 통해 인접 지역으로 네트워크 트래픽을 분산한다.
  • 재해가 발생할 경우 GSLB는 서버의 상태를 모니터링하기 때문에 실패한 서버의 IP는 응답에서 제외하고 유저는 서비스를 계속 사용할 수 있게 한다.

2. L4 (Layer 4)란?

  • 다음과 같이 OSI 7 Layers 모델을 기준으로 봤을 때 Layer 4전송 계층(Trasport Layer)을 의미한다.
  • TCP/UDP 프로토콜을 이용해 포트를 열어 응용 프로그램들이 전송을 할 수 있게 해 주는 통신 활성화를 위한 계층이다.
  • 만약에 데이터가 오면 4 계층에서는 이 데이터를 하나로 합쳐 5 계층에 던져 주게 된다. 즉, 패킷을 생성하고 전송한다.
  • 물리적 계층에 속한다.
  • End-to-End 통신을 다루는 최하위 계층으로 End-to-End의 사용자들이 신뢰성 있는 데이터를 주고받을 수 있도록 해 준다.
  • 주로 오류 검출 및 복구와 흐름 제어, 중복 검사 등을 시행한다.

3. CIDR (Classless Inter-Domain Routing, 사이더)

  • 클래스가 없는 도메인간 라우팅 기법
  • 빨간색 네모 부분이 CIDR 부분이 된다.
  • 어느 대역까지 네트워크 영역으로 나누고 나머지 호스트 영역을 IP로 사용하게 할 건지에 대한 표기법이다.
  • IPv4 주소가 4 개의 옥텟(Octet)으로 이루어져 있고, 그렇기 때문에 CIDR는 0 ~ 32까지 총 32 비트까지 사용 가능하다.

✍ 회고

- 이번 AWS 강의는 듣다 모르는 용어들이 나와 공식 문서를 보거나 검색해서 익히는 경우가 있었다. 그리고 실습 위주의 강의로 실습을 따라 해 보면서 익힐 수 있어서 좋았고, AWS로 어떤 프로젝트를 할 때 전체적인 플로우를 이해하는 느낌이다.

- 개인적으로 AWS 같은 경우 내용이 방대한데 일주일 안에 모든 걸 배우려니까 조금 촉박한 감이 없지 않아 있어서 자격증 준비를 하면서 따로 공부하면 좋을 것 같다는 생각에 오랜만에 자격증 일정을 다시 보았다.

profile
송의 개발 LOG

0개의 댓글