监控中心Zabbix [ 3 ] --- 用户php-fpm监控,zabbix网络发现,自动添加动作,JVM接口监控,java-getway

Zabbix 监控

一、使用用户参数监控 php-fpm 服务的状态

在agent 端[被监控端]

1.下载rpm包

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

2.安装php7版本

yum install -y php71w-fpm

安装环境

yum -y install php71w-xsl php71w php71w-ldap php71w-cli php71w-common php71w-devel php71w-gd php71w-pdo php71w-mysql php71w-mbstring php71w-bcmath php71w-mcrypt 

3.修改配置文件

vim /etc/php-fpm.d/www.conf

user = nginx
group = nginx
pm.status_path = /status    # php-fpm 的状态监测页面
ping.path = /ping           # ping 接口,存活状态是否ok
ping.response = pong        # 响应内容pong

4.开启 php-fpm 服务

systemctl restart php-fpm

5.设置 nginx

设置代理php,和php-fpm的状态页面匹配

vim /etc/nginx/nginx.conf

location ~ \.php$ {
    
    
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
}
location ~* /(status|ping) {
    
    
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $fastcgi_script_name;
            include        fastcgi_params;

#               allow 127.0.0.1;   # 因为这个页面很重要,所以需加访问控制

#               deny all;


            access_log off;    # 访问这个页面就不用记录日志了

}

6.复制状态信息页面到网站根目录

cp /usr/share/fpm/status.html /usr/share/nginx/html/

7.开启nginx服务

systemctl start nginx

8.设置用户参数

1、查询

[root@ela1 ~]# curl http://10.9.29.169/status
pool:                 www
process manager:      dynamic
start time:           07/Jan/2021:22:26:25 -0500
start since:          1592
accepted conn:        6
listen queue:         0
max listen queue:     0
listen queue len:     128
idle processes:       4
active processes:     1
total processes:      5
max active processes: 1
max children reached: 0
slow requests:        0
[root@ela1 ~]# curl http://10.9.29.169/ping
pong

2、设置

[root@ela1 ~]# cd /etc/zabbix/zabbix_agentd.d/
[root@ela1 zabbix_agentd.d]# vim php_status.conf
UserParameter=php-fpm.stats[\*],curl -s http://127.0.0.1/status | awk '/^$1/{print $$NF}'

分析:设置用户参数为php-fpm.stats[*], 1 为 第 一 个 参 数 ; 1为第一个参数; 1$NF为awk中的参数,倒数第一列

3、重启服务

systemctl restart zabbix-agent

二、Zabbix 网络发现

配置网络发现 Network discovery

1、准备一台可被扫描发现的主机

yum -y install wget
wget http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
rpm -ivh https://repo.zabbix.com/zabbix/4.2/rhel/7/x86_64/zabbix-release-4.2-1.el7.noarch.rpm
rpm -ivh zabbix-release-3.4-2.el7.noarch.rpm
yum repolist

安装 agent 段的包

yum -y install zabbix-agent zabbix-sender

2、设置 agent 配置

可以把之前设置好的node1的配置传过来

vim /etc/zabbix/zabbix_agentd.conf

Hostname=ela3 #只需修改hostname
Server=127.0.0.1,10.9.29.170,10.9.29.168

3、 visudo 修改sudo的配置

[root@ela3 ~]# visudovisudo

#Defaults !visiblepw
zabbix ALL=(ALL) NOPASSWD: ALL

4、开启服务

systemctl start zabbix-agent

5、设置自动发现规则 discovery

在这里插入图片描述

1.key

yum -y install zabbix-get-4.2.0-1.el7.x86_64

[root@ela1 zabbix_agentd.d]# zabbix_get -s 10.9.29.169 -k "system.hostname"
ela2
[root@ela1 zabbix_agentd.d]# zabbix_get -s 10.9.29.170 -k "system.hostname"
ela3

2.更新间隔

1h就好,不要扫描太过频繁,扫描整个网段,太废资源;这里为了实验,设为1m

