史上最简单keepalived安装教程(亲测可用并实际应用于生产)


前言

由于系统需要高可用模式,需要做虚拟ip映射,采用keepalived方案实现。具体理论学习内容可自行百度,本次以实操为主。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Keepalive两种模式

	抢占式、非抢占式

二、使用步骤

1.安装

使用yum安装(本次使用)

1、安装

yum install -y keepalived

在这里插入图片描述
2、查看版本

rpm -qa|grep keepalived

在这里插入图片描述

3、查看安装后目录

rpm -qc keepalived

在这里插入图片描述

使用源码包安装(我没研究,自行百度吧,提供个官网地址)
官网地址:下载地址

2.配置

抢占式

安装成功后 复制下方脚本至服务器 执行即可

master配置

cat > /etc/keepalived/keepalived.conf <<EOF 
! Configuration File for keepalived

global_defs {
   router_id wiilead #标识 (可自定义)
}
vrrp_instance VI_1 {
    state MASTER  #主节点f
    interface eth0  #绑定虚拟IP的网络接口(可通过ifconfig命令查看)
    virtual_router_id 51 #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
    priority 150 #主节点的优先级(1-254之间),备用节点必须比主节点优先级低
    advert_int 1 #心跳间隔时间 两个节点设置必须一样
    authentication { #设置验证信息,两个节点必须一致 默认就行 可以不用更改
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress { 
        192.168.44.159 #虚拟ip 两个节点保持一致
    }
}
EOF

backup配置

cat > /etc/keepalived/keepalived.conf <<EOF 
! Configuration File for keepalived

global_defs {
   router_id wiilead #标识 (可自定义)
}

vrrp_instance VI_1 {
    state BACKUP #从节点
    interface eth0  #绑定虚拟IP的网络接口(可通过ifconfig命令查看)
    virtual_router_id 51 #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
    priority 100 #主节点的优先级(1-254之间),备用节点必须比主节点优先级低
    advert_int 1 #心跳间隔时间 两个节点设置必须一样
    authentication { #设置验证信息,两个节点必须一致 默认就行 可以不用更改
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress {
        192.168.44.159 #虚拟ip 两个节点保持一致
    }
}
EOF

以上内容分别配置到两台服务器
router_id、interface、virtual_ipaddress 可自定义
其余配置可直接使用

非抢占式

安装成功后 复制下方脚本至服务器 执行即可
非抢占式没有主从之分,全部为BACKUP,添加nopreempt,用来标识为非抢占式;
通常如果master服务死掉后backup会变成master,但是当master服务又好了的时候 master此时会抢占VIP,这样就会发生两次切换对业务繁忙的网站来说是不好的。所以我们要在配置文件加入 nopreempt 非抢占,但是这个参数只能用于state 为backup, 让其通过priority来竞争。

backup1配置

cat > /etc/keepalived/keepalived.conf <<EOF 
! Configuration File for keepalived

global_defs {
   router_id wiilead #标识 (可自定义)
}
vrrp_instance VI_1 { 
    state BACKUP  #从节点
    interface eth0  #绑定虚拟IP的网络接口(可通过ifconfig命令查看)
    virtual_router_id 51 #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
    priority 150 # 非抢占式 两节点优先级一致 公平竞争
    nopreempt #非抢占式标识
    advert_int 1 #心跳间隔时间 两个节点设置必须一样
    authentication { #设置验证信息,两个节点必须一致 默认就行 可以不用更改
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress { 
        192.168.44.159 #虚拟ip 两个节点保持一致
    }
}
EOF

backup2配置

cat > /etc/keepalived/keepalived.conf <<EOF 
! Configuration File for keepalived

global_defs {
   router_id wiilead #标识 (可自定义)
}

vrrp_instance VI_1 {
    state BACKUP #从节点
    interface eth0  #绑定虚拟IP的网络接口(可通过ifconfig命令查看)
    virtual_router_id 51 #VRRP组名,两个节点的设置必须一样,以指明各个节点属于同一VRRP组
    priority 150 # 非抢占式 两节点优先级一致 公平竞争
    nopreempt #非抢占式标识
    advert_int 1 #心跳间隔时间 两个节点设置必须一样
    authentication { #设置验证信息,两个节点必须一致 默认就行 可以不用更改
        auth_type PASS
        auth_pass 1111
    }
    virtual_ipaddress { 
        192.168.44.159 #虚拟ip 两个节点保持一致
    }
}
EOF

以上内容分别配置到两台服务器
router_id、interface、virtual_ipaddress 可自定义
其余配置可直接使用

3.启动与检查

启动keepalived
systemctl start keepalived.service
设置开机启动
systemctl enable keepalived.service
查看开机自启列表
systemctl list-unit-files|grep enabled
查看启动状态
systemctl status keepalived.service
在这里插入图片描述
查看网卡名称
ifconfig
在这里插入图片描述
启动后查看网卡信息
ip a s eth0
在这里插入图片描述
根据网卡信息可以看见 192.168.44.159 虚拟ip已经配置成功,开始撒花╰(°▽°)╯ !


总结

只要还有什么东西不知道,就永远应当学习。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>