Load Balancing?
하나의 인터넷 서비스가 발생하는 트래픽이 많을 때 여러 대의 서버가 분산처리하여 서버의 로드율 증가, 부하량, 속도저하 등을 고려하여 적절히 분산처리하여 해결해주는 서비스입니다.
EC2 서버를 구축할 때 Auto Scailing 서비스 만을 이용했었는데 최근 외주를 하면서 로드 밸런서 이야기가 나와 사용하였습니다.
AWS 내에 Load Balancer 서비스가 존재합니다.
아래 사이트에서 AWS Load Balancer 서비스 내용을 확인하실 수 있습니다.
https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/what-is-load-balancing.html
ALB(Application Load Balancer), NLB(Network Load Balancer), CLB(Classic Load Balancer) 서비스가 있습니다.
저는 CLB를 사용하겠습니다.
1. EC2 우측에 로드밸런서를 클릭하여 생성해봅시다.
2. 3개의 Load Balancer 중 Class Load Balancer를 선택하여 로드 밸런서 이름을 작성해줍시다.
3. 고급 VPC 구성 활성화를 클릭하시면 서브넷을 선택하실 수 있습니다.
4. 새 보안 그룹을 생성하여 유형을 HTTP 80포트로 정의합니다.
5. 트래픽을 안전하게 구성하기 위해 HTTPS 또는 SSL 프로토콜을 사용하라는 경고가 나타납니다. 우선 생략했습니다.
6. 로드 밸런서는 EC2 인스턴스에 트래픽을 제대로 전달하는지 상태 검사를 실행하는 단계입니다. Ping은 해당 호스트에 트래픽이 전달되는지 테스트할 수 있습니다.
7. 인스턴스 추가 단계 입니다.
8. 태그 추가 단계입니다. 저는 kimn 키를 추가하였습니다.
9. 생성 마지막 단계인 검토입니다. 설정한 값을 확인하실 수 있습니다.
처음 생성하면 OutOfService 상태로 되어있습니다.
인스턴스에 설치한 Apache 웹서버의 기본 경로에 index.html 파일이 없어서 검사가 불가능한 상태이기 때문입니다.
해당 경로에 index.html 파일을 실행키기게 되면 InService로 바뀌게 됩니다.
※ 추가 내용
npm 설치 후, 실행해봤습니다.
3000번 포트를 이용해서 로드밸런서 포트도 변경하였습니다.
서비스가 돌아가는 상태임을 확인할 수 있었습니다.
'Develop > AWS' 카테고리의 다른 글
AWS Route 53 Adress Record 생성 (0) | 2020.01.27 |
---|---|
AWS EC2에 AWS RDS를 연동해보자 (0) | 2020.01.27 |
AWS EC2를 이용하여 웹 서버 구축하자 (1) | 2019.09.08 |