AWS整理4 INFRA

2023. 1. 17. 23:05study

INFRA

Deploying and Managing Infrastructure at Scale Section

 

What is CloudFormation(클라우드 형성이란)

AWS CloudFormation은 클라우드 환경에서 AWS 및 타사 애플리케이션 리소스를 모델링하고 프로비저닝할 수 있는 공통 언어를 제공합니다. 이를 통해 코드형 인프라를 배포할 수 있습니다.

AWS Infrastructure as a Code(코드형 인프라)를 배포

• 클라우드 형성은 AWS의 개요를 설명하는 선언적인 방법입니다. 모든 리소스에 대한 인프라(대부분 지원됨).
• 예를 들어, CloudFormation 템플릿에서 다음과 같이 말합니다:
 - 보안 그룹을 원합니다
 - 이 Security Group을 사용하는 두 개의 EC2 인스턴스를 원합니다
 - 나는 S3 버킷을 원한다
 - 이 시스템 앞에 로드 밸런서(ELB)를 설치합니다

AWS CloudFormation 템플릿은 JSON 또는 YAML 형식의 텍스트 파일입니다. 스택을 구성하는 AWS 리소스의 선언입니다.

스택을 구성하는 AWS 리소스의 선언

• 그런 다음 Cloud Formation은 올바른 순서로 고객을 위한 솔루션을 생성합니다
지정한 정확한 구성

 

AWS Cloud Formation의 이점

• 인프라 중점.(모든 인프라가 코드로 되어있음. )

  - 수동으로 생성되는 리소스가 없으므로 제어에 탁월함
  - 인프라 변경사항은 코드를 통해 검토됩니다
• 비용 절감 효과  
  - 스택 내의 각 리소스에는 식별자가 태그되어 있으므로 스택 비용을 쉽게 확인할 수 있습니다
  - Cloud Formation 템플릿을 사용하여 리소스 비용을 추정할 수 있습니다
  - 절감 전략: 개발에서는 오후 5시에 템플릿 삭제를 자동화하고 오전 8시에 다시 생성할 수 있습니다

(리소스를 만들고 지우는게 간편)

• 생산성
  - 클라우드에서 인프라를 신속하게 파괴하고 재구축할 수 있는 기능
  - 템플릿에 대한 다이어그램 자동 생성!
  - 선언적 프로그래밍(순서 및 오케스트레이션을 파악할 필요가 없음)
• 휠을 다시 발명하지 마십시오
  - 웹에서 기존 템플릿을 활용하십시오!
  - 설명서 활용
• (거의) 모든 AWS 리소스 지원:
  - 이 과정에서 볼 모든 내용이 지원됩니다
  - 지원되지 않는 리소스에 대해 "사용자 지정 리소스"를 사용할 수 있습니다

 

## 코드로 인프라를 가질 때, 다른 아키텍쳐를 다른 환경, 리전, 심지어 다른 AWS계정에서 반복 사용할 때 쓰임. 

CloudFormation Stack Designer

 • 예: 워드프레스
클라우드 형성 스택
• 우리는 모든 자원을 볼 수 있다

• 구성 요소 간의 관계를 확인할 수 있습니다

AWS Cloud Development Kit(CDK)

• 익숙한 언어를 사용하여 클라우드 인프라를 정의합니다.()
• JavaScript/TypeScript, Python, Java, .NET
• 코드가 클라우드 형성 템플릿(JSON/YAML)으로 "컴파일"됩니다
• 따라서 인프라와 애플리케이션 런타임 코드를 함께 배포할 수 있습니다.(동일한 함수를 가지기 때문)
- 람다 함수에 적합
- ECS/EKS의 도커 컨테이너에 적합

 

Typical architecture: Web App 3-tier

 

 

Developer problems on AWS

• 인프라 관리 x
• 코드 배포 o
• 모든 데이터베이스, 로드 밸런서 구성 등 x
• 확장에 대한 확인 o


