keepalived的双节点及邮件通知实战案例
作者:尹正杰
版权声明:原创作品,谢绝转载!否则将追究法律责任。
一.配置邮件通知
1>.在QQ邮箱中获取授权码(依次点击"设置" ---> "账户" ---> "生成授权码"),如下图所示。
2>.配置发件人信息
[root@node102.yinzhengjie.org.cn ~]# tail -7 /etc/mail.rc #Add by Yinzhengjie set from=1053419035@qq.com set smtp=smtp.qq.com set smtp-auth-user=1053419035@qq.com set smtp-auth-password=xmwzfttagtlsbefd set smtp-auth=login set ssl-verify=ignore [root@node102.yinzhengjie.org.cn ~]#
3>.编写邮件通知的shell脚本
[root@node102.yinzhengjie.org.cn ~]# vim /etc/keepalived/notify.sh [root@node102.yinzhengjie.org.cn ~]# [root@node102.yinzhengjie.org.cn ~]# cat /etc/keepalived/notify.sh #!/bin/bash # #******************************************************************** #Author: yinzhengjie #QQ: 1053419035 #Date: 2019-11-23 #FileName: shell/menu.sh #URL: http://www.cnblogs.com/yinzhengjie #Description: The test script #Copyright notice: original works, no reprint! Otherwise, legal liability will be investigated. #******************************************************************** contact='1053419035@qq.com' function notify() { mailsubject="$(hostname) to be $1, vip转移" 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 100 ;; esac [root@node102.yinzhengjie.org.cn ~]# [root@node102.yinzhengjie.org.cn ~]# ll /etc/keepalived/notify.sh -rw-r--r-- 1 root root 945 Jan 10 11:40 /etc/keepalived/notify.sh [root@node102.yinzhengjie.org.cn ~]#
4>.为脚本添加执行权限
[root@node102.yinzhengjie.org.cn ~]# ll /etc/keepalived/notify.sh -rw-r--r-- 1 root root 945 Jan 10 11:40 /etc/keepalived/notify.sh [root@node102.yinzhengjie.org.cn ~]# [root@node102.yinzhengjie.org.cn ~]# chmod +x /etc/keepalived/notify.sh [root@node102.yinzhengjie.org.cn ~]# [root@node102.yinzhengjie.org.cn ~]# ll /etc/keepalived/notify.sh -rwxr-xr-x 1 root root 945 Jan 10 11:40 /etc/keepalived/notify.sh [root@node102.yinzhengjie.org.cn ~]#
[root@node102.yinzhengjie.org.cn ~]# scp /etc/keepalived/notify.sh node103.yinzhengjie.org.cn:/etc/keepalived/ The authenticity of host 'node103.yinzhengjie.org.cn (172.30.1.103)' can't be established. ECDSA key fingerprint is SHA256:auvfSu0iwTr185exd1pfdhwkXf9wkA8VTXwYx8JrM1c. ECDSA key fingerprint is MD5:ae:6b:0f:b6:0c:05:bb:b8:a4:fe:02:dc:70:42:4f:1e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added 'node103.yinzhengjie.org.cn,172.30.1.103' (ECDSA) to the list of known hosts. root@node103.yinzhengjie.org.cn's password: notify.sh 100% 945 1.1MB/s 00:00 [root@node102.yinzhengjie.org.cn ~]# [root@node102.yinzhengjie.org.cn ~]#