상세 컨텐츠

본문 제목

[GCP] Auto Scaling

IT/GCP

by o_zeew 2022. 6. 29. 14:24

본문

Auto Scaling 

1. VPC 네트워크 생성

db, 프록시, web 서브넷 생성

 

2. 방화벽 규칙 생성

  - 방화벽은 네트워크별로 생성

실습에 필요한 서비스들의 방화벽 오픈

 

3.Cloud SQL 인스턴스 생성

DB 설정 요약
Cloud SQL 인스턴스의 비공개 IP 주소 확인

 

4. 데이터베이스 생성

  - 생성하는 데이터베이스명 변경 가능 → 설정파일에서 동일한 이름으로 변경해줘야함

wordpress 연동을 위해 wordpress 데이터베이스 생성

 

5. 이미지화 할 VM 인스턴스 생성

  - /var/www/html/로 옮긴 파일들을 apache 일반계정으로 설정 

  - 새로 생성한 Cloud SQL 인스턴스의 내부 IP 설정

  - 로드밸런서 health check에서 php 파일을 읽지 못하기 때문에 wordpress 연동 실습 할 때 index.html 파일이 존재해야함

  - 이미지 생성 시 인스턴스가 잠시 꺼지는 상황이 발생시 httpd 서비스가 중단되는 것을 방지하기 위해 systemctl enable

     httpd 필수

인스턴스 자동화 스크립트
인스턴스 생성 완료
wordpress 연동 확인

 

6. 이미지 생성

wordpress 연동한 인스턴스로 이미지 생성

 

7. 템플릿 생성

  - 위의 스크립트에서 selinux의 설정을 비활성화하는 설정을 진행했지만 잠시 인스턴스가 꺼지는 경우에 다시 활성화가 

    되기 때문에 템플릿을 생성할 때 자동화 입력으로 selinux 비활성화 진행

setenforce 0 명령어로 selinux 비활성화
이미지를 사용해 템플릿 생성 완료

 

8. 인스턴스 그룹 생성

  - 오토스케일링은 인스턴스 그룹 생성할 때 stateless 방식으로 생성 (연결 저장을 할 필요가 없기 때문)

필수 서브네트워크가 리전과 맞지 않으면 선택 불가
아래의 리전을 먼저 변경한 후 선택 가능
인스턴스 그룹 생성 완료
인스턴스 그룹을 생성 시 자동으로 인스턴스 생성됨
인스턴스 그룹생성으로 인해 생성된 인스턴스도 wordpress 연동 확인 가능

 

9. 부하분산기 생성

/index.html 로 health check
부하 분산기 생성 완료
부하 분산기의 외부 IP 확인
부하 분산기의 wordpress 연동 확인

 

10. 설정 적용 확인

  - stress를 이용해 cpu에 부하를 줄 때 Auto Scaling에 의해 인스턴스가 자동 생성되는지 확인

  - 인스턴스 그룹 생성에 의해 생성된 인스턴스에서 진행

stress 설치
stress 명령어를 사용해 cpu에 부하 주기
cpu의 사용량 증가 확인

 

  - 최대 백엔드 사용률을 80%으로 설정했기 때문에 최대 8개 생성

cpu에 부하가 걸리니 잠자고 있던 인스턴스들 생성 확인 가능
새로 생성된 인스턴스도 wordpress 연동 확인 가능

 

관련글 더보기