• 대부분의 웹 애플리케이션은 동일한 아키텍처(ALB + ASG)를 사용합니다
• 개발자들이 원하는 것은 그들의 코드가 실행되는 것이다!
• 서로 다른 애플리케이션 및 환경에서 일관성 있게 지원

 

AWS Elastic Beanstalk Overview

• 동일한 방식으로 코드를 실행하기 위함.

• Elastic Beansstalk는 AWS에서 애플리케이션을 배포하는 개발자 중심의 뷰입니다
• 이전에 본 모든 구성 요소를 사용합니다:
EC2, ASG, ELB, RDS 등…
• 하지만 이 모든 것은 이해하기 쉬운 한 가지 관점에 있습니다!
• 구성을 완전히 제어할 수 있습니다


• Beanstalk = 서비스형 플랫폼(PaaS)
• 빈스톡은 무료이지만 기본 인스턴스에 대한 비용은 당신이 지불합니다

 

Elastic Beanstalk

Elastic Beanstalk는 PaaS, 서비스형 플랫폼입니다. 데이터와 애플리케이션만 관리합니다. AWS Elastic Beanstalk를 사용하면 개발자가 AWS 클라우드에서 애플리케이션을 더 빠르게 배포하고 관리할 수 있습니다.

서비스형 플랫폼(Platform as a Service; PaaS)

• 코드를 업로드 하면 코드에 맞는 방식으로 실행  

• 어플리케이션 중점.

관리 서비스 

  - 인스턴스 구성/OS는 Beanstalk에서 처리합니다
  - 구축(배포) 전략은 구성 가능하지만 Elastic Beansstalk에 의해 수행됩니다
  - 용량 프로비저닝
  - 로드 밸런싱 및 자동 확장
  - 애플리케이션 상태 모니터링 및 대응성(Beanstalk 대시보드에서 관리 )

• 애플리케이션 코드만 개발자의 책임입니다

 세 가지 아키텍처 모델:
 • 단일 인스턴스 구축: 개발에 적합
 • LB + ASG: 프로덕션 또는 사전 프로덕션 웹 애플리케이션에 적합합니다
 • ASG 전용: 운영 중인 웹이 아닌 앱(작업자 등)에 적합합니다

 

Elastic Beanstalk - Health Monitoring

– 상태 모니터링
 • 상태 에이전트가 측정 기준을 CloudWatch에 적용

 • EC2 인스턴스에 상태 에이전트가 있음. 

 •앱 상태 확인, 상태 이벤트 게시

 

AWS CodeDeploy

• 애플리케이션을 자동으로 배포하고 싶습니다
• EC2 인스턴스와 함께 작동
• On-Premises Server와 함께 작동
• 하이브리드 서비스(온프레미스에서도 사용가능, 온프레미스에서 AWS 클라우드로 이동가능)
• CodeDeploy 에이전트를 사용하여 서버/인스턴스를 사전에 프로비저닝하고 구성해야 함

• 단일 인터페이스에서 자동으로 버전1 에서 버전2로 업그레이드 가능.

AWS CodeCommit

• 애플리케이션 코드를 서버에 푸시하기 전에 어딘가에 저장해야 합니다
• 개발자들은 보통 Git 기술을 사용하여 저장소에 코드를 저장한다
• 유명한 공모는 깃허브, AWS의 경쟁 제품은 코드커밋이다
• 코드 커밋:

  - AWS의 버전 관리 리포지토리에 코드를 저장하는 방식.
  - Git 기반 저장소를 호스팅하는 소스 제어 서비스
  - 코드에 대해 다른 사용자와 쉽게 협업할 수 있습니다
  - 코드 변경사항은 자동으로 버전이 변경됩니다
• 이점:
 -  완벽하게 관리됨
 -  확장성 및 고가용성
 -  프라이빗, 보안, 모든 AWS 서비스와 통합

 

AWS CodeBuild

• 클라우드 내 코드 구축 서비스(이름은 분명함)
• 소스 코드를 컴파일하고 테스트를 실행하며 배포할 준비가 된 패키지를 생성합니다(예: CodeDeploy 사용)

