# 오토스케일링 그룹 생성

자 그럼 이제 오토스케일링 그룹을 생성하도록 하겠습니다.

EC2 서비스 좌측 제일 하단 Auto Scaling Groups 메뉴를 클릭 하시고 우측 “Auto Scaling 그룹 생성” 버튼을 클릭합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/rFEEr6G7Yfu1x1y7Xt82/image.png" alt=""><figcaption></figcaption></figure>

AutoScaling 그룹 이름을 user<mark style="background-color:red;">\*\*</mark>-asg로 입력합니다.

“시작 구성”으로 오토스케일링을 설정 하기 위해  “시작 구성으로 전환”을 클릭합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/bcXyoUl1IubmgRboB72z/image.png" alt=""><figcaption></figcaption></figure>

앞서 생성한 시작 구성 user<mark style="background-color:red;">\*\*</mark>-launch-config 를 선택합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/yD1wuAMVUYdMaiV5UXq1/image.png" alt=""><figcaption></figcaption></figure>

“다음” 버튼을 클릭합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/hOKKU4EM4NgYZ5e1pNIm/image.png" alt=""><figcaption></figcaption></figure>

네트워크 설정에서 생성한 VPC를 선택하고, 가용영역 및 서브넷에서 미리 생성한 **서브넷 2개를 모두 선택합니다.**

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/TMpoEekFFomcQKIsGdfS/image.png" alt=""><figcaption></figcaption></figure>

오토스케일링을 위해서는 가용영역이 2개 이상 필요하기 때문에 설정이 제대로 되었는지 확인하고 다음 단계로 넘어갑니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/ByDfKRK5I6pdrF0gJW3y/image.png" alt=""><figcaption></figcaption></figure>

부하 분산을 위한 로드 밸런싱 옵션에서 “새 로드 밸런서에 연결”을 선택합니다.

로드 밸런서는 Application Load Balancer를 선택하고 로 밸런서 체계는 “Internet-facing”을 선택합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/dL8G2lhigkaaduFoOhDH/image.png" alt=""><figcaption></figcaption></figure>

로드 밸런서에서 부하(Traffic)를 전달할 대상 그룹(Target Group)을 생성합니다.

웹서비스를 하기 위해 포트는 80으로 선택하고, 기본 라우팅(전달 대상)에서는 대상그룹 생성을 선택합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/TpaqDRWwzM8CIgDVfMIG/image.png" alt=""><figcaption></figcaption></figure>

대상 그룹 이름을 user<mark style="background-color:red;">**\*\***</mark>-asg-lg-tg 로 입력합니다.

태그 추가를 통해 키는 Name 값은 user<mark style="background-color:red;">**\*\***</mark>-asg-lb-tg를 입력합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/PkYGX7ZDKZ3WKt6xpv1x/image.png" alt=""><figcaption></figcaption></figure>

상태 확인과 추가 설정은 기본값을 선택하고 다음 단계로 넘어갑니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/RcUjkjtBQekv50hS6VmS/image.png" alt=""><figcaption></figcaption></figure>

EC2 인스턴스 최소 용량과 , 최대 용량 그리고 초기 시작 용량을 선택합니다.

본 실습에서는 각 2대, 1대, 3대 로 설정합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/eZ43XfUj3e9AWz41raDX/image.png" alt=""><figcaption></figcaption></figure>

오토스케일링을 위한 정책을 설정합니다. 언제 인스턴스를 늘리고 줄일지, 그 기준을 본 예제에서는 CPU 부하 50%로 설정합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/pNm2TbzzwZ5fp5LuRFGy/image.png" alt=""><figcaption></figcaption></figure>

인스턴스 축소 보호는 기본 설정으로 하고 다음으로 넘어갑니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/vrJnKSZ9Ir3x8BBcMy5x/image.png" alt=""><figcaption></figcaption></figure>

오토스케일링 인스턴스 시작 종료 상황을 알고 싶으면 SNS 서비스 알림 전송을 설정합니다(옵션)

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/PjPVcPENfvUyNWrGkcDe/image.png" alt=""><figcaption></figcaption></figure>

주제 생성을 클릭하고, 알림 받을 대상과 수신자 정보(이메일)를 설정하고 다음 단계로 넘어갑니다(옵션)

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/fFG8jheDGT92CYqAVGl7/image.png" alt=""><figcaption></figcaption></figure>

아래와 같이 태그 설정을 하고 다음 단계로 넘어갑니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/h1iiH3i9H9nDdXfUXzTu/image.png" alt=""><figcaption></figcaption></figure>

1-6 단계 설정을 확인 후 “Auto Scaling 그룹 생성” 버튼을 클릭합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/zZC3PLXXjpULRgN2H0af/image.png" alt=""><figcaption></figcaption></figure>

오토스케일링 그룹이 생성되면, 오토스케일링 그룹을 선택한 후 “인스턴스 관리” 탭에서

인스턴스 상태를 확인합니다. (초기에는 2대로 시작하다가 시간이 지나면 화면처럼 부하가 없어서 1대가 됩니다)

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/3oc4qe2a0RjgSZfc0Q1E/image.png" alt=""><figcaption></figcaption></figure>

로드 밸런서의 DNS 이름을 복사해서 웹브라우저에서 확인합니다.

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/qtAWsF98l8CLL4oJdyK9/image.png" alt=""><figcaption></figcaption></figure>

웹브라우저에서 S3 버킷의 이미지가 정상적으로 보여지면 성공입니다. 수고하셨습니다!

<figure><img src="https://content.gitbook.com/content/Lm5MEbm5ywxmTDayOpx8/blobs/P43LlfZdKwTTeOkADOCB/image.png" alt=""><figcaption></figcaption></figure>
