【分布式应用】Zabbix——安装

news2025/1/20 1:35:35

目录

第一章zabbix概述

1.1.什么是监控概念

1.2.zabbix概述

1.3.zabbix 主要特点

1.4.zabbix主要功能

1.5.zabbix运行机制

1.6.zabbix 监控原理

1.7zabbix的架构,数据流向以及原理在图中做总结

1.8.数据采集模式

1.9.zabbix监控模式

第二章.安装 部署 zabbix 服务端

2.1安装环境部署

2.2下载安装 zabbix 

2.3安装数据库

2.4修改配置文件

2.5游览器访问

总结

1.zabbix主要特点

2.zabbix运行机制

3.zabbix架构数据流向以及原理 见图中总结

4.zabbix工作原理 数据流向

5.zabbix监控模式

第三章部署zabbix 客户端(端口号10050)

3.1安装

3.2 将客户端加入服务端的监控主机中

总结


第一章zabbix概述

1.1.什么是监控概念

作为一个运维,需要会使用监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果,和网站的健康状态。

通过一个友好的界面进行浏览整个网站所有的服务器状态
●可以在 Web 前端方便的查看监控数据
●可以回溯寻找事故发生时系统的问题和报警情况

Zabbix :: The Enterprise-Class Open Source Network Monitoring Solution

1.2.zabbix概述

zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。
●zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。
●zabbix 由 2 部分构成,zabbix server 与可选组件 zabbix agent。通过 C/S 模式采集数据,通过 B/S 模式在 Web 端展示和配置。
●zabbix server 可以通过 SNMP,zabbix agent,ping,端口监视等方法提供对远程服务器/网络状态的监视,数据收集等功能, 它可以运行在 Linux 等平台上。
●zabbix agent 需要安装在被监视的目标服务器上,它主要完成对硬件信息或与操作系统有关的内存,CPU 等信息的收集。
 

1.3.zabbix 主要特点

免费开源

自动发现服务与网络设备分布式

可以监视应用层以及web集中管理功能

安全认证

监视结果通过email通知运维 (管理员)

1.4.zabbix主要功能

cpu负载

内存使用

磁盘使用

网络状态

端口监视

日志监视

中间件监视

插件开发自定义

1.5.zabbix运行机制

zabbix server(收集数据展示界面,监控端) 和zabbix agent(被监控端,收集服务器信息,通过协议发给server端;可以在很多平台使用,比如windows)

zabbix server    通过 B/S 模式在 Web 端展示和配置

zabbix agent     通过 C/S 模式采集数据   端口号10050

在Linux可以监控windows server 现阶段版本2012   2016   2019 

在生产中如果有大量设备通过域控进行管理

1.6.zabbix 监控原理

zabbix agent安装在被监控的主机上,zabbix agent负责定期收集客户端本地各项数据,并发送至 zabbix server 端,zabbix server 收到数据后,将数据存储到数据库中,用户基于 Zabbix WEB 可以看到数据在前端展现图像。当 zabbix 监控某个具体的项目, 该项目会设置一个触发器阈值,当被监控的指标超过该触发器设定的阈值,会进行一些必要的动作,动作包括:发送信息(邮件、微信、短信,丁丁,语音电话)、发送命令(shell 命令、reboot、restart、install 等)。
 

zabbix 监控部署在系统中,包含常见的五个程序: zabbix_server、zabbix_agent、zabbix_proxy、zabbix_get、zabbix_sender 等。


●zabbix server:zabbix 服务端守护进程,其中 zabbix_agent、zabbix_get、zabbix_sender、zabbix_proxy 的数据最终都提交给 zabbix server;


●zabbix agent:客户端守护进程,负责收集客户端数据,例如:收集 CPU 负载、内存、硬盘使用情况等;


●zabbix proxy:zabbix 分布式代理守护进程,通常大于 500 台主机,需要进行分布式监控架构部署;


●zabbix get:zabbix 数据接收工具,单独使用的命令,通常在 server 或者 proxy 端执行获取远程客户端信息的命令;


