百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

zabbix搭建+排错+批量监控_zabbix批量添加监控项

off999 2025-09-24 01:42 3 浏览 0 评论

Zabbix软件的概念

Zabbix是一款开源的、免费的监控软件、项目,主要是7x24小时去监控网络设备、操作系统、应用程序、带宽等资源,一旦发现异常和故障能够给SA管理员发送告警信息。

Zabbix软件的特点

  • Zabbix是C/S结构,有server和client;
  • 可以支持批量监控服务器(1000、10000台);
  • 支持WEB界面管理:方便、快捷;
  • 可以远程到被监控端执行Linux指令(解决问题);
  • 支持Zabbix proxy代理节点,可以代替Server去监控客户端;
  • 可以支持二次开发,提供API接口跟运维平台整合。

Zabbix软件的组成

Zabbix监控平台主要是由五大组件组成的:Zabbix server、Zabbix database、Zabbix proxy、Zabbix web、Zabbix agent,每个组件的用途如图1所示

Zabbix server

Zabbix server是整个监控平台最核心的组件服务之一,主要是用于汇总、收集客户端的监控数据,将监控数据持久化写入到后端数据库(MYSQL)中。

Zabbix database

Zabbix database是关系型数据库系统(MYSQL、Mariadb、Oracle、DB2等)主要是用于存储整个Zabbix监控平台的核心数据:监控数据、历史数据、趋势数据、用户名、密码信息等。

Zabbix proxy

Zabbix proxy也被称为代理节点,主要是用于代替Zabbix server去监控客户端进而分担server的压力,Zabbix proxy获取的监控数据最终统一上报给server端。(主动模式、被动模式)

Zabbix web

Zabbix web是基于PHP语言开发的网站程序,主要是用于管理员通过WEB界面更好的去管理Zabbix监控:添加、删除、动作、邮件、微信告警、代理等。

Zabbix agent

Zabbix agent一般部署在客户端机器上(被监控端)主要是用于采集自身机器的CPU、MEM、I/0、打开文件数、进程数、端口、系统是否被黑客入侵等指标数据的。


基于OpenEuler 22.x Linux操作系统部署一套Zabbix监控平台,至少需要四个组件服务:Zabbix server, Zabbix database、Zabbix web和Zabbix agent。

部署Zabbix server的方法和指令如下

从Zabbix官网下载软件包如图2所示

wget https://cdn.zabbix.com/zabbix/sources/stable/6.0/zabbix-6.0.32.tar.gz

解压zabbix-6.0.32.tar.gz(-x extract解压,-z gzip压缩格式,-v verbose详

细显示,-f file文件属性)如图3所示

tar -xzvf zabbix-6.0.32.tar.gz

cd切换至Zabbix源代码目录如图4所示

cd zabbix-6.0.32

#提前解决编译Zabbix所需的依赖环境、库文件(gcc,mysql-devel,libevent-devel,pcre-devel)如图5所示

yum install -y gcc mysql-devel libevent-devel pcre-devel

预编译如图6所示

./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql

编译(-j4,开启4个线程并行编译)如图7所示

make -j4

安装如图8所示

make -j4 install

查看Zabbix server程序是否部署成功如图9所示

ls -l /usr/local/zabbix/

拷贝zabbix server和agent启动脚本&赋予执行权限如图10所示

\cp misc/init.d/tru64/zabbix* /etc/init.d/
chmod o+x /etc/init.d/zabbix*

添加zabbix server和agent主程序文件软连接如图11所示

