4.2. keepalived Direct Routing 구성
Keepalived의 직접 라우팅 구성은 NAT와의 구성과 유사합니다. 다음 예에서 Keepalived는 포트 80에서 HTTP를 실행하는 실제 서버 그룹에 대한 부하 분산을 제공하도록 구성되어 있습니다. 직접 라우팅을 구성하려면
lb_kind
매개변수를 DR
로 변경합니다. 기타 구성 옵션은 4.1절. “기본 Keepalived 구성” 에서 설명합니다.
다음 예제에서는 직접 라우팅을 사용하는 Keepalived 구성에서 활성 서버에 대한
keepalived.conf
파일을 보여줍니다.
global_defs { notification_email { admin@example.com } notification_email_from noreply_admin@example.com smtp_server 127.0.0.1 smtp_connect_timeout 60 } vrrp_instance RH_1 { state MASTER interface eth0 virtual_router_id 50 priority 100 advert_int 1 authentication { auth_type PASS auth_pass passw123 } virtual_ipaddress { 172.31.0.1 } } virtual_server 172.31.0.1 80 { delay_loop 10 lb_algo rr lb_kind DR persistence_timeout 9600 protocol TCP real_server 192.168.0.1 80 { weight 1 TCP_CHECK { connect_timeout 10 connect_port 80 } } real_server 192.168.0.2 80 { weight 1 TCP_CHECK { connect_timeout 10 connect_port 80 } } real_server 192.168.0.3 80 { weight 1 TCP_CHECK { connect_timeout 10 connect_port 80 } } }
다음 예제에서는 직접 라우팅을 사용하는 Keepalived 구성에서 백업 서버에 대한
keepalived.conf
파일을 보여줍니다. state
및 priority
값은 활성 서버의 keepalived.conf
파일과 다릅니다.
global_defs { notification_email { admin@example.com } notification_email_from noreply_admin@example.com smtp_server 127.0.0.1 smtp_connect_timeout 60 } vrrp_instance RH_1 { state BACKUP interface eth0 virtual_router_id 50 priority 99 advert_int 1 authentication { auth_type PASS auth_pass passw123 } virtual_ipaddress { 172.31.0.1 } } virtual_server 172.31.0.1 80 { delay_loop 10 lb_algo rr lb_kind DR persistence_timeout 9600 protocol TCP real_server 192.168.0.1 80 { weight 1 TCP_CHECK { connect_timeout 10 connect_port 80 } } real_server 192.168.0.2 80 { weight 1 TCP_CHECK { connect_timeout 10 connect_port 80 } } real_server 192.168.0.3 80 { weight 1 TCP_CHECK { connect_timeout 10 connect_port 80 } } }