●zabbix sender:zabbix 数据发送工具,用户发送数据给 server 或 proxy 端,通常用户耗时比较长的检查。

1.7zabbix的架构,数据流向以及原理在图中做总结

zabbix-client  架构                     服务端与客户端               小型架构
zabbix-proxy-client架构             zabbix分布式架构          中型架构
zabbix-master-node-client架构                                         大型架构

 

 

1.8.数据采集模式

zabiix-agent (数据采集) --》zabbix-server (数据分析、告警) --》数据库 (数据库存储) --》zabbix-web (数据展示)

1.9.zabbix监控模式

1.主动模式:agent像server发起连接

2.被动模式:server向aqent发起连接

第二章.安装 部署 zabbix 服务端

2.1安装环境部署

zabbix-server 内存至少 2G,推荐 4G; 

如果是编译安装要先安装LNMP       zabbix       LAMP        zabbix两种架构,yum安装不需要

systemctl stop firewalld

setenforce 0

hostnamectl set-hostname zbx-server

2.2下载安装 zabbix 

获取 zabbix 的下载源
rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm 

//更换 zabbix.repo 为阿里源
cd /etc/yum.repos.d


sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' zabbix.repo

yum clean all && yum makecache

yum install -y zabbix-server-mysql zabbix-agent

//安装SCL(Software Collections),便于后续安装高版本的 php,默认 yum 安装的 php 版本为 5.4,版本过低,zabbix 5.0 版本对 php 版本最低要 7.2.0 版本。SCL 可以使得在同一台机器上使用多个版本的软件,而又不会影响整个系统的依赖环境。软件包会安装在 /opt/rh 目录下。

yum install -y centos-release-scl 

/修改 zabbix-front 前端源,安装 zabbix 前端环境到 scl 环境下
vim zabbix.repo
......
[zabbix-frontend]
......
enabled=1          #开启安装源
......

yum install -y zabbix-web-mysql-scl zabbix-apache-conf-scl

2.3安装数据库

安装 zabbix 所需的数据库
yum install -y mariadb-server mariadb

systemctl enable --now mariadb

mysql_secure_installation         #初始化数据库,并设置密码,如 abc123
 

这里用的是mysql数据库,登录不需要密码

添加数据库用户,以及 zabbix 所需的数据库信息
mysql -u root -p                     # 登录不需要密码

CREATE DATABASE zabbix character set utf8 collate utf8_bin;


GRANT all ON zabbix.* TO 'zabbix'@'%' IDENTIFIED BY 'zabbix';


flush privileges;

//导入数据库信息
rpm -ql zabbix-server-mysql                                   #查询 sql 文件的位置

zcat /usr/share/doc/zabbix-server-mysql-5.0.24/create.sql.gz | mysql -uroot -p“” zabbix                    这里版本不对需要修改,不然没这个文件

2.4修改配置文件

修改 zabbix server 配置文件,修改数据库的密码
vim /etc/zabbix/zabbix_server.conf 
......
DBPassword=zabbix                    #124行,指定 zabbix 数据库的密码

//修改 zabbix 的 php 配置文件
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
......
php_value[date.timezone] = Asia/Shanghai        #24行,取消注释,修改时区

 这边很明显有错误,已修改。

//启动 zabbix 相关服务
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm

2.5游览器访问

浏览器访问:http://192.168.233.186/zabbix       点击下一步,设置数据库的密码 zabbix

(由于登陆时清除了网页缓存,登陆时已经进去了,暗部操作即可)


设置文件界面:点击左边菜单栏的【User settings】,【Language】选择 Chinese(zh_CN),再点击 Update 等安装完成后,默认的登录账号和密码为:Admin/zabbix新。

//解决 zabbix-server Web页面中文乱码问题


yum install -y wqy-microhei-fonts

\cp -f /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/fonts/dejavu/DejaVuSans.ttf

总结


1.zabbix主要特点

免费开源

自动发现服务与网络设备分布式

可以监视应用层以及web集中管理功能

安全认证

监视结果通过emai1通知运维(管理员)

主要功能

cpu负载

内存使用

磁盘使用

网络状态端口监视

日志监视

中间件监视

