Posts 오토스케일링과 로드밸런서와 연결된 웹서버 구축하기(2)
Post
Cancel

오토스케일링과 로드밸런서와 연결된 웹서버 구축하기(2)

AWS 정리

오토스케일링과 로드밸런서와 연결된 웹서버 구축하기(1)

이전 포스팅에 이어서 시작하겠습니다.

시작템플릿을 활용한 오토스케일링 그룹 생성

오토스케일링이란 ? aws 사용자가 설정한 서버 증설 조건에 부합하면 자동으로 인스턴스(서버)를 생성해주는 서비스입니다.

  1. ec2 서비스에서 왼쪽 메뉴를 보면 오토스케일링 그룹을 클릭 한 뒤 “Auto Scaling 그룹 생성” 버튼을 눌러줍니다

  2. CLOUD_EXERCISE 라는 이름을 주고, 시작 템플릿은 앞서 생성한 cloud-exercise-template을 클릭합니다

  3. 설정 구성에서는 네트워크 부분의 서브넷만 설정해줍니다. 저는 가용영역 ap-northeast-2a 와 ap-northeast-2c 안의 서브넷을 선택 해주었습니다. 이 서브넷에 자동으로 ec2 인스턴스가 생성됩니다.

  4. 고급옵션구성은 건너뜁니다.

  5. 그룹 크기 및 조정 정책에서는 원하는 용량 , 최소 용량, 최대 용량을 각각 2, 2, 3으로 설정해줍니다. 이 부분이 인스턴스 개수를 설정하는 부분입니다. 그 다음, 조정 정책에서 “대상 추적 조정 정책”에서 “지표 유형”의 평균 CPU 사용률 대상 값을 80으로 설정해줍니다. 이는, 만약 2개의 인스턴스가 가동되는 있는 상황에서 1개의 인스턴스 사용률이 80%가 넘어가면 새로운 인스턴스를 생성합니다.

  6. 태그는 통과하셔도 무난하지만, 키는 Name, 값은 auto-group 으로 주시면 생성된 ec2 인스턴스를 관리할때 편리합니다.

  7. 그룹을 생성하면 앞서 정의한 원하는 용량에 따라 자동으로 인스턴스가 바로 업데이트됩니다.

    오토스케일링 그룹을 사용하지 않을 때는 반드시 원하는 용량, 최소 용량, 최대 용량을 0, 0, 0으로 설정해주세요

  8. 인스턴스 탭을 클릭하여 보시면 오토스케일링에 의해 자동으로 인스턴스가 생성된 것을 볼 수 있습니다.

로드밸런서 생성하기

마지막으로, 이제 이부분을 구성할 차례입니다.

  1. 로드밸런서 탭에서 “Load Balancer”을 클릭합니다.

  2. 일반적인 웹 어플리케이션만 사용할 것이므로 HTTP, HTTPS를 클릭합니다.

  3. cloud-elastic-lb라는 이름과 가용 영역을 저희가 앞서 오토스케일링 그룹에서 설정했던 대로 맞추어 줍니다.

  4. 보안그룹에서 VPC 기본 보안 그룹과 HTTP, SSH 를 허용해줍니다.

  5. 라우팅 구성에서는 로드밸런싱이 될 대상그룹의 이름과 상태 검사를 위한 경로를 입력해줍니다. 아래와 같이 elastic-target-group과 경로는 /health로 주었습니다. /health는 1부 포스팅의 app.js에서 URL 경로를 설정해두었기에 사용가능합니다.

  6. 대상 그룹에 오토스케일링으로 생성된 인스턴스들을 추가해줍니다. 인스턴스 체크 후 등록된 항목에 추가 버튼을 눌러주세요

  7. 로드밸런서가 생성되었습니다. 이제 이것을 오토스케일링 그룹과 연결 해 줄 것입니다.

로드밸런서와 오토스케일링 그룹 연결하기

  1. 다시 오토스케일링 그룹 탭으로 이동해서 세부 정보의 아래로 스크롤 합니다.

  2. 로드밸런싱 영역의 편집 버튼을 눌러줍니다.

  3. 로드밸런서에서 연결한 대상 그룹을 오토 스케일링 그룹과 연결해줍니다.

확인

  1. 로드밸런서로 탭으로 이동해서 웹브라우저에 DNS 이름을 입력하여 서버가 호스트네임을 잘 반환하는지 확인합니다.

  2. 웹브라우저에서 새로고침을 했을 때, 서로 다른 주소가 나와야 정상 작동입니다.


This post is licensed under CC BY 4.0 by the author.

오토스케일링과 로드밸런서와 연결된 웹서버 구축하기(1)

AWS 개념 정리 (IAM 심화1)

Comments powered by Disqus.