zabbix应用

一、Zabbix监控nginx

1、安装nginx

[root@server8 ~]# cd /etc/nginx/conf.d/
[root@server8 conf.d]# vim default.conf

在网页访问172.25.66.8/status

为了安全,我们需设定只允许本机访问

2、添加自定义key配置文件

[root@server8 conf.d]# cd /etc/zabbix/ 
[root@server8 zabbix]# cd zabbix_agentd.d/ 
[root@server8 zabbix_agentd.d]# cp userparameter_mysql.conf userparameter_nginx.conf ##复制一个nginx.conf文件

测试是否可以拿到key值

3.写到配置文件

 vim userparameter_nginx.conf

4、在server端安装zabbix-get查看能否拿到key值

5、在web监控端,点击监控的serevr8创建监控项

将之前我们拿到的4个key值都添加到监控项
(1)添加nginx_active监控项

(2)添加nginx_accepts监控项

(3)添加nginx_requests监控项

(4)添加nginx_handled监控项

完成添加后,点击图形,创建图形,加入之前添加的监控项

选择之前创建的图形nginx_status,再点击预览

二、zabbix使用percona的模板来监控mysql

zabbix自带的MySQL插件来监控mysql数据库,你会发现,自带的mysql监控项是很少的,根本满足不了公司的需求。由于它本身自带的模板太过简单了,所以需要做更详细的监控,而percona就提供了这个详细监控的模版以及脚本,解决了监控不全面的问题。

1、percona插件安装:看到会生成2个目录,/var/lib/zabbix/percona/scripts是监控脚本目录,/var/lib/zabbix/percona/templates是监控mysql的xml模版目录

2.进入templates目录,把模板文件复制到zabbix_agentd目录下,查看过滤应该是190个监控项

3.修改 ss_get_mysql_stats.php文件,设置MySQL的用户名和密码,用户密码为本地

[root@server1 zabbix_agentd.d]# cd /var/lib/zabbix/percona/scripts/
建立percona的php配置文件
[root@server1 scripts]# vim ss_get_mysql_stats.php.cnf

[root@server1 scripts]# mysql -p ##登录查看是否有数据库 
Enter password: 
Welcome to the MariaDB monitor. Commands end with ; or \g. 
Your MariaDB connection id is 686 
Server version: 5.5.52-MariaDB MariaDB Server 
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others. 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. MariaDB [(none)]> Bye

4、测试获取数据是否成功

5.在server端,get测试

6.在web端导入percona-mysql模版

点击配置,主机,点击右上角的导入,添加上聚合图形

然后在agent模版界面链接此模版即可

查看此时的监控项为239个

三、利用onealert实现zabbix的告警系统

通过使用 OneAlert 的监控工具集成功能,轻松对接第三方监控工具告警事件。

3.1Zabbix传统告警方法:

  • Email:调用 sendmail 、sendEmail 等脚本通过 SMTP 发送邮件
  • 飞信:飞信已经退出历史舞台,不再有人使用
  • 189/139:发送邮箱邮件至邮箱,邮箱将短信转到用户手机短信,存在一定的延迟
  • 微信:需要申请一个微信公众号,并接入API,整个流程比较复杂,而且存在会话时间限制
  • 短信:众多短信网关收费不同、稳定性也不确定,需要通过API接入

3.2传统告警方式的不足

  • Zabbix 邮件告警经常发不出去
  • 如需短信告警,要么购买短信猫要么购买短信 API,整个流程太麻烦
  • 微信告警需要申请公众号以及 API 接入,而且会话有时间限制
  • 夜间的告警基本成为一个摆设,试问谁能被微弱的短信声叫醒
  • 阿里云、腾讯云、Zabbix 各种系统告警都需要单独配置,工作繁琐
  • 普遍缺少告警分析
  • 139/189 发送告警存在明显的延迟

3.3 onealert告警功能

  • 告警 All In One,支持微信、邮箱、短信、APP、电话告警
  • 支持接入 Zabbix、Nagios、阿里云、腾讯云、监控宝等等告警信息
  • 灵活的分配策略,可灵活的分配告警信息发送给相关人员
  • 微信、邮箱、app 等告警方式全部免费

