Personal learning records
zabbix安装 监控 告警流程
zabbix安装 监控 告警流程

zabbix安装 监控 告警流程

zabbix全流程梳理:
  • server端:
    • 进入zabbix官网,按照官网server端的教程走下来。
    • 使用nginx的话需要将zabbix.conf中的用户;组改为nginx,再确保session和web文件夹的属主属组为nginx;最后将nginx.conf的server模块删除。
    • 启动zabbix-server服务,至此server端配置成功。
  • agant端:
    • 进入zabbix官网,按照agant端的操作走下来。
    • 进入agant的配置文件,将Server,ServerActive两项改为server端所在的ip, 而后再把Hostname写为方便记忆的名字。
    • 启动zabbix-agant服务,至此服务端配置完成。
  • zabbix添加监控机器的过程
    • 进入server端的前端页面,先在用户设置中把语言改为中文,保存。
    • 点击配置→主机群组,新建一个主机群组,随意取名
    • 点击配置→模板,新建一个模板,在其上配置监控项,触发器,方便后续添加的主机一键使用。(模板中注意要把历史数据保留时长选项打开,否则监测→最新数据 中无数据出现,触发器也不会被触发。)
    • 点击配置→主机,新建主机,名称为之前agant配置文件中取的方便记忆的名字,群组选为第一步创建的群组,ip写成agant所在的ip即可
    • 点击刚添加的主机,在其模板选项中选择链接模板,将其与第二部创建的模板链接起来,保存后出去即可看到模板的监控项与触发器被用到了这台主机上。
  • 钉钉告警、邮箱告警流程
    • 首先最少需要设置一个监控项和触发器,这里设置的监控项为net.tcp.listen[80],即监测80端口是否开启
    • 邮件:
      • 触发器设置为{test:net.tcp.listen[80].last()}=0,即最后一次数据若为0(0关1开),则触发。
      • 进入管理→报警媒介类型,编辑Email媒介,smtp服务器设置为smtp.qq.com;HELO和电邮写给予授权码的邮箱。用户名称随意,密码为授权码。(若不加密25端口一直发送失败,可以尝试端口换为465后开启SSL/TLS,勾选两个验证即可成功。)
      • 进入配置→动作,新建一个动作,条件选择监控80端口的触发器,操作选择发送消息,用户选为页面登录用户,保存。
      • 进入管理→用户,点击登录用户,将其报警媒介点开,添加一条新的媒介,类型选择为Email,收件人为想通知人的邮箱。
      • 将80端口关闭,邮件被成功发送到邮箱里面。
      • 钉钉
        • 下载python3 python3-requests模块
        • 新建钉钉机器人,获取到webhook,密钥,将其记录下来
        • 在网上偷到python脚本,保存在zabbix_server.conf设置的AlertScriptsPath路径下,给予其x执行权限。
        • 在/etc/zabbix/下新建python脚本所需要的ding.conf,将上一步获取到的两个值按照指定格式写入。
        • 将/usr/lib/zabbix/alertscripts/的属主属组改为zabbix,让zabbix有权限进入后调用脚本
        • 进入管理→报警媒介类型中新建,名称为ding,设置脚本名称dingding.py,参数三个:{ALERT.SENDTO},{ALERT.SUBJECT},{ALERT.MESSAGE}。
        • 进入配置→动作中,新建动作,触发器还是选择上一步检测80端口的触发器,操作中设置发给用户Admin,仅送到ding,自定义消息内容网上偷一份。钉钉告警设置成功
        • 关闭80端口,可以看到机器人发送消息成功。

邮件告警结果:(开启远程命令,达到故障尝试自愈的目的,此处手动关闭了nginx,根据提前配置的自愈规则尝试重启,自愈成功)

顶顶告警结果

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注