# 仓库的keepalived多是比较旧的版本,建议官网下载编译安装 sudo yum install keepalived
点击这里下载,建议使用2.0.0版本。html
解压nginx
进入目录web
开始安装,依次执行vim
# 须要跑这个才能自动生成系统服务文件(keepalived.service) # 2.0.0版本没有这个,直接执行下面的步骤便可,也会自动创建系统服务文件 #./build_setup # 安装配置,默认就能够 ./configure # 编译安装 sudo make && sudo make install
可能会出现依赖缺失的问题,查看解压目录下的INSTALL文件,里面有必须依赖说明。后端
sudo ln -s /usr/local/etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf
若是防火墙使用firewalld管理:浏览器
firewall-cmd --zone=public --add-port=8001/tcp --permanent
nginx.conf:服务器
server { listen 8001; server_name localhost; location / { root html; index index.html index.htm; } ... }
其中enp0s3是网卡名称,使用ifconfig
命令能够查看;224.0.0.18是keepalived的默认组播地址。负载均衡
# 添加规则 firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --in-interface enp0s3 --destination 224.0.0.18 --protocol vrrp -j ACCEPT # 重启防火墙 firewall-cmd --reload
修改keepalived配置文件keepalived.conftcp
sudo vim /etc/keepalived/keepalived.conf
修改完成的的主机配置文件内容: 测试
interface
是网卡名称,通常服务器都有两个网卡,一个内网一个外网,keepalived是客户端访问的,因此修改成外网网卡。vrrp_instance_VI_1
下的state
为BACKUP
以及优先级priority,优先级priority要比主机的小。sudo systemctl start keepalived.service
使用命令:
sudo systemctl enable keepalived.service
能够设置为开机启动。 使用命令:ip addr
能够查看网卡的全部ip信息:能够发现对应网卡上已经多了一个ip,这个ip就是咱们设置的虚拟ip。 若是关闭了主机keepalived,会发现虚拟ip已经漂移到了备机上了。
编译安装版的nginx的首页路径:/usr/local/nginx/html/index.html
浏览器输入: 192.168.1.120:8001,结果以下图:
关闭主机keepalived: sudo systemctl stop keepalived.service
,刷新浏览器页面,结果以下图:
测试成功!