3.4 相关操作

使虚拟机能够上网

  • 真机中打开路由功能

  • 虚拟机中:将网关设置为真机的ip,并添加解析,看是否能ping通百度

vim /etc/reslove.conf

2.在onelert官网进行相关设置

(1)创建应用APP:初次使用时,需要将您监控系统中的告警接入到 OneAlert 中来。OneAlert 把您的每个监控点称为一个应用服务,您可以在「配置」->「应用」模块添加新应用。选择「添加应用」后,您可以选择匹配的监控平台,系统会以向导的方式指引你完成配置

(2)设置分派策略:您可以将不同的应用、不同级别、不同内容的告警分派给不同的人员。你也可以将团队成员根据角色划分不同级别,比如一线运维人员实时接收告警,二线测试开发人员接收升级(长时间未处理解决)后的告警。

设置通知策略:您可以设置自己或团队成员用何种渠道接收告警,在何种时间、接收什么级别的告警。

3.在zabbix-server端进行配置,可参考OneAlert的官方文档

通过使用 OneAlert 的监控工具集成功能,轻松对接第三方监控工具告警事件。

每一个需要集成的第三方工具,都是一个OneAlert App应用,每个应用的安装方式有些差异。通过Agent集成,如Zabbix、Nagios、Solarwinds、VMWare vSphere 等工具,基本上需要在监控服务器部署告警Agent探针,该探针的作用是将监控工具的告警信息转发至云平台。

4.在zabbix的web界面中添加告警媒介

  • 管理->用户->Admin->报警媒介->添加

因为这里没有用到其他3种方式,所以禁用掉

5.测试

在server8中关闭掉zabbix-agent,5分钟后会发送告警通知,如果绑定手机微信则会在微信通知,等待认领告警

认领告警,再将server8的zabbix-agent服务开启

四、zabbix使用JMX监控tomcat

zabbix-agent端:

  • 安装tomcat服务,以及搭建java环境

  • vim /usr/local/tomcat/bin/catalina.sh   使JMX能远程监控Tomcat

server2:jave-gateway

zabbix 想知道某主机的java 具体使用情况,需要去zabbix java gateway询问,然后java gateway通过management的API去应用程序查询,然后应用程序需要开启jmx的远程连接,查询到结果之后将结果保存并传回给zabbix server展示,因此zabbix必须要通过java gateway进行协助。java gateway可以安装在任何一台机器,即可以不和zabbix server安装在一个主机上。

  • rpm -ivh zabbix-java-gateway-3.4.6-1.el6.x86_64.rpm

zabbix_java_gateway.conf 配置文件不用变动

zabbix-server端:

测试:在zabbix web页面中

五、实现zabbix-proxy

Zabbix proxy是在大规模分布式监控场景中,采用的一种用以分担server端压力的分层结构。Zabbix-proxy是一个监控代理服务器,它收集监控到的数据,先存放在缓冲区,保存的时间可以通过配置文件设定,然后再传送到zabbix-server,这样也大大减缓了zabbix-server的压力;监控代理需要一个单独的数据库

实验环境:

server1:zabbix-server

server2:zabbix-proxy

server8:zabbix-agent

zabbix-proxy的配置:

1.安装mysql数据库

2.安装zabbix-proxy

3.修改zabbix_proxy的配置文件

4.zabbix-proxy也是一个小型的server,也需要存储数据,所以需要创建数据库,不能跟server公用一个数据库(一般server不与proxy在同一主机)

5.在zabbix的web页面进行agent代理的配置

  • 管理--》agent代理程序--》创建代理

  • 输入zabbix-proxy的主机名,并添加其代理的主机server8

6.在zabbix-agent端,编辑 zabbix_agentd.conf文件,将原来指向zabbix-server的ip指向zabbix-proxy,完成后重启服务

7.在zabbix-proxy端,编辑/etc/zabbix/zabbix_proxy.conf(zabbix-proxy这台主机原来是java网关)

测试:

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值