AWS CodeBuild는 소스 코드를 컴파일하고 테스트를 실행하며 배포할 준비가 된 소프트웨어 패키지를 생성하는 완전 관리형 지속적 통합 서비스입니다. CodeBuild를 사용하면 자체 빌드 서버를 프로비저닝, 관리 및 확장할 필요가 없으며 서버리스입니다.

 

이점:
  - 완벽한 관리, 서버리스
  - 지속적인 확장성 및 고가용성
  - 보안
  - 종량제 요금제 , 제조 시간에 대해서만 지불

 

AWS CodePipeline

CodeCommit 와 CodeBuild

자동으로 프로덕션에 푸쉬하는 코드를 가진 다른 단계들이 조정하는 역할 


• 코드 => 빌드 => 테스트 => 프로비저닝 => 배포
• CICD(지속적 통합 및 지속적 전달) 기반

: 전체 개념은 개발자가 리포지토리로 코드를 푸쉬할 때마다 구축되며 테스트되어 서버에 배포.

 

이점:
• 완벽하게 관리되며, CodeCommit, CodeBuild, CodeDeploy, Elastic Beanstalk,
클라우드 포메이션, GitHub, 타사 서비스(GitHub…) 및 맞춤형 플러그인...
• 신속한 제공 및 신속한 업데이트

 

AWS CodeArtifact

AWS CodeArtifact는 규모에 관계없이 기관이 소프트웨어 개발 프로세스에 사용되는 소프트웨어 패키지를 안전하게 저장, 게시 및 공유할 수 있도록 하는 완전 관리형 아티팩트 리포지토리(코드 종속성이라고도 함) 서비스입니다.

• 소프트웨어 패키지는 빌드될 서로 종속되며(코드 종속성(dependencies)이라고도 함) 새 패키지가 생성됩니다
• 이러한 종속성을 저장하고 검색하는 것을 아티팩트 관리라고 합니다
• 기존에는 고유한 아티팩트 관리 시스템을 설정해야 함
• CodeArtifact는 안전하고 확장 가능하며 비용 효율적인 아티팩트입니다
소프트웨어 개발을 위한 관리
• Maven과 같은 일반적인 종속성 관리 도구와 함께 작동합니다,
그라들, npm, 실, 트윈, 핍, NuGet
• 그런 다음 개발자와 코드빌드는 CodeArtifact에서 직접 종속성을 검색할 수 있습니다

## artifact관리, 코드 종속성을 저장할 장소 필요.

AWS CodeStar

• 소프트웨어 개발 활동을 한 곳에서 쉽게 관리할 수 있는 통합 UI

대시보드 제공.
• CodeCommit, CodePipeline,
CodeBuild, CodeDeploy, EA

AWS Cloud9 을 이용해서 "in the cloud" 코드를 편집할 수 있습니다

 

AWS Cloud9

• AWS Cloud9은 코드 작성, 실행 및 디버깅을 위한 클라우드 IDE(Integrated Development Environment)입니다
• "클래식" IDE(IntelliJ, Visual Studio Code 등)는 사용하기 전에 컴퓨터에 다운로드됩니다
• 클라우드 IDE는 웹 브라우저 내에서 사용할 수 있습니다. 즉, 설정 없이 사무실, 집 또는 인터넷을 통해 어디에서나 프로젝트를 수행할 수 있습니다
• AWS Cloud9은 또한 실시간으로 코드 협업을 가능하게 합니다(페어 프로그래밍)

 

AWS Systems Manager(SSM)

AWS Systems Manager는 AWS의 인프라에 대한 가시성과 제어 기능을 제공합니다. 대규모 시스템 패치에 사용됩니다.

AWS의 EC2 인스턴스와 온-프레미스 데이터 센터에서 실행되는 서버에 대한 가시성, 제어 및 패치 기능을 제공하는 통합 사용자 인터페이스

