本文共 3240 字,大约阅读时间需要 10 分钟。
准备4台主机。
HA1:192.168.126.213HA2:192.168.126.214RS1:192.168.126.215RS2:192.168.126.216VIP:192.168.126.2171)准备工作:
1.确保设置好IP地址,设置好hostname和修改/etc/sysconfig/network内hostname一致。同步时间:#ntpdate ntp.api.bz2.RS1和RS2先做好互信。RS1:#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''#cd ~/.ssh/#ssh-copy-id -i id_rsa.pub root@NODE2IPRS2:#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''#cd ~/.ssh/#ssh-copy-id -i id_rsa.pub root@NODE1IP测试一下:ssh RS1IP 'ifconfig'2)安装httpd3)设置VIP和反应状态(此处可以用脚本实现,会更便于管理)1.设置VIPip addr add 192.168.126.217/32 dev eth02.反应状态echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignoreecho 1 > /proc/sys/net/ipv4/conf/lo/arp_ignoreecho 2 > /proc/sys/net/ipv4/conf/all/arp_announceecho 2 > /proc/sys/net/ipv4/conf/lo/arp_announce3.测试一下,RS1可以ping通VIP,PS2可以ping通VIP。1)准备工作:
1.确保设置好IP地址,设置好hostname和修改/etc/sysconfig/network内hostname一致。同步时间:#ntpdate ntp.api.bz2.HA1和HA2先做好互信。HA1:#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''#cd ~/.ssh/#ssh-copy-id -i id_rsa.pub root@NODE2IPHA2:#ssh-keygen -t rsa -f ~/.ssh/id_rsa -P ''#cd ~/.ssh/#ssh-copy-id -i id_rsa.pub root@NODE1IP测试一下:ssh HA1IP 'ifconfig'2)安装httpd在RS1和RS2全部挂掉的时候显示错误信息用的。3)安装ipvsadm,便于以后检查负载均衡配置。4)安装keepalived程序。搜索下载对应版本的keepalived的rpm包
HA1:5)编辑配置文件cd /etc/keepalived/ vim keepalived.conf! Configuration File for keepalivedlinuxedu@foxmail.com mageedu@126.com
}
notification_email_from xxx@163.com #定义发送者邮箱,这里随意填smtp_server 127.0.0.1smtp_connect_timeout 30 #连接超时30秒router_id LVS_DEVEL #定义id,我们使用默认就好#vrrp_mcast_group4 224.0.100.18 #定义组播地址,建议最好使用}vrrp_instance VI_1 { #定义虚拟路由地址
state MASTER #我们K1为MASTERinterface eth0 #在那口网卡,Centos 7 是enoxxxxvirtual_router_id 51 #虚拟路由ID,必须一样主从priority 100 #优先级advert_int 1 #默认1秒就好,authentication { #认真auth_type PASS #keepalived只支持俩中认证,这里使用第二种简单密码认证,也就是预认证auth_pass 123456 #使用openssh rant -base64 6 获取随机密码,最长支持八位所以也就是后面使用6的原因}virtual_ipaddress { #定义虚拟IP地址192.168.126.217}
}
virtual_server 192.168.16.215 80 { #定义keepalived集群VIP地址
delay_loop 6 #检查周期6秒lb_algo rr #调度算法lb_kind DR #调度模型protocol TCP #只支持TCP,所以想想就好sorry_server 127.0.0.1 80 #用于集群挂掉了,提示的友好界面,比如提示:服务器正在维护等等友好信息...real_server 192.168.126.213 443 { #定义R1 weight 1 #权重,我们是rr调度,权重可以忽略 HTTP_GET { #这里我们使用的HTTP 443端口 connect_timeout 3 #连接超时时长,3秒 nb_get_retry 3 #重试3次 delay_before_retry 3 #每次重试的时间间隔3秒 } }
real_server 192.168.126.214 443 { #定义R2
weight 1 #权重HTTP_GET { #这里我们使用的HTTP 80端口connect_timeout 3 #连接超时时长,3秒 nb_get_retry 3 #重试3次 delay_before_retry 3 #每次重试的时间间隔3秒 }}
}保存
scp keepalived.conf 到HA2HA2:6)修改keepalived.conf改动两处vrrp_instance VI_1 { state BACKUP #这里不同,是BACKUPinterface eth0virtual_router_id 51priority 98 #这里不同,优先级是98,下面其他都一样advert_int 1authentication { auth_type PASSauth_pass 123456}保存HA1和HA2:7)安装ipvsadm,便于检查负载均衡机检查内核是否有ipvsadm模块lsmod |grep ip_vs8)启动keepalivedservice keepalived start9)下线一个HA主机,检查另一台主机是否顶替上去。转载于:https://blog.51cto.com/13484913/2128055