zabbix-4

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
简介: zabbix-4

创建图形:

配置--主机--web1--图形--右上角“创建图形”--填写“名称”--添加“监控项”--点击最后一行“添加”

查看图形:

监测--图形--选择“群组”--选择"主机"--选择“图形名称”

###########################################################################################

创建聚合图形:

监测--聚合图形--创建聚合图形--填写聚合图形“名称”--添加--选择新建聚合图形--编辑聚合图形



幻灯片演示:


聚合图形--创建幻灯片演示(把多个聚合图形,按照频率刷新演示)


###########################################################################################

zabbix模板文件下载:

https://www.zabbix.org/wiki/Zabbix_Templates/Official_Templates



###########################################################################################

percona模板监控mysql

环境:打开或安装一台mysql:192.168.8.20,并安装zabbix-agent,修改配置文件指向zabbix服务器


1.安装php环境


percona需要php环境

[root@mysql /data/soft]# yum install php php-mysql -y


2.下载软件

注意,安装完成后会有提示模版的路径位置
[root@mysql ~]# mkdir -p /data/soft
[root@mysql ~]# cd /data/soft/
[root@mysql /data/soft]# wget https://www.percona.com/downloads/percona-monitoring-plugins/percona-monitoring-plugins-1.1.8/binary/redhat/7/x86_64/percona-zabbix-templates-1.1.8-1.noarch.rpm
[root@mysql /data/soft]# rpm -ivh percona-zabbix-templates-1.1.8-1.noarch.rpm


3.查看目录


进入安装目录会发现有2个目录,一个是脚本目录,一个是模版目录


cd /var/lib/zabbix/percona/

scripts

 get_mysql_stats_wrapper.sh

 ss_get_mysql_stats.php

templates

 userparameter_percona_mysql.conf

 zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.8.xml


其中脚本目录里有2个脚本,用来获取数据库信息


cd scripts/

ls

get_mysql_stats_wrapper.sh  ss_get_mysql_stats.php


4.修改get_mysql_stats_wrapper.sh


修改get_mysql_stats_wrapper数据库登陆信息

第19行添加mysql账号密码

vim get_mysql_stats_wrapper.sh

