当前位置:   article > 正文

keepalived与mysql搭建VIP漂移

vip漂移

简介:

Keepalived 是一款用于实现高可用性和负载均衡的开源软件,它运行在 Linux 系统上,可以将多个服务器节点组合成一个虚拟服务器,通过 IP 地址漂移技术实现故障转移和负载均衡。

Keepalived 支持 VRRP(虚拟路由冗余协议)和 LVS(Linux 虚拟服务器)两种模式,可以根据实际需求选择使用。VRRP 模式可以实现在多个节点之间自动切换 VIP(虚拟 IP)地址,确保在某个节点故障时,其他节点可以接管服务并保证服务的连续性。而 LVS 模式则可以在多个节点之间分配流量,实现负载均衡。

除了实现高可用性和负载均衡外,Keepalived 还提供了丰富的配置选项和插件机制,可以通过插件实现对各种服务的监控和管理,例如对 MySQL、Nginx、Apache 等服务的监控和自动重启。同时,Keepalived 还支持邮件和 SNMP 报警机制,可以及时通知管理员服务的状态和异常。

总的来说,Keepalived 是一款功能强大的高可用性和负载均衡软件,它简单易用,支持定制化配置,可以帮助企业提高服务的可用性和稳定性。

一、部署环境

mysql版本:5.7.27
系统:centos7
主从架构:一主两从
192.168.2.31主库
192.168.2.32从库
192.168.2.33从库
CPU:1核
内存:1G
软件包:keepalived-1.4.5.tar.gz
keepalived下载地址:https://www.keepalived.org/download.html

二、软件包下载跟上传

找到对应的版本下载完了,上传到机器上
在这里插入图片描述
在这里插入图片描述

三、安装keepalived

yum install -y openssl-devel											#在Linux系统上安装OpenSSL开发库,用于支持keepalived的加密功能。
tar xf keepalived-1.4.5.tar.gz											#解压缩keepalived-1.4.5.tar.gz文件
cd keepalived-1.4.5														#进入解压缩后的keepalived-1.4.5目录
  • 1
  • 2
  • 3

在这里插入图片描述
我这里之前安装过openssl-devel,所以会出现 Nothing to do

./configure --prefix=/usr/local/keepalived					#运行configure脚本来配置keepalived的编译和安装选项。其中,--prefix选项指定keepalived的安装路径为/usr/local/keepalived。
make -j 12 && make install									#编译和安装keepalived。其中,-j 12选项指定同时运行12个编译任务,以加快编译速度。
  • 1
  • 2

在这里插入图片描述

这些报no的不用管,继续往下执行就可以

cp /usr/local/keepalived/etc/sysconfig/keepalived /etc/sysconfig/		#将keepalived的默认配置文件复制到/etc/sysconfig/目录下,以便对其进行修改。
cp -r /usr/local/keepalived/etc/keepalived /etc/						#将keepalived的默认配置文件目录复制到/etc/目录下,以便对其进行修改。
ln -sv /usr/local/keepalived/sbin/keepalived /usr/sbin/					#创建一个指向/usr/local/keepalived/sbin/keepalived可执行文件的符号链接,链接到/usr/sbin/目录下。这样,就可以在任何位置使用keepalived命令。
ln -sv /usr/local/keepalived/bin/genhash /usr/bin/						#创建一个指向/usr/local/keepalived/bin/genhash可执行文件的符号链接,链接到/usr/bin/目录下。这个命令是为了方便生成密码文件。
cp keepalived/etc/init.d/keepalived /etc/init.d/						#将keepalived的启动脚本复制到/etc/init.d/目录下,并可通过service命令来启动、停止和重启keepalived服务。
  • 1
  • 2
  • 3
  • 4
  • 5

在这里插入图片描述

注意,三台mysql实例机器都需要安装keepalived。

这个时候keepalived就安装完成了,可以看到/etc/keepalived/这个目录下面keepalived.conf这个配置文件,接下面就需要把这个配置文件里面的内容进行更改

四、更改配置文件,启动keepalived

vim /etc/keepalived/keepalived.conf 

! Configuration File for keepalived

global_defs {
   notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc
   smtp_server 192.168.200.1
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}

vrrp_instance VI_1 {
    state MASTER
    interface ens33											#指定此实例使用的网络接口名称
    virtual_router_id 51
    priority 100											#(权重值)指定此节点的优先级值,该值决定了节点在VRRP组中的角色,数字越大,节点的优先级越高,成为MASTER节点的可能性就越大。
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass ceshi										#指定用于认证VRRP消息的密码
    }
    unicast_src_ip  192.168.2.31							#主库
    unicast_peer {
            192.168.2.32									#从库
            192.168.2.33									#从库
    }
    virtual_ipaddress {
        192.168.2.34										#VIP(虚拟ip)
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35

这里要注意一点就是priority=100这个值,三台机器要配置的不一样,主库最大,剩下的两台机器哪个配置好哪个就配置的大点,好在主库宕机后接替主库
192.168.2.32 priority 98
192.168.2.33 priority 95

配置文档直接复制就可以用,之前默认的配置文件里面的内容可以删掉。

启动keepalived

/etc/init.d/keepalived start
hostname -I
ip a
  • 1
  • 2
  • 3

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三台实例机器的keepalived都得启动

五、测试VIP漂移

切换思路:先把主库192.168.2.31上的keepalived停掉,看看vip会不会切换
在这里插入图片描述
在这里插入图片描述
然后发现vip切换到了192.168.2.32上,因为192.168.2.32的权重值配的是98,比192.168.2.33配的95高,所以VIP会飘移到192.168.2.32
在这里插入图片描述
当在192.168.2.31上再启动动keepalived,然后会发现vip又漂移了回来,因为192.168.2.31上的权重值是100,是最高的

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/675522
推荐阅读
相关标签
  

闽ICP备14008679号