keepalived 邮件告警

为方便运维,我们需要及时掌握线上 keepalived 的运行状态。本文以163邮件为例,讲述当 keepalived 发生状态切换时,如何进行邮件告警。

一、设置163邮箱的SMTP服务器

登录163邮箱:
在这里插入图片描述
在这里插入图片描述
系统会提示输入授权码,即为第三方客户端的登录密码。
在这里插入图片描述
在这里插入图片描述

二、编写脚本

此处采用python脚本:

#coding:utf -8

import sys
import socket
import smtplib							#smtp服务器
from email.mime.text import MIMEText	#邮件文本

def SendMail(argv):
	if len(argv) < 2:
		print 'Error: parameter invalid!'
		return
	
	state = argv[1]
	
	#获取本机计算机名称
	hostname = socket.gethostname()
	#获取本机ip
	ip_str = socket.gethostbyname(hostname)

	#邮件标题
	subject = "keepalived: %s change to state: %s" % (ip_str, state)
	
	#邮件正文内容
	content = subject
	message = MIMEText(content,"plain","utf-8")	#plain 文本格式,utf-8 编码格式

	sender = "******@163.com"			#发送方
	sender_password = "******"			#发送方邮箱密码,即为前面设置的授权码
	
	recver = "******@163.com"			#接收方

	#构建邮件
	message['Subject'] = subject		#邮件标题
	message['To'] = recver				#收件人
	message['From'] = sender			#发件人

	#发件人登录
	smtp = smtplib.SMTP_SSL("smtp.163.com",465)	#实例化smtp服务器
	smtp.login(sender,sender_password)

	#发送邮件
	smtp.sendmail(sender, [recver], message.as_string())	#as_string 对 message 的消息进行了封装
	smtp.close()


if __name__ == "__main__":	
    SendMail(sys.argv)
三、修改 keepalived 配置文件

vim /etc/keepalived/keepalived.conf

在这里插入图片描述

四、测试

关闭 master:

systemctl stop keepalived

检查 backup 发送邮件是否成功:
发送者邮箱:
在这里插入图片描述
接收者邮箱:
在这里插入图片描述

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值