AWS Cloud Practitioner Essentials 강의 요약 2

Konseo·2023년 11월 2일
0

AWS

목록 보기
2/2
post-thumbnail

AWS skill builder 강의(AWS Cloud Practitioner Essentials)를 듣고 정리한 글입니다 📚

module3: 글로벌 인프라 및 신뢰성

🌍 커피숍을 다시 생각해보자. 퍼레이드 또는 자연재해 등으로 인해 기존에 자주 가던 커피숍을 가기 힘들어지는 상황이 생긴다면, 우리는 조금 떨어진 다른 커피숍에 방문하여 커피를 구할 수 있어야한다. 이는 AWS 글로벌 인프라가 작동하는 방식과 비슷하다.

AWS 리전

클라우드 서비스를 사용하더라도 AWS 소유의 물리적인 데이터 센터는 어딘가에 존재하기 마련이다. 이 때 데이터센터는 재난 발생과 같은 예외적인 상황에 대비해야 할 것이다. AWS는 대규모 그룹의 자체 데이터 센터를 구축해 재난 발생에 대비하며 우리는 이것을 리전이라고 부른다.

따라서 서비스, 데이터 및 애플리케이션에 적합한 리전을 결정할 때 다음 네 가지 비즈니스 요소를 고려해야한다.

  1. 데이터 거버넌스 및 법적 요구 사항 준수
    • 회사와 위치에 따라 특정 영역에서 데이터를 실행해야 할 수도 있다.
    • ex. 회사의 모든 데이터를 영국 내에 보관해야 하는 경우 런던 리전을 선택해야할 것이다.
  2. 고객과의 근접성
    • 고객과 가까운 리전을 선택하면 고객에게 콘텐츠를 더 빠르게 제공하는 데 도움이 된다.
    • ex. 회사 본사는 워싱턴 DC에 있고 고객 중 다수가 싱가포르에 거주하고 있다면 인프라를 본사와 가까운 버지니아 북부 리전에서 실행할 지, 고객과 가까운 싱가포르 리전에서 실행할 지를 고려해야 한다.
  3. 리전 내에서 사용 가능한 서비스
    • 경우에 따라 고객에게 제공하려는 기능이 가장 가까운 리전에 없을 수도 있다. 이 경우에는 사용하려는 서비스를 제공하는 리전 중 하나에서 플랫폼을 실행해야할 것이다.
  4. 요금
    • 미국과 브라질 모두에서 애플리케이션을 실행할 것을 고려한다면 비용적 측면에서 오레곤 리전에 워크로드를 실행하는 것이 더 좋을 것이다. 브라질의 세제 때문에 상파울루 리전에서의 운용비용이 매우 비싸기 때문이다.

가용 영역

AWS는 전 세계 곳곳에 수많은 데이터 센터를 보유하고 있으며, 각 리전은 여러 데이터 센터로 구성된다.

Availability Zone (AZ) - 단일 데이터 센터 또는 데이터 센터의 그룹

정리하면,
각 AWS 리전은 특정 지역 내에 서로 격리되어 있고, 다시 각각의 리전은 물리적으로 분리된 여러 가용 영역으로 구성된다.

이 때 가용 영역끼리도 인접한 곳에 구축하지는 않는다. 자연재해 같은 큰 사건이 발생하면 가용 영역 내에 모든 요소들과의 연결이 끊어질 수 있기 때문이다.

☝🏻 여기서 한 가지 더 생각해 볼 점이 있다. 우리는 이전에 인스턴스 규모 조정을 위해 인스턴스를 여러 개 실행할 수 있었다. 그런데 만약 인스턴스들이 모두 단일 가용 영역에만 실행된다면 대규모 재난이 일어났을 때 모든 인스턴스에 장애가 발생할 것이다. 따라서 대규모 재난을 고려한다면 짧은 지연 시간을 고려해서 응답시간이 허락하는 한 최대한 멀리 떨어뜨려 놓는 게 좋다

가용 영역 간의 통신은 🌟 광케이블을 이용하므로 가용 영역을 수십 킬로미터씩 떨어뜨려도 가용 영역 간에 지연을 한 자리 밀리초 수준으로 유지할 수 있다. 이렇게 분산해서 배치하면 대규모 재난이 닥치더라도 애플리케이션은 정상적으로 작동할 수 있다.

📊 AWS가 권장하는 모범 사례
한 리전에서 두 개 이상의 가용 영역을 사용하는 것이다. 이는 서로 다른 두 AZ에 인프라를 중복해서 배포한다는 뜻이다.

⛳️ '리전 수준에서 실행된다'라는 말의 의미
사용자가 따로 신경 쓰지 않아도 여러 AZ에서 서비스가 동시에 실행된다는 뜻이다. 앞에서 설명한 ELB 서비스를 예로 들면, 이는 실제 리전 수준의 서비스이기 때문에 특정 가용 영역에서 실행 중인 EC2 인스턴스와 통신할 수 있다.

엣지 로케이션

