CLF-C02 Global Infra and Reliability
· 6 min read
AWS Global Infra
- 리전 : AWS리소스가 있는 지리적 영역 (서울, 도쿄, 상파울루, 파리 등등)
- 각 리전에는 컴퓨팅, 스토 리지, 기타 모든 서비스를 구비
- 고속. 광섬유 네트워크를 통해 다른 리전에 연결
- 리전 선택 기준
- 데이터 거버넌스 및 법적 요구 사항 준수 : 데이터가 특정 리전에만 존재하고 벗어나면 안되는 경우, 해당 리전을 선택해야 함
- 고객과의 근접성 : 고객 기반과 근접성은 중요한 요인
- 리전 내에서 사용 가능한 서비스 : 리전에 따라 AWS에서 지원하는 기능이 다름. 가용 가능한 기능이 GA된 리전을 선택
- 요금. : 리전별로 다른 운영 가격이 적용됨.
가용 영역 (Availability Zone, AZ)
- 리전 내의 데이터 센터 또는 데이터 센터 그룹입니다.
- AWS 글로벌 인프라의 완전히 격리된 파티션
- 가용 영역은 서로 100km 내에 있지만, 서로 의미 있는 거리만큼 떨어져 있음.
- 재해가 발생할 경우 여러 가용 영역이 영향을 받을 가능성을 줄일 만큼 떨어져 있음.
Edge Location
-
Amazon CloudFront
- AWS에서 제공하는 CDN 서비스
- 더 빠른 컨텐츠 전송을 위해 고객과 가까운 위치에 컨텐츠 사본을 캐시하는데 사용
- 리전과. 구분되어, 리전에 있는 컨텐츠를 전 세계 엣지 로케이션 모음에 푸시
- 이로써 통신과 컨텐츠 전달의 속도를 높일 수 있음
-
AWS Route53
- AWS에서 제공하는 DNS 서비스
- 상당히 짧은 지연 시간으로 고객의 요청을 올바른 웹 위치로 보내는데 사용
-
AWS Outposts
- 기업이 자체 건물 내에서 AWS 서비스를 사용하고 싶을때 활용
- AWS가 소유하고 운영하며, AWS의 모든 기능을 사용하지만, 사용자의 건물에 격리
AWS 리소스를 프로비저닝 하는 방법
-
AWS 리소스 관리
-
기본적으로 모든 AWS 리소스는 API를 통해 리소스를 구성하고, 관리할 수 있음.
-
아래와 같은 도구를 사용하여 API에 전송하여, 리소스 생성, 관리
- AWS Management Console
- AWS 명령줄 인터페이스
- AWS 소프트웨어 개발키트
- AWS CloudFormation
-
AWS Management Console
- Amazone 서비스 엑세스 및 관리를 위한 브라우저 기반 인터페이스
- 서비스를 처음 시작시 유용하게 사용 가능
- 테스트 환경을 구축하거나, AWS 청구서를 보거나, 모니터링을 확인하거나 기술과 관련이 없는 기타 리소스를 사용해서 작업을 할때 유용
AWS Command Line Interface (CLI)
- CLI를 사용하며 머신의 터미널에서 API호출을 할 수 있음
- CLI를 사용해서 명령을 스크립트로 만들고 반복할 수 있음.
- 스크립트 예약을 하거나 다른 프로세스에서 트리거링하는 방식으로 자동화 가능
AWS 소프트웨어 개발 키트 (SDK)
- 다양한 프로그래밍 언어로 AWS리소스와 상호적으로 작용
- 지원하는 프로그래밍 언어에는 C++, Java, .Net등이 있음
AWS Elastic Beanstalk
-
Amazon EC2를 기반으로 하는 환경을 프로비저닝 할 수 있게 지원하는 서비스
-
지원 리소스
- EC2 용량 조정
- Elastic Load Balancer
- EC2. AutoScaling
- Application 모니터링
AWS Cloud Formation
- 코드형 인프라 도구로 CloudFormation 템플릿이라고 하는 JSON 혹은 YAML 텍스트 기반 문서를 사용
- 이 문서를 기반으로 다양한 AWS 리소스를 정의
- Cloud Formation 엔진이 템플릿을 분석해서 API를 호출하여 필요한 리소스를 구축
- EC2 기반 솔루션에만 제한되지 않고, 스토리지, 데이터베이스 분석, 기계 학습 등의 다양한 리소스를 지원
- 여러 계정이나, 여러 리전에서 동시에 실행한다면 여러 계정 또는 리전에서 동일한 환경이 생성