#!/bin/bash
# 安装 Keeplived
yum install keepalived -y
# 备份原始配置文件
cp /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak
# 配置 Keeplived
cat <<EOF > /etc/keepalived/keepalived.conf
! Configuration File for keepalived
# 全局参数
global_defs {
router_id LVS_DEVEL # 路由 ID,可以是任何字符串,唯一标识当前节点
}
# VRRP 脚本,用于检测服务状态
vrrp_script chk_http_port {
script "/usr/local/bin/check_apache.sh" # 检测脚本的路径和名称
interval 2 # 每隔 2 秒运行一次检测脚本
weight 2 # 检测脚本的权重,可用于判断主节点
}
# VRRP 实例
vrrp_instance VI_1 {
interface eth0 # 所在网卡的名称
state MASTER # 节点的状态,可选值为 MASTER 或 BACKUP
virtual_router_id 51 # 虚拟路由器 ID,唯一标识一个 VRRP 实例
priority 100 # 节点的优先级,主节点的优先级应该高于备份节点
advert_int 1 # VRRP 报文的发送间隔,单位为秒
authentication {
auth_type PASS # 认证类型,可选值为 PASS 或 AH
auth_pass 1111 # 认证密码,需与备份节点相同
}
virtual_ipaddress {
192.168.0.100/24 dev eth0 label eth0:0 # 虚拟 IP 地址和子网掩码,以及虚拟网卡的名称
}
track_script {
chk_http_port # 跟踪 VRRP 脚本的运行状态
}
}
EOF
# 启动 Keeplived
systemctl start keepalived
# 检查 Keeplived 的运行状态
systemctl status keepalived
以上脚本仅供学习使用。