Ubuntu18.0.4 docker下 nginx+keepalived创建虚拟IP,实现双机热备1

Ubuntu18.0.4 docker下 nginx+keepalived创建虚拟IP,实现双机热备1
(本文是以网上资源,学习后的个人总结,侵删)
一、实验环境

Ubuntu 18.0.4master(主)192.168.142.161
Ubuntu 18.0.4backup(从)192.168.142.162
虚拟IP(VIP)192.168.142.163

keepalived介绍:keepalived最初是专门针对LVS设计的一款强大的辅助工具,主要用来提供故障切换和健康检查功能——判断LVS负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器,当故障主机回复后将其重新加入群集。单独部署LVS环境的话,调度器发生宕机的话,整个群集就失效了,某一个web节点宕机后,客户端在访问时,总会碰上访问不到网页的情况,所以,将keepalived和LVS结合起来,才可形成一个真正的高可用群集,当然,后端的共享存储也必须搭建一个高可用的存储服务器,三者其中有一个满足不了,都不能称之为一个高可用的群集环境。
keepalived官方网站: http://www.linuxvirtualserver.org/ ,
在非LVS环境中,keepalived也可以作为热备软件使用。
keepalived采用VRRP(虚拟路由冗余协议)热备份协议,以软件的方式实现Linux服务器的多机热备。
VRRP是针对路由器的一种备份解决方案——由多台路由器组成一个热备组,通过共用的虚拟IP(VIP)地址对外提供服务;每个热备份组内同一时刻只有一台主路由器提
供服务,其他路由器处于冗余状态,若当前在线的路由器失效,则其他路由器会自动接替
(优先级决定接替顺序)虚拟IP地址,以继续提供服务。热备组内的每台路由器都可能成为主路由器,虚拟路由器的IP地址(VIP)可以在热备组内路由器进行转移,所以也称为漂移IP地址。使用keepalived时,漂移地址的实现不需要手动建立虚接口配置文件(如ens33:0),而是由keepalived根据配置文件自动管理。
基于VRRP的热备方式,keepalived可以用作服务器的故障切换,每个热备组可以有多台服务器——最常用的是多机热备了。在这种多机热备方案中,故障切换主要针对虚拟IP地址的漂移来实现。因此能适用于各种应用服务器(不管是Web、FTP、Mail、还是SSH、DNS…)。

二、基于docker安装配置nginx,这里省略
三、在master主机和backup主机下安装配置keepalived

#apt-get clean && apt-get update
#apt-get install -y libssl-dev openssl libpopt-dev
#apt-get install -y keepalived
#cp /usr/share/doc/keepalived/samples/keepalived.conf.sample /etc/keepalived/keepalived.conf

1、master主机如下配置,本次实验只配置以下几点
在这里插入图片描述
2、backup主机如下配置,本次实验只配置以下几点
在这里插入图片描述

配置文件说明:

notification_email {
    rdg_datahub@xxx.com       #故障联系人
 }
router_id LVS_MASTER         #BACKUP上修改为LVS_BACKUP
       track_script {          # 将track_script块加入instance配置块
          chk_nginx             # 执行Nginx监控的服务
      }
      virtual_ipaddress {     # 虚拟IP池,主、备节点必须一致,可以定义多个VIP
          192.168.142.163          # 虚拟IP
      }

interface ens33              # 虚拟 ip 绑定的网卡
virtual_router_id 80        # 此 ID 要与 Backup 配置一致
priority 10  # 默认启动优先级,要比 Backup 大点,但要控制量,保证自身状态监测生效

3、启动keepalived服务

#service keepalived start

停止keepalived服务

#service keepalived stop

重启keepalived服务

#service keepalived  restart

4、在master机器上面查看虚拟是否绑定上了

# ip  a

有以下显示,说明vip已经关联上ens33网卡了
在这里插入图片描述
5、验证双活效果
访问192.168.142.161 master主机:
在这里插入图片描述
访问192.168.142.162 backup从机:
在这里插入图片描述
访问192.168.142.163虚拟主机:
在这里插入图片描述

6、再把master主机关机或者退出nginx,模拟宕机环境
(这里先把192.168.142.161主服务器设备关机)并查看192.168.142.162 从服务器有没有显示vip,如果192.168.142.161主服务器不宕机的情况下,192.168.142.162从服务器不会显示192.168.142.163 虚拟IP的
在这里插入图片描述
7、再次访问nginx网页
访问192.168.142.162 backup机:
在这里插入图片描述

访问192.168.142.163 虚拟主机:
在这里插入图片描述

实验证明虚拟主机的访问内容是根据master主机 和backup从机上的资源来进行访问的。当master主机在线时运行测试页面
当master主机不在线时就运行backup从机上的资源,是正式网页
且master主机和backup从机不会自动同步复制文件

8、查看日志

# cat  /var/log/syslog | grep Keepalived

9、开机启动项
把 keepalived的启动文件复制到init.d下,加入开机启动项

# cp  /usr/local/keepalived/keepalived/etc/init.d/keepalived/etc/rc.d/init.d/
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值