插件开发自定义


2.zabbix运行机制


zabbix server 和 zabbix aqent (端口: 10050)

C/s                通过B/S模式在web端展示和配置


3.zabbix架构数据流向以及原理 见图中总结


zabbix-client                架构
zabbix-proxy-client 

zabbix-master-node-client


4.zabbix工作原理 数据流向

abbix在进行监控时,zabbix客户端要安装在被监控设备上,负责定期收集数据,并将其发送给Zabbix服务端:

zabbix服务端安装在监控设备上,其将zabbix客户端发送的数据存储在我们的数据库中,zabbixweb根据数据在前端进行展示和绘图


5.zabbix监控模式

主动模式:agent像server发起连接
被动模式:server向aqent发起连接

第三章部署zabbix 客户端(端口号10050)

3.1安装

zabbix 服务端 zabbix_server 默认使用 10051 端口,客户端 zabbix_agent2 默认使用 10050 端口。

##1、关闭防火墙,修改主机名  

systemctl disable --now firewalld  

setenforce 0  

hostnamectl set-hostname zbx-agent01  ​

 

##2、服务端和客户端都配置时间同步,使用阿里云的时钟源  

yum install -y ntpdate  

ntpdate -u ntp.aliyun.com  ​

  

##3、客户端配置时区,与服务器保持一致  

mv /etc/localtime{,.bak}  

ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime  ​  

date

 ​  

 

##4、设置 zabbix 的下载源,安装 zabbix-agent2  

rpm -ivh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm  ​  

cd /etc/yum.repos.d  

sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo

   ​  

 

yum install -y zabbix-agent2  

 ​  

 

##5、修改 agent2 配置文件  

vim /etc/zabbix/zabbix_agent2.conf  

......  

Server=192.168.41.45                         #80行,指定 zabbix 服务端的 IP 地址  

 

ServerActive=192.168.41.45               #120行,指定 zabbix 服务端的 IP 地址   

Hostname=zbx-agent01                      #131行,指定当前 zabbix 客户端的主机名  ​

 

 

##6、启动 zabbix-agent2  

systemctl start zabbix-agent2  

systemctl enable zabbix-agent2  ​  

netstat -natp | grep zabbix  

tcp6       0      0 :::10050               :::*             LISTEN    4381/zabbix_agent2  

​  ​  

 

##7、在服务端验证 zabbix-agent2 的连通性  

yum install -y zabbix-get                    #服务端,安装 zabbix 主动获取数据的命令,get指令

 ​  

 

zabbix_get -s '192.168.233.100' -p 10050 -k 'agent.ping'  1            

 #服务端对客户端进行连通性测试,返回1表示连通  ​  

 

zabbix_get -s '192.168.41.46' -p 10050 -k 'system.hostname'  zbx-agent01    

#返回客户端的主机名说明正常连通

 

3.2 将客户端加入服务端的监控主机中

在 Web 页面中添加 agent 主机

1.点击左边菜单栏【配置】中的【主机】,点击【创建主机】  

【主机名称】设置成 zbx-agent01  

【可见的名称】设置成 zbx-agent01-192.168.233.100  

【群组】选择 Linux server  

【Interfaces】的【IP地址】设置成 192.168.233.100  ​

 

 

2.再点击上方菜单栏【模板】  【Link new tamplates】搜索 Linux ,选择 Template OS Linux by Zabbix agent  点击 【添加】

 

 

成功完成 

总结

zabbix工作原理(工作流程):

zabbix-agent 客户端,部署在被监控的对象主机上,负责定期收集监控数据,发送给zabbix-server 端;

zabbix-server 收到数据后会将数据存储在数据库中。

用户可以基于zabbix-web可以在WEB UI界面中查看展现的数据图像,以及进行相关的配置管理 用户还可以在WEBUI界面中设置监控项的触发器,如被监控的数据指标超过触发器设定的阈值,会进行发送通知信息或者一些应急操作指令。

zabbix的实际使用请见下一篇博客

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/427782.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Hyper-v下安装CentOS-Stream-9