ln -s /usr/local/zabbix/sbin/* /usr/local/sbin/

创建用户和组如图12所示

useradd -s /sbin/nologin zabbix -M

启动zabbix server服务如图13所示

/etc/init.d/zabbix_server start

查看zabbix进程如图14所示

ps -ef|grep -aiE zabbix

Zabbix database安装部署

Zabbix database主要是用于存储整个监控平台核心的数据,此处采用MYSQL数据库作为后端存储,部署的方法和指令如下

安装MYSQL软件如图15所示

yum install -y mysql-server mysql

启动MYSQL进程

systemctl start mysqld.service

查看MYSQL进程状态如图16所示

ps -ef|grep -aiE mysql

进入MYSQL命令行终端如图17所示

mysql

创建zabbix库、用户和设置密码如图18所示

create database zabbix character set utf8 collate utf8_bin;
create user zabbix@localhost identified by 'aaaAAA111';

授权本机访问数据库如图19所示

grant all privileges on zabbix.* to zabbix@localhost;

刷新权限如图20所示

flush privileges;

进入
/root/zabbix-6.0.32/database/mysql/目录下如图21所示

cd /root/zabbix-6.0.32/database/mysql/

将zabbix自带三个SQL基础数据(schema.sql、images.sql、data.sql)导入zabbix库中如图22所示

mysql -uzabbix -paaaAAA111 zabbix < schema.sql
mysql -uzabbix -paaaAAA111 zabbix < images.sql
mysql -uzabbix -paaaAAA111 zabbix < data.sql

zabbix web部署

因为zabbix web是基于PHP语言开发的,需要借助LNMP架构(环境)对其发布,部署的方法和指令如图23所示:

安装Nginx、PHP-FPM;(Nginx和PHP会自动整合)

yum install php php-cli php-common php-devel php-embedded php-fpm php-gd php-mbstring php-mysqlnd php-opcache php-pdo php-xml -y

启动Nginx和PHP-FPM进程如图24所示

systemctl start nginx.service
systemctl start php-fpm.service

或者

for i in $(echo nginx php-fpm);do systemctl start $i.service ;done

查看Nginx和PHP-FPM进程如图25所示

for i in $(echo nginx php-fpm);do ps -ef|grep -aiE $i ;done

将zabbix web程序拷贝至LNMP发布目录即可如图26所示

\cp -a /root/zabbix-6.0.32/ui/* /usr/share/nginx/html/

调整SELinux策略

临时关闭SELinux(测试用)如图27所示

setenforce 0

永久关闭(需重启)

sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

防火墙拦截

临时开放HTTP服务如图28所示

firewall-cmd --add-service=http --permanent
firewall-cmd --reload

根据如下zabbix监控平台指令、步骤的操作,用户通过浏览器可以访问zabbix web界面,如图29所示

点击下一步时报错如图30所示

进入/etc/php.ini修改post_max_size、max_execution_time、max_input_timew值如图31所示

vim /etc/php.ini

安装PHP bcmath如图32所示

yum -y install php-bcmath

如下图全部报错已处理如图33所示

填写数据库密码aaaAAA111如图34所示

填写zabbix名称如图35所示

下一步如图36所示

下载配置文件上传到
/usr/share/nginx/html/conf/zabbix.conf.php如图37所示

或者将
/usr/share/nginx/html/conf/目录所有者设置为apache如图38、图39所示

chown -R apache /usr/share/nginx/html/conf/
ls -l /usr/share/nginx/html/conf/

输入用户名和密码:Admin/zabbix如图40所示

服务器没有运行如图41所示

查看zabbix日志所在路径如图42所示

grep -aiE "log" /usr/local/zabbix/etc/zabbix_server.conf | grep -aivE "^#"|awk -F\= 'NR==1 {print $2}'

查看zabbix日志内容如图43所示

tail -n 30 $(grep -aiE "log" /usr/local/zabbix/etc/zabbix_server.conf | grep -aivE "^#"|awk -F\= 'NR==1 {print $2}')

修改
/usr/local/zabbix/etc/zabbix_server.conf主配置文件内的DBPassword=aaaAAA111如图44所示

vim /usr/local/zabbix/etc/zabbix_server.conf

重启zabbix服务如图45所示

/etc/init.d/zabbix_server restart

刷新网页如图46所示

zabbix agent报错如图47所示

启用/etc/init.d/zabbix_agentd如图48所示

/etc/init.d/zabbix_agentd start

批量监控20台服务器如图49所示

安装docker

yum install docker -y

启动docker服务

systemctl start docker.service

上传openeuler.tar如图50所示

导入openeuler.tar到docker如图51、图52所示

docker load -i openeuler.tar

批量启动20台虚拟机如图53所示

for i in $(seq 1 20);do docker run -itd --name=sbians-vm0$i --privileged openeuler:latest ;done

查看启动的20台虚拟机如图54所示

查看IP地址如图55所示

for i in $(docker ps | grep -aiE sbians|awk '{print $1}');do docker inspect $i|grep -aiE ipaddr|tail -1|grep -aiowE "([0-9]{1,3}\.){3}[0-9]{1,3}" ;done

配置自动发现主机如图56所示

配置发现范围,探测规则,以IP唯一标识如图57所示

成功发现主机如图58、图59所示

配置规则如图60所示

修改
/usr/local/zabbix/etc/zabbix_server.conf下的StartDiscoverers值提高发现速度如图61所示

vim /usr/local/zabbix/etc/zabbix_server.conf

重启zabbix服务如图62、图63所示

/etc/init.d/zabbix_server restart

相关推荐

Alist 玩家请进:一键部署全新分支 Openlist,看看香不香!

Openlist(其前身是鼎鼎大名的Alist)是一款功能强大的开源文件列表程序。它能像“万能钥匙”一样,解锁并聚合你散落在各处的云盘资源——无论是阿里云盘、百度网盘、GoogleDrive还是...

白嫖SSL证书还自动续签?这个开源工具让我告别手动部署

你还在手动部署SSL证书?你是不是也遇到过这些问题:每3个月续一次Let'sEncrypt证书,忘了就翻车;手动配置Nginx,重启服务,搞一次SSL得花一下午;付费证书太贵,...

Docker Compose:让多容器应用一键起飞

CDockerCompose:让多容器应用一键起飞"曾经我也是一个手动启动容器的少年,直到我的膝盖中了一箭。"——某位忘记--link参数的运维工程师引言:容器化的烦恼与...

申请免费的SSL证书,到期一键续签

大家好,我是小悟。最近帮朋友配置网站HTTPS时发现,还有人对宝塔面板的SSL证书功能还不太熟悉。其实宝塔早就内置了免费的Let'sEncrypt证书申请和一键续签功能,操作简单到连新手都能...

飞牛NAS部署TVGate Docker项目,实现内网一键转发、代理、jx

前面分享了两期TVGate:Q大的转发代理工具TVGate升级了,操作更便捷,增加了新的功能跨平台内网转发神器TVGate部署与使用初体验现在项目已经开源,并支持Docker部署,本文介绍如何通...

Docker Compose 编排实战:一键部署多容器应用!

当项目变得越来越复杂,一个服务已经无法满足需求时,你可能需要同时部署数据库、后端服务、前端网页、缓存组件……这时,如果还一个一个手动dockerrun,简直是灾难这就是DockerCompo...

深度测评:Vue、React 一键部署的神器 PinMe

不知道大家有没有这种崩溃瞬间:领导突然要看项目Demo,客户临时要体验新功能,自己写的小案例想发朋友圈;找运维?排期?还要走工单;自己买服务器?域名、SSL、Nginx、防火墙;本地起服务?断电、关...

超简单!一键启动多容器,解锁 Docker Compose 极速编排秘籍

想要用最简单的方式在本地复刻一套完整的微服务环境?只需一个docker-compose.yml文件,你就能一键拉起N个容器,自动组网、挂载存储、环境隔离,全程无痛!下面这份终极指南,教你如何用...

日志文件转运工具Filebeat笔记_日志转发工具

一、概述与简介Filebeat是一个日志文件转运工具,在服务器上以轻量级代理的形式安装客户端后,Filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读),并将来自...

K8s 日志高效查看神器,提升运维效率10倍!

通常情况下,在部署了K8S服务之后,为了更好地监控服务的运行情况,都会接入对应的日志系统来进行检测和分析,比如常见的Filebeat+ElasticSearch+Kibana这一套组合...

如何给网站添加 https_如何给网站添加证书

一、简介相信大家都知道https是更加安全的,特别是一些网站,有https的网站更能够让用户信任访问接下来以我的个人网站五岁小孩为例子,带大家一起从0到1配置网站https本次配置的...

10个Linux文件内容查看命令的实用示例

Linux文件内容查看命令30个实用示例详细介绍了10个Linux文件内容查看命令的30个实用示例,涵盖了从基本文本查看、分页浏览到二进制文件分析的各个方面。掌握这些命令帮助您:高效查看各种文本文件内...

第13章 工程化实践_第13章 工程化实践课

13.1ESLint+Prettier代码规范统一代码风格配置//.eslintrc.jsmodule.exports={root:true,env:{node...

龙建股份:工程项目中标_龙建股份有限公司招聘网

404NotFoundnginx/1.6.1【公告简述】2016年9月8日公告,公司于2016年9月6日收到苏丹共和国(简称“北苏丹”)喀土穆州基础设施与运输部公路、桥梁和排水公司出具的中标通知书...

福田汽车:获得政府补助_福田 补贴

404NotFoundnginx/1.6.1【公告简述】2016年9月1日公告,自2016年8月17日至今,公司共收到产业发展补助、支持资金等与收益相关的政府补助4笔,共计5429.08万元(不含...

取消回复欢迎 发表评论: