zabbix监控的应用

Posted dezasseis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix监控的应用相关的知识,希望对你有一定的参考价值。

一、zabbix监控数据库

socket详解
socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –> 关闭close”模式来操作。Socket就是该模式的一个实现,socket即是一种特殊的文件,一些socket函数就是对其进行的操作(读/写IO、打开、关闭)

Percona,MariaDB,MySQL衍生版如何取舍

01_mysql数据库的监控

  • server端配置172.25.2.1
    mysqladmin password westos
    mkdir /var/lib/zabbix
    vim /var/lib/zabbix/.my.cnf
[mysql]
user=root
password=westos
socket=/var/lib/mysql/mysql.sock
[mysqladmin]
user=root
password=westos
socket=/var/lib/mysql/mysql.sock
  • 重启zabbix-agent服务
    systemctl restart zabbix-agent.service
    在这里插入图片描述
    查看是否监控成功并且有流量:
    配置->主机->zabbix server->图形-> 关于mysql的监控

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

02_percona数据库的监控

percona官网

  • 安装percona
    rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm
    在这里插入图片描述
  • 安装php及php-mysql
    yum install -y php php-mysql
  • 复制key文件模板
    cd /var/lib/zabbix/percona/templates/
    cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
  • 重启agent服务
    systemctl restart zabbix-agent.service
  • 添加用户名及密码到percona数据库脚本
    vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
$mysql_user = 'root';
$mysql_pass = 'westos';

rm -fr /tmp/localhost-mysql_cacti_stats.txt

  • 导入模板zbx_percona_mysql_template.xml
    在这里插入图片描述
  • 添加percona数据库模板(取消之前添加的mysql模板)
    在这里插入图片描述

二、zabbix监控java(使用apache-tomcat)

tomcat官网

  • Tomcat 服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应html(标准通用标记语言下的一个应用)页面的访问请求。实际上Tomcat是Apache服务器的扩展,但运行时它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。
  • 诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。

java监控对象:server2:172.25.2.2

01_agent端配置

  • 安装jdk
    yum install -y java-1.8.0-openjdk.x86_64
    在这里插入图片描述
    在这里插入图片描述

  • 安装apache-tomcat,创建软链接
    tar zxf apache-tomcat-7.0.37.tar.gz -C /usr/local/
    cd /usr/local/
    ln -s apache-tomcat-7.0.37/ tomcat

  • 配置tomcat
    cd /usr/local/tomcat/bin/
    vim catalina.sh

CATALINA_OPTS='-Dcom.sun.management.jmxremote.port=8888
  -Dcom.sun.management.jmxremote.ssl=false
  -Dcom.sun.management.jmxremote.authenticate=false'

在这里插入图片描述

  • 启动tomcat
    ./startup.sh
    netstat -antlupe | grep 8080
    在这里插入图片描述

02_server端配置

server2:172.25.2.1

  • 安装zabbix-java-gateway**
    yum install -y zabbix-java-gateway
  • 修改配置
    vim /etc/zabbix/zabbix_java_gateway.conf
  9 LISTEN_IP="0.0.0.0"#默认
 17 LISTEN_PORT=10052#默认端口
 35 START_POLLERS=10
  • 开启zabbix-java-gateway服务
    systemctl enable --now zabbix-java-gateway.service
    netstat -antlupe | grep 10052
    在这里插入图片描述
  • 配置java网关
    vim /etc/zabbix/zabbix_server.conf
JavaGateway=192.168.17.1
JavaGatewayPort=10052
StartJavaPollers=10

在这里插入图片描述

  • 重启 zabbix-server服务
    systemctl restart zabbix-server

03_添加JMX接口及模板进行监控

  • 添加JMX接口
    在这里插入图片描述
  • 添加JMX模板
    在这里插入图片描述
  • 查看监控是否正常
    在这里插入图片描述

三、主动式监控

客户端主动向server端发送数据

  • 全克隆模板
    在这里插入图片描述在这里插入图片描述
  • 修改克隆好的模板为主动式:选择模板Template OS Linux–Active,全选模板的监控项,进行批量更新

在这里插入图片描述

  • 在agent端取消克隆之前的模板,添加主动式模板
    在这里插入图片描述

四、分布式监控(proxy)

关于proxy概述及配置
关于proxy安装
zabbix proxy 是一个数据收集器,它不计算触发器、不处理事件、不发送报警。

  • zabbix proxy 可以代替 zabbix server 收集性能和可用性数据,然后把数据汇报给 zabbix
    server,并且在一定程度上分担了zabbix server 的压力.
  • 此外,当所有agents和proxies报告给一个Zabbix
    server并且所有数据都集中收集时,使用proxy是实现集中式和分布式监控的最简单方法。

