实验环境
准备四台虚拟机server1-4 版本为rhel7.6 如果不会部署可以查看我之前的博客 企业常用linux虚拟环境部署
zabbix监控nginx
nginx压缩包 
server2操作
首先在server2 解压这个压缩包
tar zxf nginx-1.20.1.tar.gz
 源码编译安装nginx服务并安装监控模块
./configure --with-http_ssl_module --with-http_stub_status_module
如图缺少gcc

yum install gcc -y
如图缺少pcre 
yum install pcre-devel -y
 如图缺少openssl 
yum install openssl-devel -y
出现这个以后 则表示可以进行编译 
make 编译

make install 安装

制作软连接方便运行
cd /usr/local/nginx/
ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/
 修改nginx配置文件 

nginx -t
测试配置文件语法是否正确 
nginx
运行 
获取Active connections的信息
curl -s http://localhost/status | grep Active |awk '{print $3}'

查看配置文件,通过agent获取信息
vim /etc/zabbix/zabbix_agentd.conf


cd /etc/zabbix/zabbix_agentd.d/
ls
cp userparameter_mysql.conf userparameter_status.conf
vim userparameter_status.conf
编写 设置键值为nginx.active
UserParameter=nginx.active,curl -s http://localhost/status | grep Active |awk '{print $3}'
重启agent服务

server1操作
下载zabbix-get yum install -y zabbix-get
 获取agent发送出的信息
zabbix_get -s 172.25.21.2 -p 10050 -k "nginx.active"

web监控查看
创建监控项 
键值必须一致 不能写错  加入图形  写图形的名称 和加入监控项  查看图形 
zabbix监控mysql
server1(server端也是agent端)
 可以看到server端自带的mysql监控配置文件内容,指定了 zabbix agent 如何获取 mysql 服务的各种信息
在/var/lib/zabbix 目录中新建“.my.cnf”文件,用以指定 zabbix agent 如何登陆数据库,默认使用的是 zabbix 用户,可以在 zabbix_server.conf 文件中找到密码。
mkdir /var/lib/zabbix
cd /var/lib/zabbix
vim .my.cnf
[mysql]
host = localhost
user = zabbix
password = westos
socket = /var/lib/mysql/mysql.sock
[mysqladmin]
host = localhost
user = zabbix
password = westos
socket = /var/lib/mysql/mysql.sock
  在server1中 测试 可以获取到信息
zabbix_get -s 127.0.0.1 -p 10050 -k "mysql.version"
zabbix_get -s 127.0.0.1 -p 10050 -k "mysql.ping"

web中添加mysql模板导入监控项和图形
加入Template DB MySQL

导入的监控项
 导入的图形

导入自定义的mysql模板
首先删除上面导入的mysql模板 安装percona-mysql模板安装包

rpm -vih percona-zabbix-templates-1.1.8-1.noarch.rpm
 进入安装好的模板文件中 将userparameter_percona_mysql.conf加入到agent的目录中
cd /var/lib/zabbix/percona
ls
cd templates/
ls
cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
 编辑php脚本,修改连接mysql数据库的用户和密码为root
cd /var/lib/zabbix/percona/scripts/
ls
vim ss_get_mysql_stats.php

安装php-mysql
 重启服务
systemctl restart zabbix-agent.service
测试查看模块是否添加成功,测试后在/tmp/目录下生成.txt文件  测试完成后删除.txt,因为.txt文件权限为644只有root用户可以写入 其他用户只能读
rm -fr /tmp/localhost-mysql_cacti_stats.txt
 web端导入模板 模板文件   在主机中添加所加入的模板 
图形中已经可以看到在监控mysql的数据了 
zabbix监控Java应用
在server1中
下载安装监控JAVA模块  启动并开机自启动Java模块
systemctl enable --now zabbix-java-gateway.service
 查询java端口已开 
vim /etc/zabbix/zabbix_server.conf
 重启服务
systemctl restart zabbix-server.service

server3下 运行java的机器 被监控的
解压tomcat压缩包到/usr/local

tar zxf apache-tomcat-7.0.90.tar.gz -C /usr/local/
cd /usr/local/
ls

ln -s apache-tomcat-7.0.90/ tomcat
cd tomcat
cd bin/
ls

编写tomcat的可执行文件
vim catalina.sh 加入监听端口8888

安装java
 执行可执行文件,并查看打开的8888和8080端口
./startup.sh
netstat -anltp
测试 说明没问题

进入web端
给主机server3增加模板 增加

添加JMX端口
完成 
Zabbix proxy分布式
用server4作为 proxy 首先先列出所有zabbix安装包 安装
yum install zabbix-proxy-mysql.x86_64 -y
修改server4的主机名
hostnamectl set-hostname proxy
 所有的zabbix机器全部加入域名解析
vim /etc/hosts

进入zabbix的配置文件目录 编写proxy配置文件
cd /etc/zabbix/
vim zabbix_proxy.conf
Server=172.25.21.1 #server端的ip
Hostname=proxy #proxy端的hostname
DBHost=172.25.21.1 #server端的ip
DBPassword=westos #访问数据库的密码
JavaGateway=172.25.21.1 #修改为zabbix-java-gateway所在主机的ip地址,这里是和zabbix-server安装在同一台主机
StartJavaPollers=5 #StartJavaPollers 应小于等于zabbix_java_gateway.conf 中START_POLLERS的值

   修改完后 重启zabbix-proxy服务
systemctl restart zabbix-proxy.service

ps ax 查询 proxy开启

将proxy数据库的表传给server1(server端)
cd /usr/share/doc/zabbix-proxy-mysql-4.0.5
scp schema.sql.gz server1:

回到server1中进行操作 也就是zabbix的server端 使用root用户进入mysql,创建库文件zabbix_proxy,并且给zabbix用户所有的权限
mysql -pwestos
create database zabbix_proxy character set utf8 collate utf8_bin;
 解压缩数据库表 导入到数据库zabbix_proxy 
在web端 添加agent代理

主机 server3 更换代理 proxy
 server1查看日志,如果没有sending则可以重启服务
cat /var/log/zabbix/zabbix_server.log

proxy查看日志,如果没有received则可以重启服务
cat /var/log/zabbix/zabbix_proxy.log
server3的ZBX和JMX不亮,因为server3的agent配置文件里面里面写的server端的ip为172.25.21.1这里使用了proxy代理 必须修改ip为proxy的ip server3主机下
vim /etc/zabbix/zabbix_agentd.conf
Server=172.25.21.4
ServerActive=172.25.21.4
 
修改后重启服务


|