Cloud/AWS

[AWS] Elastic Load Balancer 적용해보기

백엔드 규니 2021. 4. 5. 11:28
728x90
반응형

AWS ELB 사용해보기

AWS EC2가 2대가 있다고 가정하고 로드 밸런서에 적용해보는 예제를 진행해보겠습니다.

 

EC2 Linux2 웹 서버 설치

EC2 2대 모두 웹 서버 설치를 먼저 진행하겠습니다.

sudo yum update -y
sudo amazon-linux-extras install -y php7.2
sudo yum install -y httpd  
sudo systemctl start httpd (Apache 웹 서버 시작(d는 daemon 임))
sudo systemctl enable httpd (Apache 웹 서버가 매번 시스템이 부팅할 때마다 시작되도록 함)
sudo systemctl is-enabled httpd (httpd 가 실행되고 있는지 확인하는 명령어)

 

 

IP 주소 확인하는 페이지 만들기

vi /var/www/html/index.php
<?php
print($_SERVER['SERVER_ADDR']);

index.php 안에 위의 코드를 입력하겠습니다. 위의 코드는 EC2의 private IP를 확인하는 것입니다. EC2 public IP로 접속해보면 Private IP가 화면에 출력되는 것을 볼 수 있습니다.

 

 

 

로드 밸런서 만들기

스크린샷 2021-04-05 오전 10 54 01스크린샷 2021-04-05 오전 10 55 07스크린샷 2021-04-05 오전 10 55 59

이번 글에서는 HTTP로만 진행할 것이기 때문에 리스너는 80번 포트만 지정하겠습니다.

 

 

스크린샷 2021-04-05 오전 10 58 09

위와 같이 가용 영역을 모두 활성화 하겠습니다.

 

 

스크린샷 2021-04-05 오전 10 59 32스크린샷 2021-04-05 오전 11 07 24

 

보통 같은 역할을 하는 인스턴스들을 하나의 Target-Group으로 만들어 놓습니다. 그래서 위에서 Target-Group을 만들겠습니다.

  • 상태검사: 주기적으로 해당 경로로 로드밸런서가 요청을 보내서 응답이 잘 오는지 확인합니다. 응답이 잘 오면 Healthy하고 응답이 잘 오지 않으면 UnHealthy 한 상태가 됩니다.

 

 

 

스크린샷 2021-04-05 오전 11 10 31스크린샷 2021-04-05 오전 11 19 21

 

위의 로드밸런서 DNS를 접속해보겠습니다.

 

 

스크린샷 2021-04-05 오전 11 21 27스크린샷 2021-04-05 오전 11 21 14

위와 같이 로드밸런싱이 잘 되는 것을 볼 수 있습니다.

반응형