【Zabbix】分布式监控系统Zabbix【二】

时间:2023-01-27 07:59:11

一.Zabbix基本操作

  1.主机群组、主机、模板、触发器

    a.创建主机群组和主机的过程比较简单,不再介绍

    b.配置模板:

      创建一个模板,将其分组到Template组,添加配置应用:

      【Zabbix】分布式监控系统Zabbix【二】

      【Zabbix】分布式监控系统Zabbix【二】

      给应用创建监控项:(如果没有存储时间则无法生成图表)

      【Zabbix】分布式监控系统Zabbix【二】

      然后再在主机中添加相应的模板,可以查看是否成功监控

      【Zabbix】分布式监控系统Zabbix【二】

    c.触发器设置:(可直接在items中修改,实际中,往往根据正常情况下的参数值设定告警值)

      【Zabbix】分布式监控系统Zabbix【二】

      触发条件后告警如图:

      【Zabbix】分布式监控系统Zabbix【二】

  2.用户组、用户权限、用户告警

    Zabbix可以通过多种方式向用户发出告警通知,例如短信,微信,钉钉,邮件等,例如邮件:

    a.创建用户组,赋予权限:

      【Zabbix】分布式监控系统Zabbix【二】

      【Zabbix】分布式监控系统Zabbix【二】

    b.创建用户,赋予权限:

      【Zabbix】分布式监控系统Zabbix【二】

    c.Linux安装邮件服务(在安装运行之前如果有服务sendmail或postfix,推荐关闭)

yum install mailx

      修改mail.rc配置文件

vim /etc/mail.rc

      在末尾添加自己的邮箱,客户端授权密码等

      【Zabbix】分布式监控系统Zabbix【二】

      注:云服务器上默认关闭的25端口,直接使用是发送不了邮件的,解决办法:依次执行如下命令,并在mail.rc文件中添加set ssl-verify=ignore和set nss-config-dir=/root/.certs

mkdir -p /root/.certs/      #创建目录,用来存放证书
echo -n | openssl s_client -connect smtp..com: | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/.crt      #向163请求证书,证书名为163.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/.crt
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i 163.crt
certutil -L -d /root/.certs      #列出目录下证书

    d.创建邮件发送的shell脚本

      ①在var/lib/zabbix/alertscripts文件夹中创建shell脚本

touch zabbix-send-mail.sh

      ②编辑脚本内容如下:

      【Zabbix】分布式监控系统Zabbix【二】

      ③给脚本执行权限

chmod a+x zabbix-send-mail.sh

      ④测试执行脚本,例如

./zabbix-send-mail.sh xxx@qq.com "通知公告" "hello world"    #这里三个参数分别对应$1,$2,$3

    e.Zabbix前端创建自定义的邮件告警

      ①创建告警媒介

      【Zabbix】分布式监控系统Zabbix【二】

      ②用户关联告警媒介

      【Zabbix】分布式监控系统Zabbix【二】

      ③创建事件

      【Zabbix】分布式监控系统Zabbix【二】

      告警操作(恢复操作是Recovery operations,与告警类似)

      【Zabbix】分布式监控系统Zabbix【二】

      

  附:内网server监控外网agent

    1.内网zabbix-server监控外网zabbix-agent需要知道内网的公网ip,开启外网zabbix-agent的10050端口。(如果是云服务器,需配置安全组)

      【Zabbix】分布式监控系统Zabbix【二】

    2.查看内网的公网ip,可以在内网服务器上执行(没有telnet可以通过yum 安装)

telnet x.x.x.x 10050      #x.x.x.x 是你的公网ip,公网ip的10050端口是要开放的

    再在外网服务器上执行netstat -an | grep 10050,可以看到内网服务器对应的公网ip

      【Zabbix】分布式监控系统Zabbix【二】

    重启zabbix