keepalived+LVS双机热备高可用群集

keepalived+LVS高可用群集

实验环境

这里因为需要,LVS负载均衡群集,当然不要的话也可以,我这里演示的是要LVS的

DR模式的,关于要不要LVS这个问题我后面实验中我会讲清楚

现在必须要我上一篇博客的基础并访问测试成功才可以,链接如下

https://blog.csdn.net/weixin_45308292/article/details/102485109

因为实验环境中,要看效果,所以不需要做NFS存储,在web主机中做不同的页面,即可,当然真实环境中当然要做NFS存储

所以可以把上篇博客中的,NFS存储恢复原始快照,
IP是 192.168.100.105 VM 1 ,当作备用调度器

1.配置主调度器

进入上一篇当中的192.168.100.102

1)安装keep服务和ipvsadm

挂载光盘,配置yum
[root@CentOS7-02 ~]# yum -y install keepalived ipvsadm
[root@CentOS7-02 ~]# systemctl enable keepalived

2)配置keepalived主配置文件

[root@CentOS7-02 ~]# systemctl stop firewalld
[root@CentOS7-02 ~]# cd /etc/keepalived/
[root@CentOS7-02 keepalived]# cp keepalived.conf keepalived.conf.bak做个备份
[root@CentOS7-02 keepalived]# vim keepalived.conf
注意一定按照我图中来
在这里插入图片描述

下滑到最后,新起打我下面的

我图中的第3行打错了,这行非常的重要 是 lb_algo rr

当然我后面有打好的,你可以直接复制,那里是绝对正确的

在这里插入图片描述
virtual_server 192.168.100.222 80 {
delay_loop 15
lb_algo rr
lb_kind DR
! persistence 60
protocol TCP
real_server 192.168.100.103 80 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
nb_get_retry 3
delay_before_retry 4
}
}
real_server 192.168.100.104 80 {
weight 1
TCP_CHECK {
connect_port 80
connect_timeout 3
nb_get_retry 3
delay_before_retry 4
}
}
}

保存退出
一定要重启服务,如下
[root@CentOS7-02 ~]# systemctl restart keepalived

2.配置从调度器

进入到192.168.100.105中

1)安装软件包

[root@centos7-05 ~]# yum -y install keepalived ipvsadm
[root@centos7-05 ~]# systemctl enable keepalived

2)配置从调度器的主配置文件

[root@centos7-05 ~]# vim /etc/keepalived/keepalived.conf
也要更改如下
在这里插入图片描述

然后也是滑倒最后,打上我下图的,可以直接复制主调度器那里的,就是我上面第二张图片中的内容,

因为我是复制主调度里的,所以这里的第三行也有错误 是 lb_algo rr

一定要改过来,不然会出错

在这里插入图片描述
重启服务
[root@centos7-05 ~]# systemctl restart keepalived

3.配置Web节点服务器

如果你是直接做keep这个热备,必须要做下面的3个操作,下面三个操作我最上面那链接中的博客都有

1.调整/proc系统的ARP响应参数

2.为虚接口lo:0配置VIP地址

3.添加一条到VIP的本地路由

因为我这里是按照我上篇博客基础上做的,所以这里就可以不用操作了

4.因为我上篇博客是挂载的NFS存储,这篇没有NFS,并且页面要不一样

5.进入103,104,把index.html文件都改为不一样的,并启动httpd服务
[root@centos7-03 html]# systemctl start httpd
[root@centos7-04 html]# systemctl start httpd

4.清除冲突的配置项

如果现在访问VIP地址的话,是绝对不会成功的

因为keepalived自带群集功能,而我这里又是在LVS使用ipvsadm分配的策略上的,所以一定会有冲突的

所以说,我下面删掉的所有东西,如果你是直接做keepalived的高可用,这些东西都可以不用添加
1)清除主调度器上的ens33:0接口IP

因为LVS要把,VIP地址配置在接口上,但是此例的VIP地址又是漂移地址,是会移动的
不可以配置接口上

进入192.168.100.102
[root@CentOS7-02 ~]# cd /etc/sysconfig/network-scripts/
[root@CentOS7-02 network-scripts]# rm -rf ifcfg-ens33:0
[root@CentOS7-02 network-scripts]# systemctl restart network
[root@CentOS7-02 ~]# ifconfig (应该没有ens33:0那网卡了)

2)清除主调度的ipvsadm策略

实际上keepalived自带的有群集功能,上面的第2张图片,和第4张图片其实都是在做
DR群集

[root@CentOS7-02 ~]# ipvsadm -C (清除策略)

如果你是直接做keep高可用,就不用做ipvsadm策略

3)清除主调度上的/proc响应参数

[root@CentOS7-02 ~]# vim /etc/sysctl.conf
上篇博客添加了三行参数,把这三行都删除掉,并运行如下命令
[root@CentOS7-02 ~]# sysctl -p

5.验证keepalived高可用

进入192.168.100.102主调度器,运行如下命令,可以查看漂移地址
在这里插入图片描述
开一个win7,也可用上次的验证机,vm1 192.168.100.66

浏览器访问 http://192.168.100.222 (VIP地址也是漂移地址)

首先显示192.168.100.103的页面,如下
在这里插入图片描述
然后把主调度器192.168.100.102关机

然后关闭浏览器,再打开,再次访问http://192.168.100.222

应该会显示192.168.100.104的页面,而且也可以正常访问

这步验证了负载均衡,与keep高可用,因为关闭了主的调度器,依然可以正常访问,而且还会切换页面

在这里插入图片描述
进入辅助调度器 192.168.100.105当中,查看漂移地址,已经过来了
在这里插入图片描述

实验完毕

发布了54 篇原创文章 · 获赞 57 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/weixin_45308292/article/details/102554017