[데이터 엔지니어링 데브코스] TIL 26일차 - AWS 클라우드(2)

박단이·2023년 11월 22일
0

데브코스 TIL

목록 보기
26/56

오늘 배운 것🤓

AWS 기본 용어

  1. 클라우드 서비스
    • 가상화를 기반으로 물리적이 아닌 논리적으로 서버를 구성하여 제공하는 서비스
  2. Snapshot(스냅샷)
    • 사진 찍듯이 시스템을 포착해 보관하는 기술
    • 그 순간의 리소스나 프로세스를 저장하여 해당 시점으로 서버를 구동할 수 있도록 한다.
    • 장애, 에러와 같은 상황에 스냅샷을 사용하여 복원 가능
    • 스냅샷을 저장할 때 별도의 스토리지 공간을 차지하지 않고 서버를 구동시키는 순간부터 공간을 갖는다.
  3. 데이터 센터
    • 수많은 서버를 모아 네트워크로 연결해 놓은 시설
  4. Region
    • 데이터 센터가 위치한 지역
    • Region마다 제공하는 서비스가 다르기 때문에 인스턴스를 생성한 Region이 아닌 다른 Region에서는 확인할 수 없다.
  5. Availability zone(가용 영역; AZ)
    • 하나의 Region안에 2개 이상의 AZ로 구성되어 있다.

Router 53

  • 도메인을 관리해주는 서비스
  • 가용성과 확장성이 뛰어난 DNS(Domain Name Service) 웹 서비스
  • 도메인 등록, DNS 라우팅, 상태 확인을 조합하여 실행할 수 있다.
  • Public host zone과 Private host zone을 갖는다.
  • DNS(네임 서버) + 모니터링 + L4 + GSLB : 이 4가지를 모두 가추고 있는 서비스

RDS

  • AWS에서 제공하는 RDBMS 환경
  • 직접 시스템 로그인이 되지 않지만, 스냅샷이 가능하다.
  • RDS는 serverless가 아니다.
  • 자세한 내용은 따로 블로그에 작성 예정

NoSQL

1. DocumentDB

  • MongoDB API와 연계된 Document 기반의 NoSQL DB
  • 3개의 AWS AZ에 복제하여 가용성을 높히고 안정성을 높혔다.
  • 주로 JSON 데이터를 다루고 유연한 인덱싱을 갖는다.

MongoDB

  • 오픈 소스 Document 기반의 NoSQL DB
  • 접근성과 가시성이 좋다.
  • schema가 복잡하지만, 유연하기 때문에 요구사항에 맞게 데이터를 수용할 수 있다.
  • Scale-out이 쉽고 확장 시 애플리케이션을 변경할 필요가 없다.

2. DynamoDB

  • key-value 기반의 NoSQL DB
  • Auto-Scaling을 지원한다.
  • Schema를 따로 생성할 필요가 없다.
  • 대용량의 원천 데이터를 lambda 서비스를 이용하여 넣는 경우가 일반적이다.
  • PartitionKey와 SortKey를 사용하여 데이터를 정렬하고 찾는다.

Certification Manager(ACM)

  • SSL/TLS 인증서를 발급하고 관리하는 서비스
  • 인증서를 AWS에서 구매할 수도 있고 다른 곳에서 산 인증서를 등록할 수도 있다.
  • ACM 통합 서비스를 위한 무료 퍼블릭 인증서를 받을 수 있다.
  • 관리형 인증서를 갱신할 수 있다.
  • 적용 순서
    1. 사용할 SSL/TLS 인증서를 AWS로 요청하거나 가져온다.
    2. 도메인 소유권을 DNS 또는 이메일을 통해 검증한다.
    3. Elastic Load Balancing(ELB), Amazon CloudFront 등 다양한 AWS 서비스에서 새로 발급되거나 가져온 인증서를 사용한다.

CloudFront

  • CDN(Content Delivery Network) 서비스
  • 콘텐츠 전송 네트워크로써 데이터 사용량이 많은 앱의 웹 페이지 로드 속도를 높이는 상호연결된 서버 Network
  • 클라우드에서 front를 붙힐 때 필수적으로 사용하는 서비스이며, 서버와 백엔드를 모두 구성한 후에 붙히는 것이 일반적
  • 대기 시간이 감소되고 보안을 향상시키며 비용이 절감되는 장점을 가지고 있다.

ELB(Elastic Load Balancing)

  • 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법
  • Load Balancer : 서버에 가해지는 부하를 분산해주는 장치 또는 기술을 말한다.
  • 대상 그룹 : 어디에 연결되는 ELB인지 알 수 있도록 대상 그룹에 속해야 한다.
  • 클라우드가 아니더라도 기존 인프라에서 로드 밸런스라는 스위치를 이용하여 장애를 대응하고 가용성을 높힌다.
  • 즉, 필수!

VPC(Virtual Private Cloud)

  • 사용자가 정의한 가상의 네트워크
  • 데이터 센터에서 운영하는 기존 네트워크와 유사하다.
  • 하나의 서버에는 여러개의 VPC가 있을 수 있고 모든 VPC는 "VPC Peering Connection"을 통해 연결되어 있다. 각 VPC은 "Subnet"을 가지고 있다.
  • VPC를 통해 IP주소를 지정하고 라우팅을 진행한다.
  • 서브넷에는 프라이빗 서브넷과 퍼블릭 서브넷이 있는데, 퍼블릭 서브넷은 "Internet Gateway"가 연결되어 있다. 프라이빗 서브넷을 외부와 연결하기 위해서는 "Nat Gateway"를 사용한다.

느낀 점😊

지금 수업은 여러가지 AWS 서비스를 어떻게 설치하는지에 대해서만 알려주고 있어서 이 서비스가 어디에서 사용되는지 알기가 쉽지않다. 이것저것 직접 활용해보고 싶다.

profile
데이터 엔지니어를 꿈꾸는 주니어 입니다!

0개의 댓글