6、自动发现成功

在这里插入图片描述

7、设置自动发现discovery 的动作action

1、创建

在这里插入图片描述

2、设置action动作

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

三、Zabbix 主动/被动 监控

用法选项:
zabbix_sender
  -z zabbix_server_ip
  -p zabbix_server_port
  -s zabbix_agent_hostname
  -k key
  -o value 值

设置一个通过內建key发送数据的主动监控

1、agent 端所需要基本配置

ServerActive=192.168.30.107 # 给哪个监控server 发送数据
Hostname=node1.qfedu.com    # 自己的主机名,假设主机定死了,不设置下一项
#HostnameItem=              # 如果自己的主机名易变动,这一项相当于key一样去匹配

2、设置一个主动监测

[root@ela2 ~]# zabbix_sender -z 10.9.29.168 -s ela2 -k "neko" -o 123
Response from "10.9.29.168:10051": "processed: 1; failed: 0; total: 1; seconds spent: 0.000046"
sent: 1; skipped: 0; total: 1
[root@ela2 ~]# zabbix_sender -z 10.9.29.168 -s ela2 -k "neko" -o 1234
Response from "10.9.29.168:10051": "processed: 1; failed: 0; total: 1; seconds spent: 0.000035"

四、配置SNMP监控

1、下载,修改配置文件

[root@ela2 ~]# vim /etc/snmp/snmpd.conf
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.2      # 网络接口的相关数据
view    systemview    included   .1.3.6.1.4.1.2021   # 系统资源负载,memory, disk io, cpu load 
view    systemview    included   .1.3.6.1.2.1.25

2、在 agent 上测试

[root@ela1 ~]# snmpget -v 2c -c public 10.9.29.169 .1.3.6.1.2.1.1.3.0
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (109538) 0:18:15.38
[root@ela1 ~]# snmpget -v 2c -c public 10.9.29.169 .1.3.6.1.2.1.1.1.0
SNMPv2-MIB::sysDescr.0 = STRING: Linux ela2 3.10.0-1127.19.1.el7.x86_64 #1 SMP Tue Aug 25 17:23:54 UTC 2020 x86_64
[root@ela1 ~]# snmpget -v 2c -c public 10.9.29.169 .1.3.6.1.2.1.1.2.0
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMP-MIB::netSnmpAgentOIDs.10

五、配置JVM接口监控

1、安装配置 tomcat

1、下载安装tomcat,主要是用JVM

yum -y install java-1.8.0-openjdk-devel tomcat-admin-webapps tomcat-docs-webapp

2、加CATALINA_OPTS= #启用JVM接口,默认没有启用

vim /etc/sysconfig/tomcat

CATALINA_OPTS="-Djava.rmi.server.hostname=10.9.29.169 -Djavax.management.builder.initial= -Dcom.sun.management.jmxremote=true   -Dcom.sun.management.jmxremote.port=12345  -Dcom.sun.management.jmxremote.ssl=false  -Dcom.sun.management.jmxremote.authenticate=false"

3、开启服务

systemctl start tomcat

2、在 zabbix-server 端安装配置 java-gateway

1、安装配置 java-gateway

yum -y install zabbix-java-gateway

vim /etc/zabbix/zabbix_java_gateway.conf # 安装完后,会生成一个java_gateway 的配置文件

LISTEN_IP="0.0.0.0"                             #监听服务器地址
LISTEN_PORT=10052                               #监听zabbix_java进程的端口,默认是10052
PID_FILE="/tmp/zabbix_java.pid"                 #zabbix_java的pid路径
START_POLLERS=5                                 #zabbix_java的进程数
TIMEOUT=10                                      #zabbix_java的超时时间
systemctl start zabbix-java-gateway.service # 可不用修改,直接开启服务 

2、修改 server 配置开启 java-gateway 的配置

systemctl restart zabbix-server 

命令自动补全

yum -y install bash-completion

猜你喜欢

转载自blog.csdn.net/Houaki/article/details/112497033
今日推荐