목차
1. HAProxy
2. HAProxy 설정
3. 설정 확인
1. HAProxy
- 여러 서버에 요청을 분산 시키는 TCP 및 HTTP 기반 애플리케이션을 위한 고가용성 로드 밸런서 및 역방향 프록시를 제공하는 무료 오픈 소스 소프트웨어이다.
- 즉, 하나의 서비스에 대한 부하를 여러 서버로 분산하는 것이다.
2. HAProxy 설정
2.1 리눅스 설정
CentOS7-1 설정
- VM에 연결된 네트워크 주소를 필요에 맞게 변경해준다.
yum install -y haproxy
- HAProxy 패키지를 설치해준다.
/etc/haproxy/haproxy.cfg
- haproxy 기타 환경설정을 변경해준다.
- haproxy를 통해 들어오는 frontend의 포트 번호는 80번으로 들어오도록 지정한다.
- haproxy를 통해 부하 분산 시킬 backend에 위치하는 server의 IP 주소를 입력하고, 해당 server로 들어갈 포트 번호를지정해준다.
- 반드시 시스템 재실행을 시켜줘야 변경 사항이 저장되어 실행된다.
- 마지막으로 방화벽을 허용해준다.
CentOS7-2, CentOS7-3 설정
- CentOS7-2,3에는 기본적으로 WEB Server 설치와 WEB Page는 간단하게 작성되어 있는 상태이다.
CentOS7-2 설정
- 웹 서버 설정을 haproxy에서 설정한 포트 번호에 맞게 변경해준다.
- haproxy에서 backend server1의 60000번으로 보내기로 설정했기 때문에 웹 서버 Listen 포트를 60000으로 설정해준다.
- server1에 접속하기 위한 port가 60000으로 변경되었기 때문에 60000 port에 해당하는 방화벽을 열어준다.
CentOS7-3 설정
- 웹 서버 설정을 haproxy에서 설정한 포트 번호에 맞게 변경해준다.
- haproxy에서 backend server2의 60001번으로 보내기로 설정했기 때문에 웹 서버 Listen 포트를 60001으로 설정해준다.
- server2에 접속하기 위한 port가 60001으로 변경되었기 때문에 60001 port에 해당하는 방화벽을 열어준다.
3. 설정 확인
Client PC에서 확인
- Client PC에서 같은 주소로 웹 페이지에 접속을 했을 때 부하 분산에 의해 2개의 웹 서버를 랜덤하게 접근하는 것을 볼 수 있다.
- 위와 같은 그림으로 haproxy에 의해 부하분산되어 지정된 포트 번호로 웹 서버에 접근하는 것을 알아보았다.
'Programming > Linux' 카테고리의 다른 글
Linux - (Wordpress + MySQL5.7 + PHP 7.3) 설치 (0) | 2022.04.25 |
---|---|
Linux - NFS + (Windows 환경에서도 사용) (0) | 2022.04.08 |
Linux - MAIL (0) | 2022.04.08 |
Linux - DNS (windows - 설정 확인) (0) | 2022.04.07 |
Linux - HTTP (0) | 2022.04.07 |