Rlog

AutoScailing Group 만들어보기 본문

AWS

AutoScailing Group 만들어보기

dev_roach 2022. 5. 18. 23:51
728x90

Auto Scailing Group 이란?

Auto Scailing Group 은 AWS 에서 제공하는 다중 서버 서비스이다. Auto Scailing Group 에 묶인 인스턴스들은 같은 성능과 같은 코드를 가지고 있다. 따라서 우리는 ASG 를 통해 우리가 원하는 서버의 인스턴스를 다수로 늘리거나 줄이는 것을 관리할 수 있다.

실습

일단 ASG(AutoScailing Group) 을 만들기 위해 하나의 인스턴스가 필요한데, 이건 각자 알아서 만들어 오길 바란다. Spring 으로 뛰어와도 좋고 어떤 방식으로던 Server 를 뛰어오면 된다.

이미지 생성

일단 준비해온 인스턴스를 이미지(Amazone Machine Image?) 로 만들어야 한다. 이미지로 만들어야 하는 이유는 우리가 ASG 로 운용할때 똑같은 인스턴스를 뛰우기 위해서는 기존 이미지 파일을 이용해서 새로운 인스턴스를 생성해야 하기 때문이다.

이름은 자신이 알아볼수 있게 짓고 용량을 확인한뒤에 Create Image 를 눌러주면 된다.

이미지 생성확인

잘 생성됬다면 아래와 같이 AMI Menu 에서 자신이 만든 이미지를 확인 가능하다.

Launch Template 생성

이제 우리는 생성한 이미지로 Launch Template 을 생성해야 한다. 

Launch Template 은 간단하게 인스턴스를 실행하는데 어떤 템플릿을 기반으로 실행할래? 라고 생각하면 쉽다.

밑줄친 메뉴로 들어가서 Create Launch Template (런치탬플릿 생성) 버튼을 클릭해주자.

위 사진처럼 자신이 만든 키페어와, 아까 만들어둔 AMI 를 잘 선택하자.

보안 그룹 설정까지 잘 가져왔고, 인스턴스와 동일환경으로 만들었다면 Create Launch Template 을 누르자

Launch Template 생성 확인

잘 만들었다면 Launch Template 메뉴에서 확인 가능할 것이다.

Auto Scailing Group 생성

이제 우리가 만든 Launch Template 을 이용해 Auto Scailing Group 을 생성해보자.

메뉴로 잘 들어왔다면 Create Auto Scailing Group 버튼을 누르자.

자신이 만들었던 템플릿을 잘 고르고 Next 를 누르자.

로드밸런서는 나중에 만들꺼니까 일단은 No load Balancer 옵션으로 만들어주자.

일단 늘어나는 효과를 보기위해 Maximum 을 2로 두었다. 최대로 늘어날 수 있는 Instance 가 2개라는 뜻이다.

여기서 정책을 통해 CPU 가 50% 이상일때 한대더 늘린다던가와 같은 설정이 가능하다. 나는 일단 80%로 설정해주었다.

ASG 생성확인

잘만들었다면 아래와 같이 목록에서 확인 가능하다.

만들어진 인스턴스 확인

이제 Instance 메뉴로가서 자신이 ASG 에 의해 생성된 인스턴스를 확인해보자.

이제 이 Service 의 Health Check 까지 끝나면 Shell 에 접속해보자.

Stress 툴 다운로드

아래 명령어를 입력하자. Amazone Linux 기준이다.

sudo amazon-linux-extras install epel

sudo yum install stress -y

Stress 테스트

stress --cpu 4 --timeout 600

위와 같은 사진이 나오며 5분에서 ~ 10분 정도 대기하면 인스턴스가 증가해 있을 것이다.

후기

이렇게 AWS 서비스를 하나씩 사용해보는건 꼭 필요한것 같다. 회사에는 이미 완성되어 있어 어떻게 만드는지 모르는 경우도 많아서 실습으로 해보면 좋은것 같다. 다음에는 지금 한 설정 그래도 ELB (로드밸런서) 를 장착해볼 것이다.