[原创]Haproxy Keepalived邮件提醒

时间:2022-07-18 15:48:16 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
[原创]Haproxy+Keepalived邮件提醒



一,概述 在运维当中,服务的监控是很重要的,服务器自身监控之外,就是服务状态的监控。之前搭建的haproxy+keepalived四层负载均衡架构中,keepalived是提供了一个notify_让管理员设置,在状态发生转移之后进行什么样的提醒。今天写一个简单的邮件通知来提醒管理员。 二,程序 邮件提醒[Python实现] #-*-coding:UTF-8-*- #author:LingYunyi

#email:lingyunyi888@gmail.com #date:2012-08-09

#filename:gmail.py(注意:文件名和系统默认的模块名不能相同,报错ImportError: No module named#Haproxy进程启动的时候,发送提醒邮件

#提醒邮件设置在keepalivednotify_ 字段上面,当状态进行转移时会自动调用程序,实现也可以用shell #import sys

#sys.path.append('c:\\pytho27\\lib\\smtplib.py') #print sys.pathimport smtplib

from email.mime.text import MIMEText

from email.mime.multipart import MIMEMultipart import sys


smtp_server = 'smtp.qq.com'msg = MIMEMultipart('alternative') msg['Subject'] = "Haproxy提醒" msg['From'] = '176188306@qq.com'

msg['To'] = '176188306@qq.com' if sys.argv[1]!="master" and sys.argv[1]!="backup" and sys.argv[1]!="fault": sys.exit() else:

notify_type=sys.argv[1]

text = "Hi!Haproxy 进程被激活,请注意哦!" html = """\ <html>

<head></head> <body>

<p>请注意!</p> 您好,管理员!<br>

<font color=red>您的Haproxy代理服务器+notify_type+进程已经被激活,请注意!</font> </body> </html>

"""part1 = MIMEText(text, 'plain') part2 = MIMEText(html, 'html')


msg.attach(part1)

msg.attach(part2)#message = MIMEText('Haproxy进程被激活,请注意!')#msg['Subject'] = 'The contents of %s' % message

#msg['mailContentContainer'] = 'Haproxy进程被激活,请注意!'smtp = smtplib.SMTP() smtp.connect(smtp_server)

smtp.login("176188306@qq.com","111111") smtp.set_debuglevel(1)

smtp.sendmail("176188306@qq.com","176188306@qq.com",msg.as_string()) smtp.quit()

print 'send mail successfully'

三,使用方法在keepalived.conf中添加#状态通知 notify_master "/etc/keepalived/gmail.py master" notify_backup "/etc/keepalived/gmail.py backup" notify_fault "/etc/keepalived/gmail.py fault"四,其它方法也可以。主要是对服务的监控,其中我们用了sys.argv来获取命令行参数。这个具体使用可以见python手册。


本文来源:https://www.wddqw.com/doc/19f40637793e0912a21614791711cc7930b77861.html