ubuntu系统实现主备服务器之keepalived配置

需要四大步骤

  1. 先安装 keepalived组件
  2. 创建并配置keepalived.conf文件
  3. 创建并配置check_nginx.sh文件
  4. 检查状态,验证。

1.安装 keepalived组件

sudo apt-get install keepalived

2.创建并配置keepalived.conf文件

cd /etc/keepalived/
sudo touch keepalived.conf
sudo vi keepalived.conf

 

主:


vrrp_script chk_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 2
    weight 2
}
  
vrrp_instance VI_1 {
    interface ens160                 # 根据你的网络接口名称调整
    state MASTER                     #设置角色,这里为主设备
    virtual_router_id 51             #设置虚拟路由器ID组,主备一致
    priority 101                     #优先级,数值越大,优先级越高
    advert_int 1                     #vrrp组之间的心跳包频率,1s 
    authentication {                 #组认证信息
        auth_type PASS               #认证方式,密码
        auth_pass 12345              #认证密码
    }
    virtual_ipaddress {
        172.18.19.6                  #虚拟IP地址
    }
    track_script {                   #健康检查脚本
        chk_nginx
    }
}
 

备:

vrrp_script chk_nginx {
    script "/etc/keepalived/check_nginx.sh"
    interval 2
    weight 2
}

vrrp_instance VI_1 {
    interface ens160                 # 根据你的网络接口名称调整
    state BACKUP                     #设置角色,这里为备设备
    virtual_router_id 51             #设置虚拟路由器ID组,主备一致
    priority 90                          #优先级,数值越大,优先级越高
    advert_int 1                        #vrrp组之间的心跳包频率,1s 
    authentication {                  #组认证信息
        auth_type PASS               #认证方式,密码
        auth_pass 12345              #认证密码
    }
    virtual_ipaddress {
        172.18.19.6                   #虚拟IP地址
    }
    track_script {                     #健康检查脚本
        chk_nginx
    }
}

 

 

#启动keepalived
sudo systemctl start keepalived

 

3.创建并配置check_nginx.sh文件

主备一样

sudo touch check_nginx.sh
sudo vi check_nginx.sh

#!/bin/bash
if systemctl is-active --quiet nginx; then
    exit 0
else
    exit 1
fi
#授予文件权限
sudo chmod +x /etc/keepalived/check_nginx.sh

 

4.检查状态

sudo systemctl status keepalived

 验证:两步走,同时进行。

1.可以手动DOWN掉主的网卡,再检查keepalived状态,将网卡启动,再检查keepalived状态。

2.长ping虚拟地址,看丢包状态。理论上会丢一个包或者不丢包。

 
posted @ 2023-09-27 09:47  年楚河  阅读(596)  评论(0)    收藏  举报