• zabbix监控——监控应用


    目录

    一,Nginx 监控

     二,MYSQL

     三,zabbix 监控Tomcat


    一,Nginx 监控

    node2上源码编译安装nginx服务并安装监控模块;

    1).编译nginx

    [root@node2 ~]# tar zxf nginx-1.22.0.tar.gz

    [root@node2 ~]# cd nginx-1.22.0/

    [root@node2 nginx-1.22.0]# yum install -y gcc pcre-devel openssl-devel

    [root@node2 nginx-1.22.0]# vim auto/cc/gcc

    [root@node2 nginx-1.22.0]#  ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module

    [root@node2 nginx-1.22.0]# make

    [root@node2 nginx-1.22.0]# make install

    [root@node2 nginx-1.22.0]# ln -s /usr/local/nginx//sbin/nginx /usr/local/bin/

    [root@node2 nginx-1.22.0]# cd /usr/local/nginx/conf/

    [root@node2 conf]# vim nginx.conf

     [root@node2 conf]# nginx -s reload

    编辑配置文件,让其怎么对外开放;

    [root@node2 conf]# vim nginx.conf

     48         location /status {
     49             stub_status on;
     50             access_log off;
     51             allow 127.0.0.1;
     52             deny all;
     53         }
    [root@node2 conf]# nginx -t
    nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
    nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
    [root@node2 conf]# nginx -s reload
    [root@node2 conf]# cd 

    [root@node2~]# curl http://127.0.0.1/status    #外部访问有问题
    Active connections: 1 
    server accepts handled requests
     4 4 7 
    Reading: 0 Writing: 1 Waiting: 0 

    那么主要问题就是Server端如何拿到这串信息中有用的部分了。

    [root@node2 ~]# curl -s http://127.0.0.1/status | grep Active
    Active connections: 1 
    [root@node2 ~]# curl -s http://127.0.0.1/status | grep Active | awk '{print $3}'
    1
    [root@node2 ~]# cd /etc/zabbix/zabbix_agentd.d/
    [root@node2 zabbix_agentd.d]# ls
    userparameter_mysql.conf
    [root@node2 zabbix_agentd.d]# cp userparameter_mysql.conf userparameter_nginx.conf
    [root@node2 zabbix_agentd.d]# vim ##将这一操作编写为规则userparameter_nginx.conf
    [root@node2 zabbix_agentd.d]# cat userparameter_nginx.conf
    UserParameter=nginx_active,curl -s http://127.0.0.1/status | grep Active | awk '{print $3}'
    [root@node2 zabbix_agentd.d]# systemctl restart zabbix-agent.service     #重启服务

    以上的过程是手动的取,前端监控页面完成规则的添加,让其自动获取;

    创建监控项:

     

     

     二,MYSQL

    在前端界面进行监控项的设置:

     此模板所用的监控项太少,换成下面的方式。

    1. 1).percona-mysql 模板结合 mysql 与 zabbix
    2. 与前面的相比 Percona Monitoring Plugins 带有190多个监控项。
    3. 下载软件包并配置信息:
    4. [root@node1 ~]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
    5. [root@node1 ~]# cd /var/lib/zabbix/percona/scripts
    6. 为了能够正确链接数据库获取信息,需要修改ss_get_mysql_stats.php php脚本中数据库登陆相关内容:
    7. [root@node1 scripts]# vim ss_get_mysql_stats.php

     

    1. [root@node1 scripts]# ln -s /opt/rh/rh-php72/root/usr/bin/php /usr/bin/php做链接
    2. 通过调用脚本来确定功能呢个是否能够实现:
    3. [root@node1 scripts]# ./get_mysql_stats_wrapper.sh gg
    4. [root@node1 scripts]# cd /tmp
    5. [root@node1 tmp]# ls
    6. systemd-private-eb6d6e16e5d14164a204696c7d55f681-httpd.service-5zs18D
    7. systemd-private-eb6d6e16e5d14164a204696c7d55f681-rh-php72-php-fpm.service-nbEgA3
    8. [root@node1 tmp]# cd /var/lib/zabbix/percona/templates
    9. [root@node1 templates]# cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
    10. [root@node1 templates]# cd /etc/zabbix/zabbix_agentd.d/
    11. [root@node1 zabbix_agentd.d]# ls
    12. userparameter_percona_mysql.conf
    13. [root@node1 zabbix_agentd.d]# systemctl restart zabbix-agent.service
    14. 测试结束删除/tmp/下生成的文本文件,用为root用户下测试的文件器与用户无法写入;
    15. [root@node1 ~]# cd /tmp
    16. [root@node1 tmp]# rm -rf localhost-mysql_cacti_stats.txt

    为监控页面导入模板,方便进行自动化扫描:

     

     此时再次查看时会发现多了一百多个监控项;图形处也变了很多。

     三,zabbix 监控Tomcat

    Tomcat 在java虚拟机中默认操作无法实现对其监控;不过 zabbix也提供了组件zabbix-java-geteway.

    先在node3上部署java环境,然后下载Tomcat的包;

    [root@node3 ~]# yum install -y java-1.8.0-openjdk.x86_64

    [root@node3 ~]# tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/local/

    [root@node3 ~]# cd /usr/local/

    [root@node3 local]# ln -s apache-tomcat-7.0.37/ tomcat

    [root@node3 local]# cd tomcat

    [root@node3 tomcat]# cd bin/

    [root@node3 bin]# ./startup.sh

    此时便开启8080端口。

    修改配置文件,增加额外监听端口:

    [root@node3 bin]# vim catalina.sh

    [root@node3 bin]# ./shutdown.sh

    [root@node3 bin]# ./startup.sh

     

    node1上安装监控java的组件并完成配置:

    [root@node1 ~]# yum install zabbix-java-gateway.x86_64

    [root@node1 ~]# cd /etc/zabbix/

    [root@node1 zabbix]# systemctl enable --now zabbix-java-gateway.service

    Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-java-gateway.service to /usr/lib/s

    [root@node1 zabbix]# netstat -antlp|grep :10052

    tcp6       0      0 :::10052                :::*                    LISTEN      31789/java

    [root@node1 zabbix]# vim zabbix_server.conf

     

    [root@node1 zabbix]# systemctl restart zabbix-server.service

    在网页信息中添加对JMX接口的支持:

     

     添加完成之后会多很多JVM的包;

     

  • 相关阅读:
    [python]使用pyinstaller打包带界面的Pytorch程序的多个问题
    腾讯正式开源 Spring Cloud Tencent,微服务套件又多一个选择
    有什么好用的IT资产管理软件
    Java JSON的解析和创建
    java基于BeanUtils拷贝非空属性工具类
    【opencv450-samples】图像分割grabcut算法
    C# winform实现图片裁剪效果
    事务和事务的隔离级别及脏读、幻读
    SignalR+Hangfire 实现后台任务队列和实时通讯
    化妆品用乙基己基甘油全球市场总体规模2023-2029
  • 原文地址:https://blog.csdn.net/z17609273238/article/details/126429791