通过keepalived搭建lvs高可用集群
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了通过keepalived搭建lvs高可用集群相关的知识,希望对你有一定的参考价值。
1.配置keepalived
Keepalived的配置仅需要一个配置文件即可完成对HA cluster和LVS服务节点监控,在通过Keepalived搭建高可用的LVS集群实例中,主、备Director Server都需要安装Keepalived软件,安装成功后,默认的配置文件路径(可以通过rpm -ql keepalived查看)是:/etc/keppalived/keeplived.conf。一个完整的keepalived的配置文件由3个部分组成,分别是全局定义部分、vrrp实例定义部分以及虚拟服务定义部分:
! Configuration File for keepalived
global_defs { #全局定义部分
notification_email {
[email protected] #设置报警邮件地址,可设置多个,每行一个。注意,如果
#要开启邮件报警,需要开启本机的sendmail服务
}
notification_email_from [email protected] #设置邮件的发送地址
smtp_server 192.168.200.1 #设置smtp Server地址
smtp_connect_timeout 30 #设置连接smtp Server的超时时间
router_id LVS_DEVEL #表示运行keepalived服务器的一个标识。
#发邮件时显示在邮件主题中的信息
}
vrrp_instance VI_1 { #vrrp实例定义部分
state MASTER #指定keepalived的角色,Master表示此主机是主服务器,
#BACKUP表示此主机是备用服务器
interface eth0 #指定HA监测网络的接口
virtual_router_id 51 #虚拟路由标识,这个标识是一个数字,同一个vrrp实例
#使用唯一的标识,即同一个vrrp_instance下,MASTER和BACKUP必须是一致的
priority 100 #定义优先级,数字越大,优先级越高。在一个vrrp_instance下,
#MASTER的优先级必须大于BACKUP的优先级
advert_int 1 #设定MASTER与BACKUP负载均衡器之间同步检测时间间隔,单位是s
authentication { #设定认证类型和密码
auth_type PASS #设置验证类型,主要有PASS和AH两种
auth_pass 1111 #设置验证密码,在一个vrrp_instance下,MASTER和
#BACKUP必须使用相同的密码才能正常通信
}
virtual_ipaddress { #设置虚拟IP地址,可以设置多个虚拟IP地址,每行一个
192.168.12.200
}
}
virtual_server 192.168.12.200 80 { #设置虚拟服务器,需要指定虚拟IP地址和服
#务端口,IP与端口之间用空格隔开
delay_loop 6 #设置运行情况检查时间,单位是s
lb_algo rr #设置负载调度算法,这里设置为rr
lb_kind DR #设置负载均衡的机制,有NAT,DR和TUN三种模式
persistence_timeout #会话保持时间,单位是s。这个对动态网页是非常有用的,为集群系统中session共享提供了一个很好的解决方案。有了这个会话保持功能,用户的请求会被一直分发到某个服务节点,直到超过这个会话的保持时间。需要注意的是,这个会话保持时间是最大无响应超时时间,也就是说,用户在操作动态页面时,如果在50s内没有执行任何操作,那么接下来的操作会被分发到另外的节点,但是如果用户一直在操作动态页面,则不受50s的时间限制
protocol TCP #指定转发协议类型,有TCP和UDP两种
real_server 192.168.12.132 80 { #配置服务器节点1,需要指定Real Server的真实
#IP和端口,ip和端口之间用空格隔开
weight 3 #配置服务器节点的权限,权值大小用数字表示,数字热大,权值热高
TCP_CHECK { #realserver的状态监测设置部分,单位是s
connect_timeout 3 #表示3s无响应超时
nb_get_retry 3 #表示重试的次数
delay_before_retry 3 #表示重试间隔
}
}
real_server 192.168.12.132 80 { #配置服务器节点2,需要指定Real Server的真实
#IP和端口,ip和端口之间用空格隔开
weight 3 #配置服务器节点的权限,权值大小用数字表示,数字热大,权值热高
TCP_CHECK { #realserver的状态监测设置部分,单位是s
connect_timeout 3 #表示3s无响应超时
nb_get_retry 3 #表示重试的次数
delay_before_retry 3 #表示重试间隔
}
}
}
配置keepalived时,需要特别注意配置文件的语法格式,因为keepalived的启动时并不监测配置文件的正确性,即使没有配置文件,keepalived也照样启动。
在默认情况下,keepalived在启动时会查找/etc/Keepalived/Keepalived.conf配置文件。如果配置文件放置在其他路径下,可以通过keepalived -f参数指定配置文件路径。
keepalived.conf配置完毕后,将此文件复制到备用Director Server对应的路径洗,然后进行以下两个简单的修改即可:
将“state MASTER”更改为“state BACKUP”。
将“priority 100”更改一个较小的值,这里改为“priority 80”。
2.配置Real Server节点
与heartbeat+LVS类似,Keepalived+LVS也需要为Real server节点配置相关的脚本,以达到与Director Server相互通信的目的。
3.启动Keepalived+LVS集群系统
在主、备Director Server上分别启动Keepalived服务,可以执行如下操作:
/etc/init.d/keepalived start
接着在两个Real Server上执行如下脚本:
/etc/init.d/lvsrs start
本文出自 “夜色” 博客,请务必保留此出处http://liuqun.blog.51cto.com/3544993/1983272
以上是关于通过keepalived搭建lvs高可用集群的主要内容,如果未能解决你的问题,请参考以下文章