实时警报通知:微信告警通知的重要性解析
1139
2022-11-04
滴滴夜莺配置邮件和微信告警
本教程主要讲述如何配置微信以及邮件告警,配置情况可能存在两种情况:第一种为夜莺部署在可以实现上网的外网环境中,第二种为部署在内部局域网,无法实现上网功能的服务器上。
第一种情况:机器可以上网
一、配置邮件告警:
二、微信告警:
1、首先通过微信扫描登陆企业微信,注册企业微信信息,例如名称为夜莺监控(不需要验证主体信息),不认证默认有200个人的上限,足够使用
2、在通讯录模块下,根据需要添加企业成员,如图:
4、配置rdb.yml文件:打开/home/n9e/etc/下面的rdb.yml文件,主要配置的内容如下:
7、在告警策略中,添加告警接收人即可,如果有多个那么需要给每个用户配置IM字段,可将用户统一加入到组中,如图:
8、测试告警即可,如图:
第二种情况
环境准备:
1、一台无网络的机器用来部署夜莺系统
2、一台可以上网的机器(代理服务器),用来部署rdb模块(rdb模块需要读取企业微信的id以及secret等信息,因此需要外网环境)
一、微信告警:
微信告警的主要模块为judge和rdb模块,rdb模块需要放置到具有外网环境的机器中(代理服务器),操作步骤如下:
1、将控制文件control和n9e-rdb二个可执行文件以及对应的依赖配置文件拷贝过去,主要涉及的文件如下:
注意:因为后面统一通过systemctl 方式来管理进程,因此可不使用control来管理
etc中的主要配置文件内容如下(3.1.6版本):
上图中的agent.yml和identity.yml为agent的依赖文件,lop.yml、mysql.yml、gop.yml、rdb.yml为rdb依赖文件,address.yml为此三个模块共有的依赖文件
2、配置rdb模块:
首先编辑rdb.yml文件,修改内部的IP地址为服务端的ip地址,如图:
上图中的redis地址为服务端的redis地址,默认情况下到服务端的redis端口6379是无法telnet通,因此需要先去服务端修改配置文件vim /etc/redis.conf,将bind 127.0.0.1改为0.0.0.0
编辑mysql.yml文件,修改其中的ip地址为服务端的IP地址,如图:
默认情况下服务端的MySQL不接受远程连接,因此需要在服务端mysql里进行授权,执行命令如下:
设置完成后再次回到rdb模块所在机器,执行登陆测试命令(可能需要安装mysql客户端才可以连接),如图表示测试成功:
编辑address.yml文件,修改其中的rdb模块IP地址为本机IP,如图:
注意:address.yml中只有rdb模块的IP地址为本机ip,其余都是服务端的IP地址,rdb.yml文件的微信告警配置方法和第一种方案配置方法一样,注意需要在用户界面创建告警微信用户并配置im的值
3、现在回到服务端,将rdb模块取消(可删除或者重命名),然后编辑address.yml文件,修改其中的rdb模块的ip地址为其所在机器的IP地址(具备网络的那个机器),如图:
4、编辑nginx配置文件vim /etc/nginx/nginx.conf,修改其中rdb的代理位置指向到代理服务器,如图:
修改完成后执行命令systemctl reload nginx 或者systemctl restart nginx 即可
接下来通过监控告警系统中的采集配置以及告警策略进行告警测试,如图:
二、邮件告警:
由于rdb模块 已经部署在代理服务器上(可上网),因此可以在用户资源中心下的smtp配置位置按照实际的smtp情况配置即可,如图:
附加:
如果rdb模块部署在内网中,那么此时如果要实现邮件告警就需要通过nginx代理方式进行配置,方法如下:
1、在rdb模块所在机器的/etc/hosts文件中添加域名解析(域名可以自己设置),解析的IP地址即为代理服务器的IP地址,如图:
2、在代理服务器上安装nginx,编辑配置文件nginx.conf,添加内容如下:
配置完成后重新加载配置文件systemcl reload nginx 或者systemctl restart nginx
说明:上面两个步骤的意思解析为:内网服务器通过第一步中的域名解析到代理服务器上,然后访问代理服务器的25端口,通过代理到外网的其他smtp地址的25端口,从而实现smtp配置成功
3、配置完成后,在用户资源中心,smtphost位置填写上面内网服务器中配置的自定义域名,然后端口默认25 ,账号密码填写代理的外网的smtp地址账号密码然后测试即可
注意:也可以配置通过域账号登陆,此时可以在域账号界面,设置邮箱地址和IM字段,然后统一添加到组中,通过组实现告警
发表评论
暂时没有评论,来抢沙发吧~