1、我不想要动态扩展的硬盘,固定大小硬盘性能更高,所以这里我先创建一个固定硬盘(如果你想用动态扩展的硬盘,那么可以省略前面几步,直接从第7步开始,并在第12步选择创建可动态扩展的虚拟硬盘)&a…

JAVA开发(神乎其神的区块链概念和技术)

由于我最近需要做一个关于区块链的项目,所以想写篇博文记录一下自己的一些疑惑。区块链技术最火爆的时间应该是2016年和2017年。它产生的背景是B特币兴起,一时间说虚拟货币将取代所有实物货币炒的沸沸扬扬。它的主要思想思想是去中心化。网络上给了很多概…

ubuntu虚拟机下搭建zookeeper集群,安装jdk压缩包,搭建Hadoop集群与spark集群的搭建【上篇】

系列文章目录 在vmbox里面安装Ubuntu16.04并且配置jdk以及Hadoop配置的教程【附带操作步骤】 虚拟机vmware下安装Ubuntu16.04修改屏幕尺寸与更新源,以及对应的安装vim和vim常见的操作 Hadoop与主机连接以及20版本的Hadoop配置网络的问题_hadoop连不上网 Hadoop升…

英文文档翻译软件-汉语文章翻译成英语

免费文章翻译软件的主要优点包括: 方便快捷:在线免费文章翻译软件使得翻译变得更加方便和快速,只需要将需要翻译的文本复制粘贴到输入框中,即可获取翻译结果。 费用低廉或免费:相对于一些专业的翻译服务或软件&#x…

AcWing语法基础班 1.1 变量、输入输出、表达式和顺序语句

预备知识 首先先来了解一下最简单的C代码。 本文的所有代码操作均在AcWing的AC Editor中 #include <iostream>using namespace std;int main(){cout << "Hello World" << endl;return 0; }然后使用编译&#xff08;点击调试&#xff0c;再点击运…

(3)基础强化:静态类静态成员,静态构造函数,抽象类抽象成员,值类型和引用类型,Ref

一、静态成员 1、方法重写注意事项 1&#xff09;子类重写父类方法时&#xff0c;必须与父类保持一致的方法签名与返回值类型。即: 方 法名、返回值类型、参数列表都必须保持一致。[访问修饰符也得一致] 2&#xff09;“方法签名”:一般是指…

Authing 新增 Gitee 、Github、抖音、快手、华为、小米、Gitlab、Oppo、Amazon、Slack、Line 等多种身份源

Authing 身份源新增&#xff1a; 移动端&#xff1a;Gitee 、Github、抖音、快手、华为、小米、Gitlab、Oppo、Amazon、Slack、LineWeb 端&#xff1a;Amazon 身份源提供商&#xff08;Identity Providers&#xff0c;简称 IdP&#xff09; 是一种身份认证服务&#xff0c;其主…

干货分享!提高项目执行力的六大方法

在当今竞争激烈的商业环境中&#xff0c;企业成功的关键在于实施高效的项目管理。项目执行力是一个企业能否在规定时间内交付高质量成果的重要因素。为了确保项目最终交付&#xff0c;企业需要采取以下措施提高项目执行力。 1、明确项目目标和时间表 首先&#xff0c;企业需要…

理解C语言中的空指针和野指针

在C语言中&#xff0c;指针是一个非常重要的概念&#xff0c;可以用于操作变量和数据结构。但是&#xff0c;指针也是很容易出错的地方。其中包括两种可能的错误&#xff1a;空指针和野指针。 空指针 空指针指代无效的地址&#xff0c;表示指针不指向内存中的任何一个合法对象…

[oeasy]python0133_变量名_标识符_identifier_id_locals

变量名 回忆上次内容 上次讲了 什么是变量变量变量 能变的量 就是变量 各种系统、游戏就是由变量所组成的 声明了变量 并且 定义了变量 声明就是 declaration 把标识符 和 具体值 联系起来标识符就是 变量的标记符具体值 就是 赋给变量的值 过程就是 赋值 就是 assignment 可…

【id:35】【20分】E. Stack(类与构造)

