본문 바로가기
Linux [Debian]

Linux Debian Haproxy 구성

by 전역하고싶소 2023. 7. 29.
반응형

HAProxy 란?

 HAProxy 는 기존의 하드웨어 스위치를 대체하는 소프트웨어 로드 밸런서로 네트워크 스위치에서 제공하는 L4, L7 기능 및 로드 밸런서 기능을 제공한다. HAProxy 는 설치가 쉽고, 또한 환경 설정도 어렵지 않으며 서비스 이중화를 빠르게 구성하고 싶다면 HAProxy 를 추천한다. 

 

HAProxy 동작 방식 

HAProxy는 기본적으로 reverse proxy 형태로 동작한다. 우리가 브라우저에서 사용하는 Proxy 는 클라이언트 앞에서 처리하는 기능으로 Forward Proxy 라 한다. reverse proxy의 역할을 간단하게 설명하면, 실제 서버 요청에 대해서 서버 앞 단에 존재하면서, 서버로 들어오는 요청을 대신 받아서 서버에 전달하고 요청한 곳에 그 결과를 다시 전달하는 것이다. 

1. 최초 접근시 서버에 요청 전달 

2. 응답시 쿠키에 서버 정보 추가후 반환 

3. 재요청시 proxy 에서 쿠키 정보 확인 > 최초 요청 서버로 전달 

4. 다시 접근시 쿠키 추가 없이 전달 > 클라이언트에 쿠키 정보가 계속 존재함 

 

Haproxy 설정 구조 

우선 haproxy 에서는 frontend backend 로 나뉘어 있다. 

frontend : 클라이언트와 HAProxy 서버 간의 연결 설정 

backend : haproxy 와 실제 서버 간의 연결 설정 

 

 

frontend http // frontend 이름 

bind :80 // 포트 설정 

default_backend http // 기본 backendhttp 설정한다. 

 

backend 설정 

backend http // backend 이름 

server a-s 192.168.0.2:80 check // 아이피 상태 체크 포트 80 

server a-s2 192.168.0.3:80 check // 아이피 상태 체크 포트 80 

 

https 같은 경우는 

ssl 인증 때문에 

bind :443 ssl crt /etc/ssl/intra.pem 

클라이언트와 HAProxy 서버 간의 연결 설정에 인증서가 필요하다. 

server a-s 192.168.0.2:443 check ssl ca-file /etc/ssl/cacert.pem 

이것도 마찬가지 

반응형