클라우드 방식을 통해 애플리케이션을 빠르게 인스턴스화

 

EC2 인스턴스를 빠르게 구성하고 쉽게 배포할 수 있어야 한다

Golden AMI

  • 애플리케이션과 OS 종속성등 모든 것을 사전에 생성하고 AMI를 만듬
  • 이후 AMI를 통해 실행

User data를 통한 Bootstraping

  • 매우 느리고 다른 EC2 인스턴스가 했던 일들을 반복함

Hybrid - Elastic Beanstalk

  • Golden AMI와 User 데이터 혼합

RDS

  • 스냅샷을 통해 복원되고 데이터베이스에 스키마, 데이터가 준비되어있다

EBS

  • 스냅샷을 통해 복구되고 디스크는 미리 포맷되어있고 데이터를 가지고 있다

 

Elastic Beanstalk

  • 개발자는 배포할 수 많은 애플리케이션이 있고 이를 매번 다시 설치하고 구성 작업을하는 것은 힘들다
  • 다시말해 인프라와 배포된 코드를 관리하거나 데이터와 로드밸런서 등을 계속해서 구성하고 싶지 않다
  • 또한 이 모든 것이 확장 가능해야한다

→ 이런 것들을 해결해주는게 Beanstalk이라고 한다

 

Elastic Beanstalk이란

  • AWS에서 애플리케이션을 배포하는 개발자 중심의 관점
  • 하나의 인터페이스로 모든 구성 요소를 재사용 하는 것
  • 배포 관리 서비스 → 인스턴스 구성, 로드 밸런싱 설정, 상태 모니터링 등등
  • 코드만 신경쓸 수 있게 해준다
  • 서비스 자체는 무료지만 ASG, ELB 자체를 사용하는 비용은 내야함

 

Elastic Beanstalk 구성

  • Application: Elastic Beanstalk의 구성 요소 (환경, 버전, 구성)
  • Application Version: 배포하기 위해 관리되는 애플리케이션 코드의 버전
  • Environment: 특정 애플리케이션 버전을 실행하는 리소스의 모음
    • 환경 내에서는 한번에 하나의 애플리케이션 버전만 존재
    • 이외엔 업데이트를 해야함
    • 웹 서버 환경티어와 개발자 환경 티어가 있다
    • dev, test, prod 어떤 환경이든 다수의 환경을 만들 수 있다

 

Web Server Tier vs Worker Tier

Worker 환경에서는 SQS 큐를 사용하며 SQS 메시지가 많을 수록 EC2 인스턴스도 많아진다.

어떤 것인지는 이해했는데 왜 Worker 환경에서 SQS를 사용하는지 잘 모르겠다

완전관리형 메시지 대기열 - Amazon Simple Queue Service - Amazon Web Services

 

완전관리형 메시지 대기열 - Amazon Simple Queue Service - Amazon Web Services

Amazon Simple Queue Service(SQS)를 사용하면 메시지 손실을 우려하거나 다른 서비스를 제공할 필요 없이 소프트웨어 구성 요소 간에 어떤 볼륨의 메시지든 전송, 저장 및 수신할 수 있습니다. 확대하려

aws.amazon.com

 

 

Beanstalk 실습

SAA과정에서는 단순하게 살펴보고 Developer로 들어가면 더 자세하게 알아 볼 수 있다

Beanstalk를 보면 현재까지 배웠던 모든 구성이 다 있고 설정을 일일히 구성할 필요가 없다

Beanstalk은 내부에서 CloudFormation을 활용해 애플리케이션을 배포한다

'TIL > AWS' 카테고리의 다른 글

고급 Amazon S3  (0) 2023.05.28
Amazon S3  (0) 2023.05.28
AWS Route 53  (0) 2023.05.25
Route 53을 이해하기 위한 DNS의 개념  (0) 2023.05.25
Amazon ElastiCache  (0) 2023.05.24
복사했습니다!