AWS #9 EC2의 생명주기, 오토스케일링, 실습

최동민·2022년 12월 19일
0

EC2의 생명주기란?

AMI로부터 실행이 되고 종료될 때까지 EC2가 거치는 과정을 말한다.

pending - 준비과정 (가상머신, AMI, EBS)
running - 실제 EC2를 사용할 수 있는 상태

  • 최대 절전모드란?
    메모리에 있는 내용을 하드디스크에 저장해놓는 것.
    종료되어도 하드디스크에 있는 내용을 메모리에 다시 불러와주면
    시작할 때 다시 메모리에 있는 내용으로 프로그램이 이어질 수 있게 해준다.

활용 - 퇴근 후에 인스턴스를 정지해놓는 방식

Autoscaling

수직적 스케일링 (Vertical Scale) - Scale Up 향상.

인스턴스의 성능을 올리는 것.
단점 - 성능과 비용이 비례하지 않는다. - 효율이 떨어짐.
성능은 16배, 비용이 30배 늘었다. 비용이 훨씬 더 비싸지게 됨

수평적 스케일링 (Horizontal Scale) - Scale Out 규모를 늘리는 것. 확장

인스턴스 각각의 규모를 늘린다.
성능 16배, 비용도 16배 늘었다
수직적 스케일링보다 좀 더 저렴.
클라우드 환경에서는 저렴한 것을 많이 사용하고 줄였다 늘였다 하는 유연한 것을 더 중점으로 두기에 Scale Out를 항상 염두해 두는게 바람직함.

  • 수평적 스케일링을 위해 나온 AWS Auto Scaling

  • 목표

  • 구성

  • 동작 방법

예를 들어 EC2 하나가 하드웨어가 터지거나, 소프트웨어적인 오류로 날아갔다.

오토스케일링이 이를 감지한다.

시작 구성에 맞는 인스턴스를 생성하여 오토스케일링에 넣어준다.

  • 오토스케일링을 직접 구성해보자

시작 템플릿 클릭
오토스케일링 그룹에서 어떤 인스턴스를 어떻게 올릴 것인가를 정의하는 템플릿.

간단하게 만들어준 후 Auto Scaling 그룹 생성 클릭

인스턴스 2개가 생성되었다.
만약 이 중에 하나를 임의로 삭제한다면?

이제 오토스케일링 쪽에서 검사를 시작한다.
사용자가 인스턴스 2개를 원해서 그렇게 해주었는데 벌어진 상황에 인식을 하기 시작한 것이다.

오토 스케일링 활동 상태를 살펴보면 다시 재생성하였음을 알 수 있다.

다시 하나가 더 생성되었다.

1개로 용량을 수정해보자.

이에 맞추기 위해 오토스케일링은 다시 노력을 한다.

다시 하나만 남아있다.

이처럼 어플리케이션에 장애가 발생하지 않도록 개발자가 노력하지 않아도 오토스케일링이 유지보수를 도와주는 것.

자동화로 서비스를 운영할 수 있는 것.

인스턴스가 많아지면 각각에 대하여 트래픽들을 조절해주는 서비스가 필요한데 그게 바로 ELB이다. ELB는 다음 시간에 알아보자.

profile
코드를 두드리면 문이 열린다

0개의 댓글