Zabbix生产案例实战 1.项目规划 主机分组: 交换机 Nginx Tomcat MySQL 监控对象识别: 1.使用SNMP监控交换机 2.使用IPMI监控服务器硬件 3.使用Agent监控服务器 4.使用JMX监控Java 5.监控MySQL 6.监控Web状态 7.监控Nginx状态 SNMP监控: 1.1.交换机上开启snmp。 config t snmp-server community public ro end 1.2.在zabbix上添加监控。 设置SNMP interfaces 3.关联监控模板 IPMI: 建议。使用自定义item,本地执行ipmitool命令来获取数据。 JMX:(使用Zabbix Java Gateway代理) 1.安装yum install -y zabbix-java-gateway java-1.8.0 2.配置vim /etc/zabbix/zabbix_java_gateway.conf 3.启动systemctl start zabbix-java-gateway.service 4.端口 进程 5.[root@linux-node1 ~]# vim /etc/zabbix/zabbix_server.conf 设置Java Gateway地址 6.重启zabbix server JMX三种类型:1.无密码认证 2.用户名密码认证 3.ssl [root@linux-node2 ~]# cd /usr/local/src [root@linux-node2 src]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.0.36/bin/apache-tomcat-8.0.36.tar.gz [root@linux-node2 src]# tar zxf apache-tomcat-8.0.36.tar.gz ^C [root@linux-node2 src]# mv apache-tomcat-8.0.36 /usr/local/ [root@linux-node2 src]# ln -s /usr/local/apache-tomcat-8.0.36/ /usr/local/tomcat [root@linux-node2 src]# /usr/local/tomcat/bin/startup.sh 开启jmx远程监控 [root@linux-node2 ~]# vim /usr/local/tomcat/bin/catalina.sh CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8888 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=192.168.56.12" [root@linux-node2 ~]# /usr/local/tomcat/bin/shutdown.sh [root@linux-node2 ~]# /usr/local/tomcat/bin/startup.sh 手动检测监控状态 [root@linux-node1 ~]# yum install -y zabbix-get 1.开启Nginx监控 2.编写脚本来进行数据采集。 3.设置用户自定义参数 4.重启zabbix-agent 5.添加item 6.创建图形 7.创建触发器 8.创建模板 1.脚本: 2.上传到/etc/zabbix/zabbix_agentd.d 3.修改agent配置Include=/etc/zabbix/zabbix_agentd.d/*.conf [root@linux-node1 zabbix_agentd.d]# chmod +x zabbix_linux_plugin.sh [root@linux-node1 zabbix_agentd.d]# ./zabbix_linux_plugin.sh Usage: ./zabbix_linux_plugin.sh {tcp_status key|memcached_status key|redis_status key|nginx_status key} location /nginx_status { stub_status on; access_log off; allow 127.0.0.1; deny all; } [root@linux-node1 zabbix_agentd.d]# cat linux.conf UserParameter=linux_status[*],/etc/zabbix/zabbix_agentd.d/zabbix_linux_plugin.sh "$1" "$2" "$3" [root@linux-node1 zabbix_agentd.d]# systemctl restart zabbix-agent [root@linux-node1 ~]# zabbix_get -s 192.168.56.11 -k linux_status[nginx_status,8080,active] 1 自定义告警脚本: 1.放在cd /usr/lib/zabbix/alertscripts 2.要支持三个参数 1 收件人 2.主题 3,内容 3.执行权限 4.Web界面添加 5.修改Actions 使用Percona监控插件监控MySQL yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm https://www.percona.com/doc/percona-monitoring-plugins/1.1/zabbix/index.html#installation-instructions yum install percona-zabbix-templates php php-mysql 1.php脚本用来数据采集 2.shell 调用这个php 3.zabbix配置文件 4.zabbix模板文件 创建zabbix监控专用用户。