官网下载
https://www.keepalived.org/download.html
此处使用 keepalived-2.2.7
解压缩
tar -xzvf keepalived-2.2.7
配置安装
1. cd keepalived-2.2.7
2. ./configure --prefix=/usr/local/keepalived --sysconf=/etc
3. make && make install
执行第二行命令时,可能的的报错 1:
没有C编译环境,安装一下
yum -y install gcc
执行第二行命令时,可能的的报错 2:
需要安装openssl和openssl-devel
yum -y install openssl openssl-devel
安装好依赖环境之后,尝试配置安装,缺什么环境就安装一下,这跟keepalived本身并没有什么关系
配置
安装之后,需要对keepalived做配置,在/etc/keepalived目录下有两个文件:
可以使用keepalived.conf.sample作为模板配置一个自己的配置文件keepalived.conf,此处仅做一个简单配置:
! Configuration File for keepalived
global_defs {
router_id mycat_master
}
vrrp_instance VI_1 {
state MASTER
#当前服务实例绑定的网卡,可以使用ip addr命令查看
interface ens33
#主备服务需要保持一致
virtual_router_id 51
#优先级,master宕机之后,高者被选举为master
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.0.111
}
}
再配置一个服务器,安装方法同上,配置文件如下:
! Configuration File for keepalived
global_defs {
router_id mycat_slave
}
vrrp_instance VI_1 {
state SLAVE
#当前服务实例绑定的网卡,可以使用ip addr命令查看
interface ens33
#主备服务需要保持一致
virtual_router_id 51
#优先级,master宕机之后,高者被选举为master
priority 90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.0.111
}
}
启动keepalived
systemctl restart keepalived.service
如果上面的命令不能启动的话,可以执行下面的命令,并看一下下面的“注册系统服务”内容
/usr/local/keepalived/sbin/keepalived
注册系统服务
注:本人在配置服务的时候,并没有做下面的操作,而是安装完成之后,系统服务即可正常使用,难道是版本的问题?没有去研究
进入keepalived的解压目录之下,再进入下面的keepalived/etc目录之下,文件列表如下:
执行如下的copy命令并reload系统服务:
cp init.d/keepalived /etc/init.d/
cp sysconfig/keepalived /etc/sysconfig/
systemctl daemon-reload
然后再执行启动或停止或重启服务即可。
OK!现在可以使用keepalived的虚拟ip连接服务了,mycat,mysql,nginx等,试一下吧!
当然,keepalived还有很多配置,针对不同的服务实现高可用还有不同的配置特性,一起研究学习吧,此处仅做一个简单示例