• 규모에 맞게 EC2 및 온프레미스 시스템을 관리할 수 있도록 지원
• 다른 하이브리드 AWS 서비스
• 인프라 상태에 대한 운영 통찰력 확보
• 10개 이상의 제품에 액세스 가능.
• 가장 중요한 기능은 다음과 같습니다:
  - 향상된 규정 준수를 위한 패치 자동화
  - 전체 서버 제품군에서 명령 실행
  - SSM 매개 변수(Parameter) 저장소를 사용하여 매개 변수 기본  구성 저장
• Windows 및 Linux OS 모두에서 작동합니다

## 시험 키워드 EC2 instance fleet,  On-premises patch

 

How Systems Manager works

제어하는 시스템에 SSM 에이전트를 설치해야 합니다
• Amazon Linux AMI 및 일부 Ubuntu AMI에 기본적으로 설치됨
• SSM을 사용하여 인스턴스를 제어할 수 없는 경우 SSM 에이전트의 문제일 수 있습니다!
• SSM 에이전트 덕분에 명령을 실행하고, 패치를 적용하고, 서버를 구성할 수 있습니다

System Manager - SSM Session Manager

• EC2 및 사내 서버에서 보안 셸을 시작할 수 있습니다
• SSH 액세스, Bastion 호스트 또는 SSH 키 필요 없음
• 포트 22 필요 없음(보안 강화)

• Session Manager로
• Linux, macOS 및 Windows 지원
• 세션 로그 데이터를 S3 또는 CloudWatch 로그로 전송

 

AWS OpsWorks

•클라우드에 관리형 Chef 와 Puppet 을 제공.

• Chef & Puppet은 서버 구성을 자동으로 수행하거나 반복 작업을 수행할 수 있도록 지원합니다
• EC2 및 온프레미스 VM과 잘 작동합니다
• AWS OpsWorks = 관리 셰프 및 Puppet
• AWS SSM의 대안입니다
• 표준 AWS 리소스만 프로비저닝:
• EC2 인스턴스, 데이터베이스, 로드 밸런서, EBS 볼륨...
• 검사에서: 셰프 또는 Puppet 필요 => AWS OpsWorks

 

OpsWorks 스택에 ALB가 있는 ELB 게층, Application Server Layer, Database Layer, Cookbook Repository, App Repository

• ELB 계층으로 Applicaiton Server 계층이 생기고 Cookbook 리포지토리에서 애플리케이션 정보를 얻고 애플리케이션 리포지토리에서 애플리케이션을 얻음. 

 

Deployment - Summary

• 클라우드 형성: (AWS만 해당)
  - Infrastructure as Code, 거의 모든 AWS 리소스와 함께 작동
  - 지역 및 계정에 걸쳐 반복
• Beanstalk : (AWS만 해당)
• PaaS(Platform as a Service), 특정 프로그래밍 언어 또는 도커로 제한됨
  - 알려진 아키텍처(예: ALB + EC2 + RDS)와 일관되게 코드 배포
  - CodeDeploy(하이브리드): 모든 애플리케이션을 서버에 배포 및 업그레이드
• 시스템 매니저(하이브리드): 규모에 맞는 명령 패치, 구성 및 실행
• OpsWorks(하이브리드): AWS에서 관리되는 셰프 및 Puppet

 

Developer Service - Summary


• 코드 커밋: 개인 Git 저장소에 코드 저장(버전 제어)
• CodeBuild: AWS에서 빌드 및 테스트 코드
• CodeDeploy: 서버에 코드 배포
• 코드 파이프라인: 파이프라인 조정(코드에서 빌드, 배포)
• CodeArtifact: 소프트웨어 패키지/의존성을 AWS에 저장합니다
• CodeStar: 개발자가 CICD 및 코드를 수행할 수 있는 통합 뷰
• 클라우드 9: 클라우드 IDE(통합 개발 환경)와 협업
• AWS CDK: 프로그래밍 언어를 사용하여 클라우드 인프라 정의

AWS Cloud Development Kit, AWS CDK는 친숙한 프로그래밍 언어를 사용하여 클라우드 애플리케이션 리소스를 정의하는 오픈 소스 소프트웨어 개발 프레임워크입니다.

개발자는 AWS에 인프라를 배포하고 싶지만 Python만 알고 있습니다.

 

