目录
实现master/slave的 Keepalived 单主架构
编辑 实现 master/master 的 Keepalived 双主架构
配置keepalive
环境需要四台主机使用rhel7的环境克隆出来
分别是
KA1 172.25.254.10
KA2 172.25.254.20
realserver1 172.25.254.110
realserver2 172.25.254.120
VIP 172.25.254.100
在KA1和KA2中下载keeplive
在KA1
vim /etc/keepalived/keepalived.conf
在KA2中设置一样的配置
但在state中设置成BACKUP
注意 KA1和KA2的virtual_router_id必须一样都为100
启用keepalived日志功能
keeplive日志分离
- 首先在KA1中编辑/etc/sysconfig/keepalived文件
- 重启keeplived
- 接着编辑 /etc/rsyslog.conf 文件
- 接着重启keeplived
- 重启rsyslog.conf
- 测试
注意KA2同上
实现独立子配置文件
- 在KA1和KA2中编辑vim /etc/keepalived/keepalived.conf
- 创建一个文件
[root@ka1 ~]# mkdir -p /etc/keepalived/conf.d/172.25.254.100.conf
- 编辑/etc/keepalived/conf.d/172.25.254.100.conf
重启keeplived
测试
邮件通知
- 在KA1和KA2中下载mail
- 在QQ邮箱里设置授权码
配置文件
vim /etc/mail.rc
保存退出
测试
通知类脚本类型
在KA1和KA2中编辑此文件
vim /etc/keepalived/mail.sh
[root@ka2 ~]# vim /etc/keepalived/mail.sh
#!/bin/bash
mail_dst="2576873054@qq.com"
send_message()
{
mail_sub="$HOSTNAME to be $1 vip move"
mail_msg="'date +%F\ %T ': vrrp move $HOSTNAME change $1"
echo $mail_msg | mail -s "$mail_sub" $mail_dst
}
case $1 in
master)
send_message master
;;
backup)
send_message backup
;;
fault)
send_message fault
;;
*)
;;
esac
~
~
"/etc/keepalived/mail.sh" 22L, 388C 1,1 All
加权限
chmod +x /etc/keepalived/mail.sh
在keeplived配置文件中
测试执行脚本
重启KA2 [root@ka2 ~]# systemctl restart keepalived.service
实现master/slave的 Keepalived 单主架构
非抢占模式
在KA1和KA2中设置 /etc/keepalived/keepalived.conf文件中nopreempt
重启keeplived
测试KA2 重启KA1时KA2有VIP 同理重启KA2时KA1有VIP
抢占延迟模式 preempt_delay
在KA1和KA2的配置文件设置延迟模式的命令并设置时间5s
单播模式
默认keepalived主机之间利用多播相互通告消息,会造成网络拥塞,可以替换成单播,减少网络流量
在KA1和KA2的配置文件中 (KA2的数据发送方和接受方与KA1相反)
测试
实现 master/master 的 Keepalived 双主架构
master/slave的单主架构,同一时间只有一个Keepalived对外提供服务,此主机繁忙,而另一台主机却
- 在KA1和KA2中编辑文件设置双主模式
- KAI中
![](https://i-blog.csdnimg.cn/direct/71dfe857e45041828f20bfb29de8b3db.png)
KA2
主
谓
实现IPVS的高可用性
IPVS相关配置
实战案例1:实现单主的 LVS-DR 模式
- 在KA1和KA2中下载ipvsdam
- 在realservcer1和realserver2中下载apache并启动
- 准备web服务器并使用脚本绑定VIP至web服务器lo网卡
- echo RS1 - 172.25.254.101 > /var/www/html/index.html
-
echo RS1 - 172.25.254.101 > /var/www/html/index.html
![](https://i-blog.csdnimg.cn/direct/852364478ae340a69686fa2b68a4d292.png)
- 在KA1的keepalive的配置文件中
实现其它应用的高可用性 VRRP Script
VRRP Script 配置
调用 VRRP script
- 在KA1和KA2中设置
vrrp_instance test { ... ...
track_script {
check_down
}
}
- 编写脚本vim /etc/keepalived/t.sh
增加权限
- [root@ka1 ~]# chmod +x /etc/keepalived/t.sh
编辑配置文件KA1 和KA2
实战案例:实现HAProxy高可用
在KA1和KA2中下载haproxy
- 编辑此文件vim /etc/sysctl.conf
- 启动
sysctl -p
编辑haproxy的配置文件vim /etc/haproxy/haproxy.cfg
把之前做的注释掉
vim /etc/keepalived/scripts/haproxy.sh
#!/bin/bash
killall -0 haproxy
增加权限chmod +X /etc/keepalived/scripts/haproxy.sh