安装Keepalived并配置邮件通知功能


离线安装keepalived,所需的rpm包如下所示:

keepalived-1.3.5-6.el7.x86_64.rpm
net-snmp-agent-libs-5.7.2-33.el7_5.2.x86_64.rpm
net-snmp-libs-5.7.2-33.el7_5.2.x86_64.rpm
mailx-12.5-19.el7.x86_64.rpm

rpm包下载地址 : https://download.csdn.net/download/Victory_Lei/18415534

1、安装keepalived

安装命令:rpm -ivh *.rpm --nodeps --force

2、编写邮件通知脚本
[admin@admin01 keepalived]# cat notify.sh
#!/bin/bash
#
contact='root@localhost'
notify() {
local mailsubject="$(hostname) to be $1, vip floating"
local mailbody="$(date +'%F %T'): vrrp transition, $(hostname) changed to be $1"
echo "$mailbody" | mail -s "$mailsubject" $contact
}
  
case $1 in
master)
        notify master
        ;;
backup)
        notify backup
        ;;
fault)
        notify fault
        ;;
*)
        echo "Usage: $(basename $0) {master|backup|fault}"
        exit 1
        ;;
esac

提示:该脚本主要实现了,根据传递不同参数来发送不同内容的邮件;给脚本加上执行权限,并把脚本复制到其他需要安装keepalived的机器上。

[admin@admin01 keepalived]# scp -p notify.sh admin@admin02:/etc/keepalived #远程拷贝到其他机器上

3、修改配置文件

#备份原有的配置文件
[admin@admin01 keepalived]$ mv keepalived.conf keepalived.conf.bak

[admin@admin01 keepalived]$ vim keepalived.conf
#拷贝下面得内容到keepalived.conf

global_defs {
        router_id worker01            #路由ID, 主备的ID不能相同
notification_email {
         root@localhost              #邮件通知接收者
   }
   notification_email_from  admin03@localhost  #邮件发送者
   smtp_server 127.0.0.1               #邮件服务器地址为127.0.0.1
   smtp_connect_timeout 30          #超时时长为30秒
}

vrrp_instance VI_1 {
        state MASTER #Keepalived的角色。Master表示主服务器,从服务器设置为BACKUP
        interface eth0          #指定监测网卡
        virtual_router_id 1      #虚拟路由的ID号,两个节点设置必须一样
        priority 120           #优先级,BACKUP机器上的优先级要小于这个值
        advert_int 1            #设置主备之间的检查时间,单位为s
        track_script {
          #check_script
        } 
        authentication {        #定义验证类型和密码
                auth_type PASS
                auth_pass root123
        }
        virtual_ipaddress {     #VIP地址,可以设置多个:
               VIP 
        }
#配置keepalived发生故障转移时,触发执行的脚本
   notify_master "/etc/keepalived/notify.sh master "
   notify_backup "/etc/keepalived/notify.sh backup "
   notify_fault "/etc/keepalived/notify.sh fault "
}

4、安装mail命令

安装mail
rpm -ivh mailx-12.5-19.el7.x86_64.rpm --nodeps --force
提示:在其他机器上也需要安装mailx这个程序包,让其能够通过mail来发送邮件;
  验证:手动给脚本传递master|backup参数,测试在本机是否能够发送邮件?本机root用户能够收到邮件
 在这里插入图片描述

提示:可以看到我们给脚本一个master参数,它会以邮件的方式通知给本机的root用户;到此邮件脚本就准备好了;

配置keepalived邮件通知

配置keepalived邮件的接收者和发送者
加粗样式
提示:以上配置表示当发生故障转移,邮件通知接收者为root@localhost,发送者为node01_keepalived@localhost,邮件服务器地址为127.0.0.1,超时时长为30秒;

配置keepalived发生故障转移时,触发执行的

5、配置邮件客户端

在这里插入图片描述

提示:配置以上配置以后,在node01和node02上就可以 写某个邮箱,向我们在脚本里指定的接收者邮箱发送邮件了;配置邮件客户端需要在对应的邮箱里开启POP3/SMTP,然后认证以后,它会告诉我们smtp-auth-password的一个字符串,如下所示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6、测试

停掉主节点的keepalived,看是虚IP会转移到其他节点和邮件发送

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值