修改第19行:

   RES=`HOME=~zabbix mysql -uroot -p123456 -e 'SHOW SLAVE STATUS\G' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr '\n'


5.修改ss_get_mysql_stats.php


vim ss_get_mysql_stats.php

修改30,31行:

$mysql_user = 'root';

$mysql_pass = '123456';


6.复制自定义监控项配置文件到zabbix目录


cd /var/lib/zabbix/percona/templates/

cp userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/



7.重启agent


systemctl restart zabbix-agent


8.测试key(IP是被监控端)


zabbix_get -s 192.168.8.20 -k MySQL.Select-scan



9.导入模版


配置--模板--导入--浏览导入文件--勾选“聚合图形”--最后“导入”


10.主机链接模版


配置--主机--创建主机--选择模板


#############################################################################################################

自定义模版监控nginx状态

环境:打开或安装nginx服务器:192.168.8.20,并安装zabbix-agent,修改配置文件指向zabbix服务器

      yum -y install epel-release

      yum -y install nginx

   

1.开启监控页面并访问测试

[root@web01 ~]# vim  /etc/nginx/conf.d/default.conf

定位到11行下,添加:

  location /nginx_status {

      stub_status on;

      access_log off;

  }

重启服务:systemctl restart nginx


[root@web01 ~]# curl 127.0.0.1/nginx_status/

Active connections: 1

server accepts handled requests

6 6 6

Reading: 0 Writing: 1 Waiting: 0


2.准备nginx监控状态脚本

[root@web01 /etc/zabbix/zabbix_agentd.d]# cat nginx_monitor.sh

#!/bin/bash

NGINX_COMMAND=$1

CACHEFILE="/tmp/nginx_status.txt"

CMD="/usr/bin/curl http://127.0.0.1/nginx_status/"

if [ ! -f $CACHEFILE  ];then

  $CMD >$CACHEFILE 2>/dev/null

fi

# Check and run the script

TIMEFLM=`stat -c %Y $CACHEFILE`

TIMENOW=`date +%s`


if [ `expr $TIMENOW - $TIMEFLM` -gt 60 ]; then

   rm -f $CACHEFILE

fi

if [ ! -f $CACHEFILE  ];then

  $CMD >$CACHEFILE 2>/dev/null

fi


nginx_active(){

        grep 'Active' $CACHEFILE| awk '{print $NF}'

        exit 0;

}

nginx_reading(){

        grep 'Reading' $CACHEFILE| awk '{print $2}'

        exit 0;

}

nginx_writing(){

        grep 'Writing' $CACHEFILE | awk '{print $4}'

        exit 0;

}

nginx_waiting(){

        grep 'Waiting' $CACHEFILE| awk '{print $6}'

        exit 0;

}

nginx_accepts(){

        awk NR==3 $CACHEFILE| awk '{print $1}'

        exit 0;

}

nginx_handled(){

        awk NR==3 $CACHEFILE| awk '{print $2}'

        exit 0;

}

nginx_requests(){

        awk NR==3 $CACHEFILE| awk '{print $3}'

        exit 0;

}


case $NGINX_COMMAND in

   active)

       nginx_active;

       ;;

   reading)

       nginx_reading;

       ;;

   writing)

       nginx_writing;

       ;;

   waiting)

       nginx_waiting;

       ;;

   accepts)

       nginx_accepts;

       ;;

   handled)

       nginx_handled;

       ;;

   requests)

       nginx_requests;

       ;;

   *)

echo 'Invalid credentials';

exit 2;

esac

保存退出

赋予执行权:chmod +x nginx_monitor.sh


3.编写zabbix监控配置文件

[root@web01 ~]# cat /etc/zabbix/zabbix_agentd.d/nginx_status.conf

UserParameter=nginx_status[*],/bin/bash /etc/zabbix/zabbix_agentd.d/nginx_monitor.sh $1


[root@web01 ~]# systemctl restart zabbix-agent.service


修改缓存文件权限:chown zabbix:zabbix /tmp/nginx_status.txt


4.使用zabbix_get取值

zabbix_get -s 192.168.8.20 -k nginx_status[accepts]



5.导入模版


6.链接模版


7.查看数据


##################################################################################################

参考web1添加其他nginx服务器:

配置--主机--web1--点击web1--选择“全克隆”--填写新nginx的ip



------------------------

网络发现:

   加快Zabbix部署

   简化管理

   无需过多管理,也能在快速变化的环境中使用Zabbix

   一般通过网络ip范围自动发现agent主机

 

步骤:

   客户端安装zabbix-agent,配置文件Server指向zabbix-server

   zabbix-server web管理界面--配置--自动发现--修改Local Network--添加主机网段--修改间隔--启用

   zabbix-server web管理界面--动作--事件源(自动发现)--修改现有自动发现--修改触发条件--在线不在线60秒

   zabbix-server web管理界面--动作--事件源(自动发现)--修改现有自动发现操作--添加标题--添加主机、群组、模板--导入--浏览导入文件--勾选“聚合图形”--最后“导入”

 

----------------------------    

自动注册:

   Zabbix Active agent可以实现自动注册,进而服务器对其进行监控。通过这种方式,无需在服务器上进行手动配置便可直接启动对新host的监控。


步骤:

   客户端安装zabbix-agent,配置文件Server,ServerActive指向zabbix-server,Hostname修改本机主机名

   zabbix-server web管理界面--动作--事件源(自动注册)--填写名称--触发条件主机名--操作(主机、群组、模板)


------------------------------

主被动模式(客户端):

被动模式:默认模式,由服务器向客户端发起监控项请求,每个监控项发一个请求,效率低

主动模式:由客户端主动向服务器申请监控项清单,一起发送给服务器,效率高,不占服务器太多资源


步骤:

客户端: zabbix-agent配置文件需要启用ServerActive指向服务器

        服务器上监控模板批量更新--类型--Zabbix客户端(主动式)


相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
存储 人工智能 城市大脑
成都市城市运行云,雄起!
成都市城市运行云,雄起!
265 0
|
9天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1205 4
|
8天前
|
机器学习/深度学习 人工智能 前端开发
通义DeepResearch全面开源!同步分享可落地的高阶Agent构建方法论
通义研究团队开源发布通义 DeepResearch —— 首个在性能上可与 OpenAI DeepResearch 相媲美、并在多项权威基准测试中取得领先表现的全开源 Web Agent。
1153 87
|
7天前
|
机器学习/深度学习 物联网
Wan2.2再次开源数字人:Animate-14B!一键实现电影角色替换和动作驱动
今天,通义万相的视频生成模型又又又开源了!Wan2.2系列模型家族新增数字人成员Wan2.2-Animate-14B。
634 11
|
9天前
|
云栖大会
阿里云云栖大会2025年9月24日开启,免费申请大会门票,速度领取~
2025云栖大会将于9月24-26日举行,官网免费预约畅享票,审核后短信通知,持证件入场
1751 12
|
18天前
|
人工智能 运维 安全

热门文章

最新文章