题目描述 上面是栈类的定义&#xff0c;栈是一种具有先进后出特点的线性表&#xff0c;请根据注释&#xff0c;完成类中所有方法的实现&#xff0c;并在主函数中测试之。 堆栈类的说明如下&#xff1a; 1. 堆栈的数据实际上是保存在数组a中&#xff0c;而a开始是一个指针&…

Linux操作基础(进程和计划任务管理)

文章目录一 、程序和进程的关系1.1程序1.2进程1.3进程和线程的关系二 、查看进程的命令2.1 ps命令2.11 ps aux2.12 ps -elf2.3 top 命令2.4 pgrep命令2.5 进程的启动方式2.51 手工启动2.52 调度启用进程的前后台调度终止进程的运行2.6 kill命令三 、计划任务管理3.1使用at命令&…

Java面试技巧之每天一个Tip——SpringBean生命周期和作用域?

Spring Bean是个「古老的」问题&#xff0c;似乎面试中已经不常见了。 但是&#xff0c;偶尔&#xff0c;面试者还是会遭遇到这个问题&#xff0c;以至于被打了个措手不及&#xff0c;一脸懵。 为了防止出现类似的情况&#xff0c;Tip一下大家&#xff0c;很简单的Tip&#x…

nginx (uos)

安装nginx apt install nginx php php-fpm -y 切换目录 cd /etc/nginx vim /etc/nginx/conf.d/proxy.conf server { listen 80; ssl_certificate "/etc/nginx/nginx.crt"; ssl_certificate_key "/etc/nginx/nginx.key"; …

项目1实现login登录功能方案设计第三版

需求优化点:MySQL表常用功能模块实现方案index页面home页面需求 实现一个登录功能 实现的功能 注册(邮箱注册)登录(邮箱密码)重置密码查看操作记录(登录, 注册, 重置密码, 登出. 都算操作)登出在第2版的基础上进行优化:\ 优化点: VerificationCode(验证码储存库): 增加时间字段…

LAMP框架的架构与环境配置

1.LAMP架构的相关知识 1.1 LAMP架构的概述 LAMP架构是目前成熟的企业网站应用模式之一&#xff0c;指的是协同工作的一整套系统和相关软件&#xff0c;能够提供动态Web站点服务及其应用开发环境。LAMP是一个缩写词&#xff0c;具体包括Linux操作系统、Apache网站服务器、MySQ…

追梦之旅【数据结构篇】——详解小白如何使用C语言实现堆数据结构

详解小白如何使用C语言实现堆数据结构 “痛”撕堆排序~&#x1f60e;前言&#x1f64c;什么是堆&#xff1f;堆的概念及结构堆的性质&#xff1a;堆的实现堆向下调整算法画图分析&#xff1a;堆向下调整算法源代码分享&#xff1a;向下调整建小堆向下调整建大堆堆向上调整算法…

矩阵求逆_高斯消元法

高斯消元法流程 首先必须要判断矩阵是不是一个方阵&#xff0c;其方法是对于一个矩阵AnnA_{n \times n}Ann​&#xff0c;先构造一个增广矩阵W[A∣E]W[A \mid E]W[A∣E]&#xff0c;其中EEE是一个nnn \times nnn的单位矩阵&#xff0c;这样WWW就成了一个n2nn \times 2nn2n的矩…

说说你对Event Loop(事件循环)的理解?

目录标题一、是什么二、事件循环三、宏任务和微任务微任务宏任务四、async与awaitasyncawait一、是什么 Javascript在设计之初便是单线程&#xff0c;即指程序运行时&#xff0c;只要一个线程存在&#xff0c;同一时间只能做一件事。 为了解决单线程运行阻塞问题&#xff0c;J…

【jvm系列-07】深入理解执行引擎,解释器、JIT即时编译器

JVM系列整体栏目 内容链接地址【一】初识虚拟机与java虚拟机https://blog.csdn.net/zhenghuishengq/article/details/129544460【二】jvm的类加载子系统以及jclasslib的基本使用https://blog.csdn.net/zhenghuishengq/article/details/129610963【三】运行时私有区域之虚拟机栈…