下载Keepalived的源码
https://www.keepalived.org/download.html
解压
tar -zxvf xxx.tar.gz
使用configure命令配置
cd cd keepalived-xxx
./configure --prefix=/usr/local/keepalived --sysconf=/etc
# perfix: keepalived安装的位置
# sysconf: keepalived核心配置文件位置, 固定的不能变
可能遇到的问题
*** WARNING - this build will not support IPVS with IPv6.
Please install libnl/libnl-3 dev libraries to support IPv6 with IPVS.
解决办法安装libnl 和 libnl-3 依赖
yum -y install libnl libnl-devel
# 重新configure
安装
make && make install
查找安装位置
whereis keepalived
配置Keepalived
global_defs {
# 路由id:当前安装keepalived的节点主机标识符,保证全局唯一
router_id keep_xxx
}
vrrp_instance VI_1 {
# 表示状态是MASTER主机还是备用机BACKUP
state MASTER
# 该实例绑定的网卡
interface ens33
# 保证主备节点一致即可
virtual_router_id 51
# 权重,master权重一般高于backup,如果有多个,那就是选举,谁的权重高,谁就当选
priority 100
# 主备之间同步检查时间间隔,单位秒
advert_int 2
# 认证权限密码,防止非法节点进入
authentication {
auth_type PASS
auth_pass 1111
}
# 虚拟出来的ip,可以有多个(vip)
virtual_ipaddress {
192.168.1.161
}
}
启动Keepalived
sbin/keepalived
系统服务启动
#进入解压后的Keepalived路径
cd xxx/keepalived-xxx/keepalived/etc
#找到 init.d 和 sysconfig
#copy init.d 和 sysconfig 下的Keepalived 到对应etc下
cp init.d/keepalived /etc/init.d/
cp sysconfig/keepalived /etc/sysconfig
#重新加载
systemctl daemon-reload
#启动Keepalived服务
systemctl start keepalived.service
# restart stop 对应重启和停止
#查看启动状态
ps -ef | grep keepalived