Cloud Infra Architecture (AWS)/AWS Build

Auto Scaling 생성

seongduck 2024. 6. 5. 18:32

Auto Scalin을 위한 사용자 데이터d

#!/bin/bash
echo 'ec2-user:원하는비밀번호' | chpasswd
sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
cd /etc/cloud
sudo sed -i 's/ssh_pwauth:   false/ssh_pwauth:   true/' cloud.cfg
systemctl restart sshd

#stress 발생기
sudo yum install stress

1) sudo yum -y install httpd
2) sudo touch /var/www/html/index.html
# 접속 후
3) sudo vi /var/www/html/index.html

"""
<html>
	<h1> 111 </h1>
</html>
"""

4) sudo service httpd start

#스트레스 발생기
stress --cpu 1 --timeout 600

 

1) EC2 생성 후 이미지 생성 (시작템플릿 생성)

1) 생성한 인스턴스 클릭 
2) "작업" - "이미지 및 템플릿 " - "인스턴스에서 템플릿 생성"
3) 완료

 

2) Auto Scaling 그룹 생성

1) Auto Scaling 그룹 생성 클릭
2) 만들어놓은 시작 템플릿 선택
3) vpc 및 가용영역 2개 생성
4) "기존 로드 밸런서에 연결" - ELB 상태 확인 켜기 - CloudWatch 그룹 지표 수집 활성화
5) 원하는 용량 : 0 / 최소 용량 : 0 /최대 용량 : 3 / 대상 추적 크기 조정 정책 / 축소 보호 비활성화
6) 생성완료

1) 완료된 Auto Scaling 그룹 클릭
2) "편집"
3) "고급 구성"에서 "종료 정책"을 "최신 인스턴스"로 설정

 

3) 생성한 ec2를 Auto Scaling에 넣기

1) "인스턴스 종료 방지" 활성화
2) 생성한 EC2 클릭 후 - "인스턴스 설정" - "Auto Scaling 그룹에 연결"
3) 방금 만들어놓은 Auto Scaling 그룹 선택 후 적용

 

4) 기존 EC2 삭제 방지하기

1) 생성된 Auto Scaling 그룹 선택
2) "인스턴스 관리" - "인스턴스"에서 선택 - "작업" - "축소 보호 설정"

1) "작업" - "편집"
2) "원하는 최소 용량" 1로 설정

 

5) 과부하 테스트

1) 서버 접속
2) stress --cpu 1 --timeout 40
3) 대기

 

최대치까지 생성되는 것을 확인