Keppalived应用

本文介绍了Keppalived在主备模式下的应用,用于实现服务器间的浮动IP和状态监控。详细阐述了Keppalived的安装配置过程,包括健康检查脚本和权限设置。同时,提供了进程状态变化的C++实现示例以及排查配置问题的实用方法,强调了脚本命名避免与进程名冲突的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Keppalived应用

使用目的

主备模式下,通信程序分别部署在两台服务器,对外只提供一个ip供用户发送数据包。

功能点

  • 浮动ip(虚拟ip)配置
  • 主备服务器状态变化通过信号通知进程

keepalived安装配置

可以按照以下步骤在CentOS系统上安装和配置keepalived:

  1. 安装epel-release源
sudo yum install epel-release
  1. 安装keepalived软件包
sudo yum install keepalived
  1. 启动keepalived服务
sudo systemctl start keepalived
  1. 设置开机启动
sudo systemctl enable keepalived
  1. 配置keepalived

keepalived的配置文件位于/etc/keepalived/keepalived.conf中,请根据需要进行配置。以下是一个简单的示例配置文件:

!Configuretion File for keepalived

global_defs {
     router_id NodeA
     script_user root
     enable_script_security
}

vrrp_script chk_xwudp {
    script "/etc/keepalived/check_xw.sh"
    interval 5
    weight -2
    timeout 2
    fall 2
    rise 2
    decrease 2
}

vrrp_instance VI_1 {
     state MASTER
     interface ens3
     virtual_router_id 55
     priority 101
     advert_int 1
     authentication  {
              auth_type PASS
              auth_pass 1111
     }
     
     virtual_ipaddress  {
              192.168.160.50/24 brd 192.168.160.50 dev ens3 label ens3:0
     }

    track_script {
             chk_xwudp
     }

     notify_master "/etc/keepalived/notify_master.sh"
     notify_backup "/etc/keepalived/notify_backup.sh"
}

这个配置文件定义了一个主备服务器,使用ens3上的虚拟IP地址192.168.160.50,并绑定到网卡ens3:0上。当主服务器失效时,备服务器将会自动接管虚拟IP地址并成为新的主服务器,确保服务的连续性和可用性。

更详细的配置说明如下:

vrrp_script用于定义一个脚本,该脚本将会在主备服务器之间定期执行,以检查服务的运行状态。在这个配置中,脚本检查xwudp进程的健康状况,如果进程已终止,则认为服务不可用,脚本返回1。
state用于指定当前服务器的状态,可以是MASTER或BACKUP,其中MASTER表示主服务器,而BACKUP表示备服务器。
interface用于指定虚拟IP地址要绑定的物理网卡,这里使用ens3。
virtual_router_id用于指定一个虚拟路由ID,必须在主备服务器中保持一致。
priority用于定义主备服务器的优先级,值越大表示优先级越高,主服务器必须优于备份服务器,默认值为101,范围0-255。
advert_int用于指定心跳消息的发送间隔,单位是秒,默认值为1秒。
virtual_ipaddress用于定义一个或多个虚拟IP地址。
track_script用于指定脚本,如果脚本返回值非0,则主服务器的优先级会降低,备份服务器则可以自动接管虚拟IP。

以下是一个健康检查脚本,检测xwudp进程是否存活:

/etc/keepalived/check_xw.sh


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值