[AWS] 인스턴스 Auto Scale 구성

sunnyjjang·2024년 10월 8일

AWS

목록 보기
16/21
post-thumbnail

LAB. Server AutoScale with ALB

워크플로우
1. vpc 생성
2. 보안 그룹 생성
3. 인스턴스 생성
4. AMI 생성
5. Launch Template 생성
6. 대상 그룹 생성
7. 로드밸런서 생성
8. AutoScaling Group 생성
9. 인스턴스 및 웹서버 확인

1. VPC 생성

  • name : hw-lab-vpc
    • IPv4 CIDR : 10.0.0.0/16
    • az : a, c
    • public 2, private 2 : 10.0.0.0/24 ~ 10.0.3.0/24
    • NAT 게이트웨이 : 1개의 AZ에서
    • VPC 엔드포인트 : 없음
    • DNS 호스트이름& 확인 : 활성화

2. 보안 그룹 생성

  • ALB-SG
    • 80 - anywhere
  • WEB-SG
    • 80 - ALB-SG

3. 인스턴스 생성

  • WEB2ami
    • key : lab-key
    • vpc : hw-lab-vpc
    • subnet : public-2a (10.0.0.0/24)
    • 퍼블릭 IP 자동 할당 : 활성화
    • SG
      • name : ami-sg
      • inbound : 80 - anywhere
    • 사용자 데이터
      #!/bin/bash -ex
      # Install http php, mysql
      dnf update
      dnf install httpd php php-mysqlnd php-fpm php-json mariadb105 -y
      #Web Service start
      systemctl enable --now httpd
      #Download web data
      cd /var/www/html/
      wget https://aws-largeobjects.s3.ap-northeast-2.amazonaws.com/AWS-AcademyACF/lab7-app-php7.zip
      unzip lab7-app-php7.zip -d /var/www/html/
      chown apache:root /var/www/html/rds.conf.php

4. AMI 생성

  • EC2 > 작업 > 이미지 및 템플릿 > 이미지 생성
  • name : web-ami
    • 인스턴스 재부팅 : 비활성
    • 인스턴스 볼륨 : 8G

5. Launch Template 생성

  • name : Web-ASG-LT
    • Auto Scaling 지침 : 체크
  • AMI 선택
    • 내 AMI : web-ami
  • 인스턴스 유형 : t2.micro
  • key : lab-key
  • 서브넷 : 시작 템플릿에 포함하지 않음 ← Auto Scale에서 구성할 예정
  • 보안그룹 : WEB-SG

6. 대상 그룹 생성

  • name : web-alb-tg
  • vpc : hw-lab-vpc
  • 대상 등록 : 없음

7. 로드밸런서 생성

  • name : web-alb
  • 체계 : 인터넷 경계 (외부 접속용)
  • 로드 밸런서 IP 주소 유형 : IPv4
  • 네트워크 매핑
    • vpc : hw-lab-vpc
    • 매핑
      • az (ALB가 있을 위치 지정-퍼블릭 서브넷에 있어야 외부 연결 가능) : public
  • 보안 그룹 : ALB-SG
  • 리스너 및 라우팅
    • 프로토콜 : HTTP
    • 포트 : 80
    • 대상 그룹 : web-alb-tg

8. AutoScaling Group 생성

  • 시작 템플릿 선택
    • AutoScaling 그룹 이름: Web-ASG
    • 시작 템플릿 : Web-ASG-LT
  • 인스턴스 시작 옵션 선택
    • VPC : hw-lab-vpc
    • 가용 영역 및 서브넷
      • subnet-private1-ap-northeast-2a - 10.0.2.0/24
      • subnet-private2-ap-northeast-2c - 10.0.3.0/24
  • 고급 옵션 구성
    • 로드 밸런싱 - 기존 로드 밸런서에 연결
    • 로드 밸런서 대상 그룹에서 선택 : web-alb-tg
    • 상태 확인 유예 기간 : 60초
  • 그룹 크기 및 크기 조정 구성
    • 그룹 크기 - 원하는 용량 : 2
    • 크기 조정
      • 원하는 최소 용량 : 2
      • 원하는 최대 용량 : 4
    • Auto Scaling - 대상 추적 크기 조정 정책
      • 지표 유형 : 평균 CPU 사용율
      • 대상 값 : 50
    • 인스턴스 유지 관리 정책 : 정책 없음
  • 알림 추가 - 선택 사항
  • 태그 추가

9. 인스턴스 및 웹서버 확인

  • ALB 동작 확인

  • Auto Scailing 동작 확인

profile
지금 이 순간이 다시 넘겨볼 수 있는 한 페이지가 될 수 있게

0개의 댓글