개발자는 기록이 답이다

AWS 오토스케일링 (ECS) - Scale Up 본문

DevOps/AWS

AWS 오토스케일링 (ECS) - Scale Up

slow-walker 2024. 2. 28. 22:44
  • EC2에서는 스케일 아웃, 스케일 인 과는 달리 '스케일 업'은 서비스 중단이 필요합니다.
  • ECS에서 스케일 업은 롤링 배포를 함으로 무중단으로 배포 할 수 있습니다.

==> 커리큘럼대로 따라해보려 했지만, 기존에 구축해놓은 ECS 환경에서 이미 Auto Scale Up을 해주도록 설정해놓은 것 같아서 실제로 Scale Up을 해주는지는 스트레스 테스트를 해본 후 알 수 있을 것 같습니다


스케일 업(Scale up)

(1) 스케일 업은 작업정의에서 진행합니다.

  • 기존 작업 정의를 체크 한 상태에서 새 개정 생성 버튼을 클릭합니다.
  • 작업 크기를 작업 메모리는 0.5GB -> 1.GB 로 작업 CPU는 0.25CPU 에서 0.5 CPU로 변경 합니다.

-> 커리큘럼상 변경하는 수치보다 기존에 만들어놓은 수치가 더 커서 냅두기로 했습니다

(2) 서비스 구성에서 작업 정의의 최신 개정을 선택 합니다. (latest)

 

(3) 롤링 배포

  • 서비스 업데이트를 하면 롤링 배포에 의해 기존 버전은 그대로 둔 상태에서 새로운 버전이 배포되고 새로운 버전이 문제가 없는 경우 기존 버전이 사라집니다.
  • 새로운 버전에 문제가 생기면 서비스 구성에서 기존 버전으로 선택 후 업데이트 하면 됩니다.

롤링 배포(rolling deployment)는 소프트웨어나 애플리케이션을 업데이트 또는 배포할 때 사용되는 배포 방법 중 하나입니다. 이 방법은 새로운 버전의 소프트웨어를 서비스에 점진적으로 배포하여 서비스 중단을 최소화하고 사용자들에게 지속적인 서비스를 제공하는 것을 목표로 합니다.

롤링 배포의 주요 특징은 다음과 같습니다:

  1. 점진적 배포: 새로운 버전의 소프트웨어를 일부 서버에 먼저 배포하고, 이후 추가적인 서버로 확장해가며 배포를 진행합니다. 이렇게 하면 모든 서버를 한 번에 업데이트하는 대신 서비스가 지속적으로 제공될 수 있습니다.
  2. 서비스 중단 최소화: 롤링 배포는 각 단계에서 일부 서버만 새로운 버전으로 전환하므로, 전체 서비스의 중단을 최소화할 수 있습니다. 사용자들은 업데이트가 진행되는 동안에도 서비스를 계속 사용할 수 있습니다.
  3. 롤백 가능: 롤링 배포는 일부 서버에만 새로운 버전을 배포하기 때문에 문제가 발생하면 해당 서버를 롤백하고 이전 버전으로 복구할 수 있습니다. 이를 통해 문제 발생 시 빠르게 복구할 수 있습니다.
  4. 부하 분산: 롤링 배포를 통해 새로운 버전의 소프트웨어를 서비스 전체에 점진적으로 배포하므로 서비스에 대한 부하가 분산되어 처리량과 성능을 유지할 수 있습니다.