AWS CodePipeline은 빠르고 안정적인 애플리케이션 및 인프라 업데이트를 위해 릴리스 Pipeline을 자동화하는 데 도움이 되는 완전 관리형 지속적 전달 서비스입니다. CodeStar는 통합 사용자 인터페이스를 통해 AWS에서 애플리케이션을 빠르게 개발, 구축 및 배포하는 데 사용됩니다.

Global Infrastructure Section

Why make a global application?

• 지연 시간 단축
  - 지연 시간은 네트워크 패킷이 서버에 도달하는 데 걸리는 시간입니다
  - 아시아에서 온 소포가 미국에 도착하는 데 시간이 걸린다
  - 애플리케이션을 사용자에게 더 가깝게 배포하여 대기 시간을 줄이고 환경 개선
• 재해 복구(DR)
  - AWS 지역이 다운된 경우(지진, 폭풍, 전원 차단, 정치)…
  - 다른 지역으로 페일오버하여 애플리케이션을 계속 작동시킬 수 있습니다
  - 애플리케이션의 가용성을 높이려면 재해 복구 계획이 중요합니다
• 공격 보호: 분산된 글로벌 인프라는 공격하기가 더 어렵습니다

Global Applications in AWS

• 글로벌 DNS: 53번 도로
  - 사용자를 최단 대기 시간으로 가장 가까운 구축 환경으로 라우팅하는 데 적합
  - 재해 복구 전략에 적합
• 글로벌 콘텐츠 전송 네트워크(CDN): CloudFront
  - 애플리케이션의 일부를 AWS Edge Locations로 복제하여 대기 시간 단축
  - 일반 요청 캐쉬 – 사용자 환경 개선 및 대기 시간 단축
• S3 전송 가속
  - Amazon S3에 대한 글로벌 업로드 및 다운로드 가속화
• AWS Global Accelerator:
  - AWS 글로벌을 사용하여 글로벌 애플리케이션 가용성 및 성능 향상
네트워크

Global Application in AWS

글로벌 DNS: Route 53
• 사용자를 최단 대기 시간으로 가장 가까운 구축 환경으로 라우팅하는 데 적합
• 재해 복구 전략에 적합
글로벌 콘텐츠 전송 네트워크(CDN): CloudFront
• 애플리케이션의 일부를 AWS Edge Locations로 복제하여 대기 시간 단축
• 일반 요청 캐쉬 – 사용자 환경 개선 및 대기 시간 단축
S3 transfer Acceleration
• Amazon S3에 대한 글로벌 업로드 및 다운로드 가속화
AWS Global Accelerator:
• AWS 글로벌 네트워크를 사용하여 글로벌 애플리케이션 가용성 및 성능 향상

Amazon Route 53 Overview

• Route53은 관리 DNS(도메인 이름 시스템)입니다.

Amazon Route 53는 가용성과 확장성이 우수한 도메인 이름 시스템(DNS), 도메인 이름 등록, 상태 확인 웹 서비스입니다. 이 서비스는 최종 사용자를 인터넷 애플리케이션으로 라우팅할 수 있는 매우 안정적이고 비용 효율적인 방법을 개발자와 기업에 제공하기 위해 설계되었습니다.

(DNS란 전화번호책 같은것, 규칙과 레코드의 모음집.)
• DNS는 클라이언트가 URL을 통해 서버에 도달하는 방법을 이해하는 데 도움이 되는 규칙 및 레코드의 모음입니다.

