监控linux 系统
92.168.10.10作为客户端 被192.168.10.1监控
安装zabbix-agent
安装依赖环境
yum install gcc libxml2-devel net-snmp net-snmp-devel curl curl-devel php php-bcmath php-mbstring mariadb mariadb-devel libevent-devel java-1.8.0-openjdk-devel -y
解压安装包 编译
[root@node2 zabbix-4.0.30]#tar xf zabbix-4.0.30.tar.gz
[root@node2 zabbix-4.0.30]#./configure --prefix=/apps/zabbix --enable-agent
[root@node2 zabbix-4.0.30]#make -j2 && make install
准备service文件
[root@node2 zabbix-4.0.30]#useradd zabbix
# 新建用户
[root@node2 zabbix-4.0.30]#vim /usr/lib/systemd/system/zabbix-agent.service
[Unit]
Description=Zabbix Agent
After=syslog.target
After=network.target
[Service]
Environment="CONFFILE=/apps/zabbix/etc/zabbix_agentd.conf"
EnvironmentFile=-/etc/default/zabbix-agent
Type=forking
Restart=on-failure
PIDFile=/tmp/zabbix_agentd.pid
KillMode=control-group
ExecStart=/apps/zabbix/sbin/zabbix_agentd -c $CONFFILE
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
User=zabbix
Group=zabbix
[Install]
WantedBy=multi-user.target
[root@node2 zabbix-4.0.30]#systemctl daemon-reload
[root@node2 zabbix-4.0.30]#systemctl start zabbix-agent.service
[root@node2 zabbix-4.0.30]#systemctl status zabbix-agent.service
修改配置文件
cd /apps/zabbix/etc
[root@node2 etc]#vim zabbix_agentd.conf
94 Server=192.168.10.1 #指向当前zabbix server
##### Passive checks related #被动检查相关配置
### Option: ListenPort
ListenPort=10050 #监听端口 默认的无需修改
119 StartAgents=3
#启动3个进程收集数据
146 Hostname=192.168.10.10
#指定名称 一般使用 IP地址, 等会需要使用
[root@node2 zabbix-4.0.30]#systemctl restart zabbix-agent.service
[root@node2 etc]#systemctl status zabbix-agent.service
# 可以看到三个监听线程
● zabbix-agent.service - Zabbix Agent
Loaded: loaded (/usr/lib/systemd/system/zabbix-agent.service; disabled; vendor preset: disabled)
Active: active (running) since 五 2024-07-19 15:55:42 CST; 11s ago
Process: 6348 ExecStop=/bin/kill -SIGTERM $MAINPID (code=exited, status=0/SUCCESS)
Process: 6350 ExecStart=/apps/zabbix/sbin/zabbix_agentd -c $CONFFILE (code=exited, status=0/SUCCESS)
Main PID: 6353 (zabbix_agentd)
CGroup: /system.slice/zabbix-agent.service
├─6353 /apps/zabbix/sbin/zabbix_agentd -c apps/zabbix/etc/zabbix_agentd.conf
├─6354 /apps/zabbix/sbin/zabbix_agentd: collector [idle 1 sec]
├─6355 /apps/zabbix/sbin/zabbix_agentd: listener #1 [waiting for connection]
├─6356 /apps/zabbix/sbin/zabbix_agentd: listener #2 [waiting for connection]
├─6357 /apps/zabbix/sbin/zabbix_agentd: listener #3 [waiting for connection]
└─6358 /apps/zabbix/sbin/zabbix_agentd: active checks #1 [idle 1 sec]
7月 19 15:55:42 node2 systemd[1]: Starting Zabbix Agent...
7月 19 15:55:42 node2 systemd[1]: Started Zabbix Agent.
页面主控端添加被监控主机
在zabbix web管理界面添加上一步安装了zabbix agent的linux主机。
添加模板不添加模板是不会监控的
过段时间就会变绿
使用命令获取数据
[root@localhost data]#/apps/zabbix_server/bin/zabbix_get -s 192.168.10.10 -p 10050 -k "agent.ping"
1
-s 指明主机
-k 指明监控项
-p 端口
监控tomcat
一 tomcat开启JMX监控
JMX在Java编程语言中定义了应用程序以及网络管理和监控的体系结构、设计模式、应用程序接口以及服务,通常使用JMX来监控系统的运行状态。
[root@node2 data]#vim /usr/local/tomcat/bin/catalina.sh
#一般加在116行
CATALINA_OPTS="$CATALINA_OPTS -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=12345 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Djava.rmi.server.hostname=192.168.10.10"
[root@node2 data]#systemctl restart tomcat
#重启服务
[root@node2 data]#systemctl status tomcat
[root@node2 data]#ss -napt|grep 12345
#12345开启就可以
LISTEN 0 50 :::12345 :::* users:(("java",pid=13661,fd=24))
CATALINA_OPTS="$CATALINA_OPTS
-Dcom.sun.management.jmxremote #启用远程监控JMX
-Dcom.sun.management.jmxremote.port=12345 #默认启动的JMX端口号,要和zabbix添加主机时候的端口一致即可
-Dcom.sun.management.jmxremote.authenticate=false #不使用用户名密码
-Dcom.sun.management.jmxremote.ssl=false #不使用ssl认证
-Djava.rmi.server.hostname=x.x.x.x" #tomcat主机自己的IP地址,不要写zabbix服务器的地址
| 选项 | 含义 |
|---|---|
| -Dcom.sun.management.jmxremote | #启用远程监控JMX |
| -Dcom.sun.management.jmxremote.port=12345 | #默认启动的JMX端口号,要和zabbix添加主机时候的端口 一致即可 |
| -Dcom.sun.management.jmxremote.authenticate=false | #不使用用户名密码 |
| -Dcom.sun.management.jmxremote.ssl=false | #不使用ssl认证 |
| -Djava.rmi.server.hostname=x.x.x.x" | #tomcat主机自己的IP地址,不要写zabbix服务器的地址 |
二 配置zabbix-server
在主服务器上配置启动 javagateway
[root@localhost data]#vim /apps/zabbix_server/sbin/zabbix_java/settings.sh
#不需要修改
35 START_POLLERS=5 #启动5个线程去采集java数据
43 TIMEOUT=30 #一个数据的超时时间30s
[root@localhost data]#/apps/zabbix_server/sbin/zabbix_java/startup.sh
# 启动服务
[root@localhost data]#ss -antp |grep 10052
LISTEN 0 50 :::10052 :::* users:(("java",pid=47582,fd=14))
三 配置 zabbix-server 对接 java-gateway
[root@localhost data]#vim /apps/zabbix_server/etc/zabbix_server.conf
281 JavaGateway=192.168.91.100 #指明gateway地址
297 StartJavaPollers=5 #开启多少个进程去收集java服务器的信息
289 JavaGatewayPort=10052 # 默认不用改
[root@localhost ~]#systemctl restart zabbix-server
#快照起不来 重启机器
#重启后不要忘记开启 javagateway
四 web页面配置
添加jmx 模板