验证成功后,可以使用ipvsadm -C删除所有规则,进行keepalived的文件配置,其实,keepalived也是靠linux里的ipvs内核来进行操作的,所以可以不用ipvsadm来写,keepalived自己就会写好相应规则,只需要你手动把配置文件写好即可,在(2)博客的基础之上,添加如下字段即可:
主keepalived:
括号也要写成和上述图片一模一样,否则可能会报错。
keepalived的slave的配置文件修改如下:
和上面一模一样,仅需要添加虚拟主配置段即可。
实践
进行好配置后,在(3)主机和(4)主机上开启keepalived(systemctl start keepalived)
复制一份终端开启tail -f /var/log/messages,查看日志
在windows上进行访问:
成功轮训。
这时候关闭master的keepalived(systemctl stop keepalived)(模拟故障):
发现我们的备机进入主模式
但并不影响我们去curl通,因为我们的备机接管了主机的任务:
但是这个时候要是关闭其中一台真实主机上的httpd服务:
systemctl stop httpd
访问发现会出现一个成功一个不成功,这是我们可以优化算法改为sh模型
总结
我们完成的项目画成网络拓扑图如下:
这样就既实现了高可用又实现了lvs的高扩展