•DNS 서버는 이름을 IP 주소로 변환하여 도메인 이름을 웹 브라우저에 입력할 때 최종 사용자를 어떤 서버에 연결할 것인지를 제어합니다. 이 요청을 “쿼리”라고 부릅니다.


 - www.google.com => 12.34.56.78 == A 레코드(IPv4)
 - www.google.com => 2001:0db8:85a3:0000:8a2e:0370:7334 == AAAA IPv6
 - search.google.com = > www.google.com == CNAME: 호스트 이름에서 호스트 이름으로
 - example.com => AWS 리소스 == 별칭(예: ELB, CloudFront, S3, RDS 등

 

1. 단순 라우팅정책(simple)

상태 확인을 하지않음. DNS검색하고 IP주소를 받음. 

2. 가중치 라우팅정책(Weighted)

트래픽을 여러 기관의 인스턴스에 분산합니다. 로드 밸런싱할 때 효과적, 상태확인함.  

트래픽을 지정한 비율로 여러 리소스로 라우팅하는 데 사용할 Route 53 라우팅 정책은 무엇일까요?

3. 지연 라우팅 정책(Latency)

지연 라우팅 정책은 여러 AWS 리전에 리소스가 있고 최고의 지연 시간을 제공하는 리전으로 트래픽을 라우팅하려는 경우에 사용됩니다.

4. 장애 조치 라우팅 정책(Failover)

장애 조치 라우팅 정책은 능동-수동 장애 조치를 구성하려는 경우에 사용됩니다. 장애 조치 라우팅을 사용하면 리소스가 정상일 때 리소스로 트래픽을 라우팅하거나 첫 번째 리소스가 비정상일 때 다른 리소스로 라우팅할 수 있습니다.

 

라우팅은 네트워크에서 경로를 선택하는 프로세스입니다. 컴퓨터 네트워크는 노드라고 하는 여러 시스템과 이러한 노드를 연결하는 경로 또는 링크로 구성됩니다. 상호 연결된 네트워크에서 두 노드 간의 통신은 여러 경로를 통해 이루어질 수 있습니다. 라우팅은 미리 정해진 규칙을 사용하여 최상의 경로를 선택하는 프로세스입니다.r

Amazon CloudFront

• 콘텐츠 전송 네트워크(CDN)
• 읽기 성능 향상, 에지에서 콘텐츠 캐시
• 사용자 환경 개선
• 216 전 세계 Point of Presence(Point of Presence)(엣지 위치)
• DDoS 보호(전 세계적으로 지원), Shield와의 통합, AWS 웹 애플리케이션 방화벽

CloudFront는 엣지 로케이션을 사용하여 콘텐츠를 캐시하므로 더 많은 콘텐츠를 뷰어와 더 가깝게 가져와 읽기 성능을 개선합니다.
Amazon CloudFront는 개발자 친화적인 환경 내에서 짧은 지연 시간, 높은 전송 속도로 전 세계 고객에게 데이터, 비디오, 애플리케이션 및 API를 안전하게 제공하는 빠른 Content Delivery Network, CDN(콘텐츠 전송 네트워크) 서비스입니다. AWS 인프라 및 서비스를 온-프레미스에서 실행하는 데 사용되지 않습니다.
 
WAF 및 실드
AWS WAF 웹 Access Control Lists, ACL(액세스 제어 목록)을 사용하여 Distributed Denial of Service, DDoS(분산 서비스 거부) 공격의 영향을 최소화할 수 있습니다. DDoS 공격에 대한 추가 보호를 위해 AWS는 AWS Shield Standard 및 AWS Shield Advanced도 제공합니다.

CloudFront - Origin

• S3 버킷
- 파일을 배포하고 가장자리에서 캐싱하기 위해
- CloudFront Origin Access Control(OAC)을 통한 보안 강화
- OAC가 OAI(Origin Access Identity)를 대체하고 있습니다
- CloudFront를 입력(S3에 파일 업로드)으로 사용할 수 있습니다

 

• 사용자 지정 출발지(HTTP)
- 애플리케이션 로드 밸런서
- EC2 인스턴스
- S3 웹 사이트(먼저 버킷을 정적 S3 웹 사이트로 활성화해야 함)
- 원하는 모든 HTTP 백엔드

CloudFront VS S3 Cross Region Replication

• CloudFront :
- 글로벌 에지 네트워크
- 파일이 TTL에 대해 캐시됨(하루)
- 어디서나 사용할 수 있어야 하는 정적 컨텐츠에 적합

 

• S3 Region Replication:
- 복제를 수행할 각 지역에 대해 설정해야 합니다
- 파일이 거의 실시간으로 업데이트됨
- 읽기 전용
- 일부 지역에서 짧은 대기 시간에 사용할 수 있어야 하는 동적 컨텐츠에 적합

S3 Transfer Acceleration

• 데이터를 대상 영역의 S3 버킷으로 전달할 AWS edge location으로 파일을 전송하여 전송 속도 향상

Amazon S3 Transfer Acceleration을 사용하면 클라이언트와 S3 버킷 간의 장거리 파일 전송을 빠르고 쉽고 안전하게 수행할 수 있습니다. Transfer Acceleration은 Amazon CloudFront의 전 세계적으로 분산된 엣지 로케이션을 활용합니다. 데이터가 엣지 로케이션에 도착하면 데이터는 최적화된 네트워크 경로를 통해 Amazon S3로 라우팅됩니다.

AWS Global  Acceleration

• AWS 글로벌 네트워크를 사용하여 글로벌 애플리케이션 가용성 및 성능 향상
• AWS 내부 네트워크를 활용하여 애플리케이션에 대한 경로 최적화(60% 향상)
• 2 Anycast IP가 애플리케이션에 대해 생성되고 트래픽이 Edge Locations를 통해 전송됩니다
• Edge 위치가 트래픽을 애플리케이션으로 전송합니다

AWS Global  Acceleration VS CloudFront

• 둘 다 AWS 글로벌 네트워크와 전 세계의 에지 위치를 사용합니다
• 두 서비스 모두 DDoS 보호를 위해 AWS Shield와 통합됩니다.

 

• CloudFront – 컨텐츠 제공 네트워크
- 캐시 가능한 콘텐츠(예: 이미지 및 비디오)의 성능 향상
- 엣지에서 콘텐츠가 제공됩니다

• 글로벌 액셀러레이터
- 캐시 없음. 가장자리에 있는 패킷을 하나 이상의 AWS 영역에서 실행 중인 응용 프로그램에 프록시합니다.
- TCP 또는 UDP를 통해 다양한 애플리케이션의 성능 향상
- 정적 IP 주소가 필요한 HTTP 사용 사례에 적합
- 결정론적이고 빠른 지역 페일오버가 필요한 HTTP 사용 사례에 적합

- 내부 aws 네트워크를 사용하여 요청을 전 세계로 빠르게 전달.

AWS Outposts

AWS Outposts는 기본 AWS 서비스, 인프라 및 운영 모델을 거의 모든 데이터 센터, 코로케이션 공간 또는 온-프레미스 시설에 제공합니다.

• 하이브리드 클라우드: 클라우드 인프라와 함께 사내 인프라를 유지하는 비즈니스
• 따라서 IT 시스템을 처리하는 두 가지 방법:

- AWS 클라우드용 하나(AWS 콘솔, CLI 및 AWS API 사용)
 - 하나는 on-premises insfrastructure를 위한 방법입니다

• AWS Outposts는 클라우드에서와 마찬가지로 자체 on-premiss application을 구축할 수 있도록 AWS 인프라, 서비스, API 및 툴을 제공하는 "server racks"입니다
• AWS는 다음과 같이 "아웃포스트 랙"을 설정하고 관리합니다
 -사내 인프라스트럭처를 구축하고 사내에서 AWS 서비스를 활용할 수 있습니다(on-premiss의 장점도 누릴 수 있음.)
• 데이터센터의 랙 물리적 보안에 대한 책임은 자신에게 있습니다

 

• 이점:
- 사내 시스템에 대한 짧은 지연 시간 액세스
- 로컬 데이터 처리
- 데이터 상주
- 사내에서 클라우드로 쉽게 마이그레이션
- 완벽하게 관리되는 서비스

AWS WaveLength

• WaveLength Zones는 5G 네트워크의 edge에 있는 통신사의 데이터 센터에 내장된 인프라 배포입니다
5G 네트워크의 edge에 AWS 서비스를 제공합니다
• 예: EC2, EBS, VPC...

+ Telecom carrier 5G network안에 WaveLength Zone이 있어서 외부의 모바일에서 접속하는 경우 빠르게 접속가능.

(application이 엣지에 배포되기 때문.)
• 5G 네트워크를 통해 애플리케이션의 지연시간을 단축
• 트래픽이 CSP(통신 서비스 공급자) 네트워크를 떠나지 않음.(실제로 aws에 도달하지는 않음.)
• 상위 AWS 영역에 대한 고대역폭 및 보안 연결
• 추가 요금 또는 서비스 계약 없음
• 활용 사례: 스마트 시티, ML 지원 진단, 연결된 차량, 대화형 라이브 비디오 스트림, AR/VR, 실시간 게임 등…

정리 : AWS Wavelength는 모바일 엣지 컴퓨팅 애플리케이션에 최적화된 AWS 인프라 제품입니다. Wavelength는 5G 네트워크의 고대역폭 및 초저 지연 시간을 AWS 컴퓨팅 및 스토리지 서비스와 결합하여 개발자가 완전히 새로운 차원의 애플리케이션을 혁신하고 구축할 수 있도록 합니다.

AWS Local Zones

지연 시간에 민감한 애플리케이션을 실행할 수 있도록 AWS 컴퓨팅, 스토리지, 데이터베이스 및 기타 선택된 AWS 서비스를 최종 사용자에게 더 가까이 배치
• 더 많은 위치로 VPC 확장 – "AWS region 확장"(1개 이상의 가용영역, 위치)
• EC2, RDS, ECS, EBS, ElastiCache, Direct Connect 등과 호환 가능…
• 예:
• AWS 지역: N. 버지니아 (us-east-1)
• AWS 로컬 영역: 보스턴, 시카고, 댈러스, 휴스턴, 마이애미, …

Global Application Architecture

• Single Region, Single AZ : No High Availability, No Global Latency, No Difficulty

• Sing Region, Multi AZ : High Availability, No Global Latency, Little bit Difficulty

• Active-Passive(Multi Region) : active(region)에서는 Read&Write 가능, passive(region)에서는 Read가능

: Global Read's Latency, No Global Writes Latency, Difficulty

• Active-Active(Multi Region)

:Global Read's Latency, Global Writes Latency, High Difficulty

Global Application in AWS - Summary

• Global DNS: Route 53
 - 사용자를 최단 대기 시간으로 가장 가까운 구축 환경으로 라우팅하는 데 적합
 - 재해 복구 전략에 적합
• Global Content Delivery Network (CDN): CloudFront
 - 애플리케이션의 일부를 AWS Edge Locations로 복제하여 대기 시간 단축
 - 일반 요청 캐쉬 – 사용자 환경 개선 및 대기 시간 단축
• S3 Transfer Acceleration
 - Amazon S3에 대한 글로벌 업로드 및 다운로드 가속화
• AWS Global Accelerator
 - AWS 글로벌을 사용하여 글로벌 애플리케이션 가용성 및 성능 향상

• AWS Outposts
 - 자체 데이터 센터에 전초기지 랙을 구축하여 AWS 서비스 확장
• AWS WaveLength
 - 5G 네트워크의 가장자리에 AWS 서비스를 제공합니다
 - 초저지연 애플리케이션
• AWS Local Zones
 - AWS 리소스(컴퓨팅, 데이터베이스, 스토리지 등)를 사용자에게 보다 가까이 제공
 - 대기 시간에 민감한 애플리케이션에 적합

 

AWS Storage Gateway는 거의 무제한의 클라우드 스토리지에 대한 온-프레미스 액세스를 제공하는 하이브리드 클라우드 스토리지 서비스입니다. 온-프레미스에서 AWS 인프라 및 서비스를 실행할 수 없습니다.

 

'study' 카테고리의 다른 글

AWS 整理6 ML,  (0) 2023.02.09
AWS整理 5 - Cloud、Security  (0) 2023.02.08
aws整理3 S3 DB Lambda  (0) 2022.12.14
aws 整理2  (0) 2022.11.30
Ruby on Rails 環境設定  (0) 2022.11.30