zabbix proxy 使用场景:

  • 监控远程区域设备
  • 监控本地网络不稳定区域
  • 当 zabbix 监控上千设备时,使用它来减轻 server 的压力
  • 简化分布式监控的维护
    在这里插入图片描述zabbix proxy 仅仅需要一条 tcp 连接到 zabbix server,所以防火墙上仅仅需要加上一条规则即可。

01_实验环境

proxy主机:172.25.2.3(主机有限,将agent主机变为proxy主机)

  • 停止agent服务
    systemctl disable --now zabbix-agent.service
  • 停止nginx服务
    nginx -s stop
  • 修改主机名为proxy
    hostnamectl set-hostname proxy
    在这里插入图片描述
  • 将agent主机server3删除

在这里插入图片描述

  • 所有节点加解析
    在这里插入图片描述

02_ 增加proxy代理服务器

  • 创建agent代理,agent代理程序名称必须与主机名相同
    在这里插入图片描述
  • 设置agent主机server2由代理程序监测
    在这里插入图片描述
    在这里插入图片描述

03_proxy端配置

  • 安装数据库及proxy
    yum install -y zabbix-proxy-mysql
    yum install -y mariadb-server
  • 开启并创建数据库
    systemctl enable --now mariadb
mysql
create database zabbix_proxy character set utf8 collate utf8_bin;
create user 'zabbix'@'localhost' identified by 'westos';
grant all privileges on zabbix_proxy.* to 'zabbix'@'localhost';

在这里插入图片描述

  • 修改配置
    vim /etc/zabbix/zabbix_proxy.conf
 30 Server=192.168.17.1
 49 Hostname=proxy
173 DBName=zabbix_proxy
188 DBUser=zabbix
196 DBPassword=westos
#由于server2主机配置了java,所以也要修改java网关,否则监测JMX会失败
329 JavaGateway=192.168.17.1
337 JavaGatewayPort=10052
345 StartJavaPollers=10
  • 导入数据
    zcat /usr/share/doc/zabbix-proxy-mysql-4.0.31/schema.sql.gz | mysql -uzabbix -pwestos zabbix_proxy
  • 开启proxy服务
    systemctl enable --now zabbix-proxy

04_agent端配置

server2:172.25.2.2

  • 修改server为代理服务器IP
    vim /etc/zabbix/zabbix_agentd.conf
 98 Server=192.168.17.3
139 ServerActive=192.168.17.3
  • 重启服务
    systemctl restart zabbix-agent.service

05_server端配置

server1:172.25.2.1

  • 重新读取zabbix配置文件
    zabbix_server -R config_cache_reload

  • 在proxy端重启服务
    systemctl restart zabbix-proxy.service

  • server端查看日志
    cat /var/log/zabbix/zabbix_server.log
    在这里插入图片描述

  • proxy端查看日志
    cat /var/log/zabbix/zabbix_proxy.log
    在这里插入图片描述

06_查看监测结果

在这里插入图片描述

五、云告警

官访文档

01_告警平台配置

  • 创建zabbix应用,获取key
    在这里插入图片描述在这里插入图片描述
  • 创建通知策略,选择通知方式为微信(提前绑定微信)
    在这里插入图片描述

02_安装CA探针

server端:172.25.2.1

  • 下载包
    wget https://download.aiops.com/ca_agent/zabbix/ca_zabbix_release-2.1.0.tar.gz
  • 解压到指定位置
    tar zxf ca_zabbix_release-2.1.0.tar.gz -C /usr/lib/zabbix/alertscripts/
  • 安装到指定位置
    cd /usr/lib/zabbix/alertscripts/cloudalert/bin/
    ./install.sh 获取的key
  • 发现在前端自动添加了告警媒介、用户、触发器等等
    在这里插入图片描述在这里插入图片描述在这里插入图片描述

03_测试

agent段:172.25.2.2

  • 关闭agent端的服务
    systemctl stop zabbix-agent
  • 前端查看
    在这里插入图片描述
    在这里插入图片描述
  • 打开agent服务,前端查看问题得到解决
    在这里插入图片描述

以上是关于zabbix监控的应用的主要内容,如果未能解决你的问题,请参考以下文章

Zabbix 监控MySQLApacheNginx应用监控

Zabbix监控MysqlApacheNginx应用实战案例

zabbix监控应用连接数

Zabbix应用二:Zabbix添加监控主机

Zabbix在Docker中的应用和监控

企业运维之 zabbix 监控部署--监控应用