下面以第一种比较常用的方式来配详细解说一下virtual_server 192.168.1.2 80 { #设置一个virtual server: VIP:Vport
delay_loop 3 # service polling的delay时间,即服务轮询的时间间隔lb_algo rr|wrr|lc|wlc|lblc|sh|dh #LVS调度算法lb_kind NAT|DR|TUN #LVS集群模式persistence_timeout 120 #会话保持时间(秒为单位),即以用户在120秒内被分配到同一个后端realserver
persistence_granularity #LVS会话保持粒度,ipvsadm中的-M参数,默认是0xffffffff,即每个客户端都做会话保持protocol TCP #健康检查用的是TCP还是UDP
ha_suspend #suspendhealthchecker’s activity
virtualhost #HTTP_GET做健康检查时,检查的web服务器的虚拟主机(即host:头)sorry_server #备用机,就是当所有后端realserver节点都不可用时,就用这里设置的,也就是临时把所有的请求都发送到这里啦real_server #后端真实节点主机的权重等设置,主要,后端有几台这里就要设置几个{
weight 1 #给每台的权重,0表示失效(不知给他转发请求知道他恢复正常),默认是1
inhibit_on_failure #表示在节点失败后,把他权重设置成0,而不是冲IPVS中删除notify_up | #检查服务器正常(UP)后,要执行的脚本notify_down | #检查服务器失败(down)后,要执行的脚本HTTP_GET #健康检查方式{
url { #要坚持的URL,可以有多个path / #具体路径digest
status_code 200 #返回状态码}
connect_port 80 #监控检查的端口bindto #健康检查的IP地址connect_timeout 3 #连接超时时间nb_get_retry 3 #重连次数delay_before_retry 2 #重连间隔} # END OF HTTP_GET|SSL_GET
#下面是常用的健康检查方式,健康检查方式一共有HTTP_GET|SSL_GET|TCP_CHECK|SMTP_CHECK|MISC_CHECK这些#TCP方式TCP_CHECK {
connect_port 80
bindto 192.168.1.1
connect_timeout 4
} # TCP_CHECK# SMTP方式,这个可以用来给邮件服务器做集群SMTP_CHECK
host {
connect_ip
connect_port #默认检查25端口14 KEEPALIVED
bindto
}
connect_timeout
retry
delay_before_retry
# "smtp HELO"|·-