HAproxy

박기원·2022년 5월 4일
0

On-Premise

목록 보기
8/8
post-thumbnail

HAProxy는 여러 서버에 요청을 분산시키는 TCP 및 HTTP 기반 애플리케이션을 위한 고가용성 로드 밸런서 및 역방향 프록시를 제공하는 무료 오픈 소스 소프트웨어 입니다.
C로 작성되었으며 빠르고 효율적(프로세서 및 메모리 사용 측면에서)으로 유명합니다.

  • HAproxy 설치
# yum install -y haproxy
  • HAproxy 환경설정 ✍
# vi /etc/haproxy/haproxy.cfg
global
    daemon

defaults
    mode               http

frontend  http-in
    bind *:80
    acl firefox hdr_sub(User-Agent) Firefox
    acl chrome hdr_sub(User-Agent) Trident
    default_backend    backend_servers
    use_backend bk_firefox if firefox
    use_backend bk_trident if trident

backend backend_servers
    balance            roundrobin
#    cookie  SVID insert indirect nocache maxlife 10s
    server             web01 10.0.22.2:80 cookie w1 check
    server             web02 10.0.22.5:80 cookie w2 check
    server             web03 10.0.22.4:80 cookie w3 check

backend bk_firefox
    server             web01 10.0.22.2:80
backend bk_trident
    server             web02 10.0.22.5:80

NAT IP로 접속 시 WEB01, 02, 03으로 부하를 분산시킨다.

User-Agent 파일을 검색하여 사용자가 어떠한 브라우저를 통해 접속하였는 지 알아낸다.

web01 server는 firefox 에서만 접속을 허용하고
web02 server는 trident (Internet Explorer) 에서만 접속을 허용한다

  • HAproxy 자동시작
# systemctl enable --now haproxy

0개의 댓글