고객이 전세계 곳곳에 있다면 어떤 리전을 선택해야할까.
만약 데이터에 액세스해야 하는 고객이 뭄바이에 있지만 데이터는 서울 리전에서 호스팅된다면, 뭄바이 기반 고객 전원에게 데이터 액세스 요청을 서울로 보내라고 하는 대신 뭄바이에 복사본을 로컬로 배치하거나 캐싱하면 된다. 여기서 CDN이라는 개념이 등장한다.

CDN - 웹 페이지의 로드 속도를 높이기 위해 상호 연결된 서버 네트워크 기술

AWS에서는 CDN을 Amazon CloudFront 라고 부른다.

Amazon CloudFront - 데이터, 동영상, 애플리케이션, API를 전 세계 고객에게 짧은 지연 시간으로 빠르게 전달해 주는 서비스 (=CDN)

Amazon CloudFront는 전 세계에 있는 엣지 로케이션을 이용해 사용자가 어떤 위치에 있는 통신 속도를 높인다. 이 때 엣지 로케이션은 리전과 구분되며, 따라서 리전에 있는 콘텐츠를 전 세계 엣지 로케이션 모음에 푸시할 수 있다.

엣지 로케이션 - Amazon Cloudfront가 더 빠른 콘텐츠 전송을 위해 고객과 가까운 위치에 콘텐츠 사본을 캐시하는 데 사용하는 사이트

↔️ 반대되는 개념으로 AWS Outposts가 있다. 이는 기업 내 자체 건물에 머물러야만 하는 경우에 활용될 수 있으며, 온프레미스 데이터 센터로 확장할 수 있다.


1. 회사의 데이터가 브라질에 저장되어 있고 중국에 거주하는 고객들이 있다고 가정한다면 중국 고객에게 콘텐츠를 제공하기 위해 중국 리전으로 데이터를 옮기는 것이 아니라,
2. 중국 내 고객과 가까운 엣지 로케이션에 사본을 로컬로 캐시할 수 있다.
3. 따라서 👥 고객이 파일을 요청하면 Amazon CloudFront는 엣지 로케이션의 캐시에서 해당 파일을 검색하여 고객에게 전송한다.

AWS 리소스를 프로비저닝하는 방법

우리는 AWS 서비스와 서로 어떻게 상호작용할까? 크게 3가지 방식이 있다.

  1. AWS MANAGEMENT CONSOLE
    • Amazon 서비스 엑세스 및 관리를 위한 웹 기반 인터페이스
    • 최근에 사용한 서비스에 빠르게 엑세스할 수 있고, 서비스 검색에 용이하다
    • 콘솔 모바일 애플리케이션을 사용해 리소스 모니러팅, 경보 보기, 결제 정보 확인 등의 작업을 수행할 수 있다
    • 여러 ID가 동시에 AWS 콘솔 모바일 앱에 로그인할 수 있다
  2. AWS COMMAND LINE INTERFACE (AWS CLI)
    • API 요청을 수행할 때 시간을 절약하기 위해 사용한다.
    • 하나의 도구를 통해 명령줄에서 직접 여러 AWS 서비스를 제어할 수 있다.
    • 스크립트를 통해 서비스 및 애플리케이션이 수행하는 작업을 자동화할 수 있다.
      • ex. 인스턴스를 켜고 특정 Auto Scaling 그룹에 연결하기
  3. 소프트웨어 개발 키트(SDK)
    • SDK를 사용하면 프로그래밍 언어 또는 플랫폼용으로 설계된 API를 통해 AWS 서비스를 보다 간편하게 사용할 수 있다.

AWS 서비스 상호작용을 돕는 AWS 서비스를 사용할 수도 있다 (AWS 서비스를 위한 AWS서비스..)

  1. AWS Elastic Beanstalk
    • 사용자가 코드 및 구성 설정을 제공하면 Elastic Beanstalk이 다음 작업을 수행하는 데 필요한 리소스를 배포한다.
      • 용량 조정
      • 로드 밸런싱
      • 자동 조정
      • 애플리케이션 상태 모니터링
  2. AWS CloudFormation
    • 인프라를 코드로 취급할 수 있다. 즉, AWS Management Console을 사용하여 개별적으로 리소스를 프로비저닝하는 대신 코드 줄을 작성하여 환경을 구축할 수 있다.

module4: 네트워킹

Amazon Virtual Private Cloud (VPC)를 사용하면 사용자가 정의한 가상 네트워크에서 AWS 리소스를 실행할 수 있는 논리적으로 격리된 AWS 클라우드 섹션을 프로비저닝할 수 있다.

이러한 리소스는 인터넷에 접속이 가능한 퍼블릭 리소스일 수 있고, 접속할 수 없는 프라이빗 리소스일 수도 있다. 일반적으로 프라이빗 리소스의 경우는 DB나 백엔드 서비스에 사용된다.

이렇게 퍼블릭 또는 프라이빗 리소스 그룹을 서브넷이라고 하며 서브넷은 VPC에 있는 IP 주소의 범위이다. 퍼블릭 서브넷의 경우 인터넷과 대화할 수 있는데, 이는 ☕️ 커피숍 직원 중 계산원 유형에 해당한다. (손님과 직접 맞닿아 응대할 수 있는 권한이 있음)

profile
둔한 붓이 총명함을 이긴다

0개의 댓글