본문 바로가기

엔지니어/Linux

How to make High Available Load Balancer(L4/L7) with haproxy and Pacemaker - 1/4

728x90
반응형

1. Introduction


서비스의 부하 분산 및 고가용성을 위해 H/W Load Balancer를 필요로 하는 경우가 많지만 도입 비용이 크기때문에 예산상의 어려움도 많다.

반드시 H/W Load Balancer가 필요한 환경이 아니라면 여분의 Server를 활용하여 S/W Load Balancer를 구축할 수 있다.


일반적으로 사용자는 아래와 같은 Infrastructure를 통해 서비스를 받는다.


이때 Active Node에 장애가 발생하더라도 VIP는 Standby Node에서 Failover하므로 서비스는 중단되지 않으며 사용자는 최대 몇초간의 순단 현상만 경험하게 된다.


본 문서에서 다룰 내용은 Active/Standby Node 부분이다.

여기서 사용자의 Requests를 Real Node에 분배하는 Load Balancer는 haproxy로 구현하고 VIP와 같은 Resource를 중단되지 않도록 하는데(High Availability) pacemaker를 사용한다.



2. Preconditions


  • Server: 2ea
    • CPU: x86, 64bit
    • OS: RHEL 5
  • High Available Load Balancer Nodes (Active-Standby Structure)
    • VIP for Service: 1ea
      • 192.168.0.10
    • Fixed IP: 2ea (1ea/Server)
      • Active Node/Hostname: 192.168.0.11/ACT
      • Standby Node/Hostname: 192.168.0.12/STD
  • Softwares
    • Load Balancer: haproxy (http://haproxy.1wt.eu/)
    • Cluster: Pacemaker (http://clusterlabs.org/)
  • Real Nodes
    • Web Servers
    • IP/Hostname
      • 192.168.0.2[1-4]/RN[1-4]
반응형