陈奇网络工作室

Centos7打造Zabbix4.0监控系统

上映日期:2020年6月23日11时52分36秒

资料来源:51CTO

阅读量:553

作者:君威奇I

专栏:系统操作和维护

是实时了解服务器运行状态,及时解决问题的好方法。目前有服务器的地方一定有监控系统。现有的监控软件很多,但是Zabbix可以灵活的监控服务器资源,兼具Cacti和Nagio的优点,功能更加强大,实现了企业级的分布式监控,因此在市场上的应用更加广泛。

一. Zabbix概述

Zabbix是基于Web接口的企业级开源监控套件,提供分布式系统监控和网络监控功能。具有主机性能监控、网络设备性能监控、数据库性能监控、各种报警方式、详细报表、图表绘制等功能。监控对象可以是Linux或Windows服务器,也可以是路由器、交换机等网络设备。通过SNMP(简单网络管理协议)、Zabbix、Agent、PING、端口监控等方法,为远程网络服务器提供监控和数据收集功能,并提供通知机制,使系统管理员能够快速定位和解决系统中存在的各种问题。目前Zabbix的最新版本是Zabbix 3.4。官方网站是http://www.zabbix.com。

扎比克斯自由了。Zabbix遵循GPL(通用公共许可证)版本2,这意味着它的源代码可以自由分发。Zabbix的商业版由Zabbix公司提供支持。世界上许多不同规模的组织都依赖Zabbix作为他们的主要监控平台。尤其是现在很多互联网公司都在用。

Zabbix是一个高度集成的网络监控解决方案,如下图所示:

1.Zabbix的重要组件

Zabbix主要由以下重要组件组成,具体功能如下:

Zabbix Server:负责接收Agent发送的报告信息的核心组件,它组织所有的配置、数据统计和数据操作;

数据库strongage:负责存储所有配置信息和收集的数据;

Web界面:是zabbix的GUI界面,通常与Zabbix服务器运行在同一台主机上。

代理:可选组件,常用于分布式监控环境。代理服务器收集一些数据转发给服务器,可以减轻服务器的压力。

*Agent:部署在被监控主机(客户端)上,负责收集被监控主机的数据,如CPU、内存、数据库等,然后发送给服务器或代理;

2.扎比克斯过程

Zabbix默认包含五个程序:zabbix_agentd、zabbix_get、zabbix_sender、zabbix_server、zabbix_proxy,另外一个zabbix_java_gateway是可选的,需要单独安装。下面我们来介绍一下它们各自的功能:

Zabbix_agentd:客户端守护进程,用于收集被监控终端的数据,如CPU负载、内存、硬盘使用情况等。

Zabbix _ get:Zabbix工具是一个独立的命令。Zabbix_get是一个在服务器端或代理端获取远程客户端信息的命令。主要用于调试。比如服务器无法获取客户端的内存数据时,我们可以使用zabbix_get获取客户端的内容进行故障排除;

Zabbix_sender:用于向服务器或代理发送数据,通常用于耗时的检查。很多检查非常耗时,导致zabbix超时。所以脚本执行后,我们可以使用sender主动提交数据;

zabbix _ server:zabbix _ server:zabbix守护进程。zabbix_agentd、zabbix_get、zabbix_sender、zabbix_proxy、

zabbix_java_gateway的数据最终提交给服务器。数据不是全部主动提交给zabbix_server,也有被动提交的,服务器主动获取数据;

zabbix _ proxy:zabbix _ proxy:zabbix。功能类似于server,唯一不同的是它只是一个中转站,采集的数据需要主动(或被动)提交给服务器;

zabbix _ java _ gateway:zabbix 2.0之后推出的功能,顾名思义:Java gateway,类似于agentd,目前只在Java中使用。需要注意的是,它只能主动获取数据,不能被动获取。它的数据最终将被提交给服务器或代理;

3.Zabbix监控架构

在实际生产环境中,Zabbix根据网络环境、监控规模等外部因素分为三种架构:服务器-客户端(直连)、主-节点-客户端(节点架构)、服务器-代理-客户端(代理架构),如下图所示:

1)服务器-客户端架构(直接连接)

服务器-客户端架构是Zabbix最简单的架构。监控机和被监控机直接在zabbix服务器和zabbix agentd之间交换数据,不需要任何代理,适用于网络简单,设备少的监控环境。

2)主节点客户端架构(节点架构)

主节点客户端架构(Master-node-client architecture)是Zabbix最复杂的监控架构,适用于跨网络、跨机房设备多的大规模环境。每个节点也是一个服务器。节点可以与代理连接,也可以直接与客户端连接。节点有自己的配置文件和数据库。它需要做的是将配置信息与监控数据项主数据同步。当主节点失效或损坏时,节点可以保证体系结构的完整性。

3)服务器-代理-客户端架构(代理架构)

代理是服务器和客户端之间的桥梁。代理本身没有前端,也不存储数据。它只是暂时存储agentd发送的数据,然后提交给服务器。这种体系结构通常与主节点客户端体系结构相比较,通常适用于监控跨机房和网络的中型网络体系结构。

4.百胜安装Zabbix。

Zabbix提供了两种安装方式:YUM安装和编译安装。需要注意的是,由于Centos的官方YUM源码中没有提供Zabbix软件包和相关的依赖包,所以如果要用YUM安装Zabbix,需要通过官方Zabbix源码或者第三方YUM源码来实现。Zabbix服务器需要LAMP环境或者LNMP环境。下面实验部署环境以YUM安装的LAMP环境为例,详细介绍Zabbix监控服务器的部署方法。

1)安装MariaDB

Centos 7系统光盘中默认提供的数据库是MariaDB而不是mysql,所以LAMP架构中使用MariaDB作为“M”,其他组件保留为Apache和PHP。MariaDB是MYSQL数据库源代码的分支版本,在大部分方面与Mysql兼容。

2)安装Zabbix

因为安装Zabbix的时候会安装很多依赖包,包括httpd和PHP相关的依赖包,所以可以直接安装Zabbix。不需要单独安装httpd和PHP。

其次,构建一个Zabbix监控服务器

此安装中的所有yum源都是通过连接到公共网络并使用网络源来配置的。

资料来源:http://mirrors.aliyun.com/repo/Centos-7.repo WGET

Zabbix 4.0来源:rpm-uvhhttps://repo.zabbix.com/zabbix/4.4/rhel/8/x86 _ 64/zabbix-release-4.4-1 . el8 . no arch . rpm

Zabbix依赖程序:yum-y安装Zabbix-server-MySQL Zabbix-Web-MySQL Zabbix-Apache-conf Zabbix-agent。

Zabbix官网:Zabbix官网

Zabbix 4.0官方配置文档:Zabbix 4.0官方配置文档。

1.安装Centos 7源

[root @ centos 02 ~]# CD/etc/yum . repos . d/

[root@centos02 yum.repos.d]# ls

本地回购

[root @ centos 02 yum . repos . d]# wget http://mirrors.aliyun.com/repo/Centos-7.repo

!-安装网络Centos 7源-

2.安装zabbix 4.0。

[root @ centos 02 yum . repos . d]# rpm-Uvh https://repo . zabbix . com/zabbix/4.4/rhel/8/x86 _ 64/zabbix-release-4.4-1 . el8 . no arch . rpm

3.安装mariadb数据库。

[root@centos02 ~]# yum -y安装mariadb mariadb-server!-安装mariadb数据库依赖项-

[root@centos02 ~]# systemctl启动mariadb.service!-启动服务-

[root@centos02 ~]# systemctl启用mariadb.service!-将服务设置为自动启动-

[root @ centos 02 ~]# MySQL admin-u root密码!-设置数据库密码-

[root @ centos 02 ~]# MySQL-u root-ppwd @ 123!-连接到数据库-

MariaDB [(none)]创建数据库zabbix字符集utf8 collate utf8 _ bin

!-为zabbix连接创建一个数据库,数据库名为zabbix,默认字符编码为utf8,-

MariaDB [(none)]授予zabbix上的所有特权。*到由\\\'pwd@123\\\ '标识的zabbix @ localhost!-授权zabbix帐户访问zabbix数据库的密码是pwd@123 -

4.安装并配置zabbix服务

[root@centos02 ~]# yum -y安装zabbix-server-MySQL zabbix-we B- MySQL zabbix-agent

!-安装zabbix依赖项-

[root @ centos 02 ~]# zcat/usr/share/doc/zabbix-server-MySQL */create . SQL . gz | MySQL

-uzabbix -ppwd@123 zabbix!-将zabbix数据导入到zabbix数据库的创建中-

[root @ centos 02 ~]# CP/etc/zabbix/zabbix _ server . conf/etc/zabbix/zabbix _ server . conf . bak!-备份zabbix服务配置文件-

[root @ centos 02 ~]# vim/etc/zabbix/zabbix _ server . conf!-修改zabbix服务配置文件-

91 DBHost=localhost!-删除注释符号-

100 DBName=zabbix!-数据库名称,根据实际情况修改,默认不修改-

116 DBUser=zabbix!-数据库用户名,默认情况下不需要修改-

124 DBPassword=pwd@123!-数据库密码,修改这一行-

[root @ centos 02 ~]# CP/etc/zabbix/zabbix _ agentd . conf/etc/zabbix/zabbix _ agentd . conf . bak!-备份zabbix代理的主配置文件-

[root @ centos 02 ~]# vim/etc/zabbix/zabbix _ agentd . conf

!-编辑zabbix代理的主配置文件,

(指定zabbix服务器的IP地址,这里需要指定服务器的IP地址,现在在同一个服务器上,所以都保持默认。)

-

98服务器=127.0.0.1!-客户端被动等待指定服务器查询数据-

139 ServerActive=127.0.0.1!-客户端主动向指定服务器提交数据-

150 Hostname=Zabbix服务器!-建议修改此行,配置规范的主机名-

[root @ centos 02 ~]# vim/etc/httpd/conf . d/zabbix . conf

!-编辑Zabbix前端配置文件,设置时区为上海-

21 php_value date.timezone亚洲/上海!-设置为上海时区,并删除这一行的注释符号-

现在服务器基本配置完成,但是由于字体的显示,用浏览器访问时可能会出现部分字符显示乱码的情况,所以你要下载标准的中文字体。可以通过网盘下载:https://pan.baidu.com/s/1iFpLZ4_5Snxry2jUmV8fCw.

提取代码:ao89

[root@centos02 ~]# ls

anaconda-ks . CFG initial-setup-ks . CFG sim kai . TTF

[root @ centos 02 ~]# find/-name graph font . TTF!-检查graphfont.ttf的路径-

/usr/share/zabbix/assets/fonts/graph font . TTF

[root @ centos 02 ~]# mv sim kai . TTF/usr/share/zabbix/assets/fonts/

!-将中文字体剪切到/usr/share/zabbix/assets/fonts/目录下-

[root @ centos 02 ~]# CD/usr/share/zabbix/assets/fonts/!-输入目录-

[root@centos02字体]# ls

graphfont.ttf simkai.ttf

[root @ centos 02 ~]# vim/usr/share/zabbix/include/defines . Inc . PHP

!-修改PHP界面支持的中文字体(不修改浏览器访问会出现乱码)-

70 define(\ \ \ ' ZBX _ GRAPH _ FONT _ NAME \ \ \ '\ \ \ ' sim kai \ \ \ ');

!-将原来的“graphfont”改为“sim kai”-

[root @ centos 02 ~]# system CTL start zabbix-server zabbix-agent httpd

!-启动zabbix-server、zabbix-agent和httpd服务-

[root @ centos 02 ~]# system CTL enable zabbix-server zabbix-agent httpd!-将启动设置为自动启动-

5.通过客户端用浏览器配置Zabbix服务器。

我这里的客户端用的是火狐浏览器,如果没有,可以通过上面的连接提取。

1)http://192.168.100.20/zabbix进入zabbix前端安装向导,点击下一步键。

2)环境检测界面,确保所有软件OK后再继续。

3)数据库连接配置界面,根据刚创建的zabbix数据库填写授权信息。

4)数据库连接配置完成后,填写zabbix服务信息。

5)返回配置汇总信息,默认进入下一步。

6)安装完成

7)在登录界面输入默认用户名Admin,密码zabbix即可登录zabbix服务器。

8)修改登录zabbix服务器的用户和密码,设置界面语言为中文。

9)设置完成后,退出并重新登录。

10)创建鲍勃(人名)用户,将用户加入客人群组,设置密码、语言及主题

11)检测内存,不会出现中文乱码

6、配置扎比克斯监控Linux操作系统客户端

1)安装扎比克斯客户端依赖程序

【root @ centos 03 yum。回购。d]# rpm-uvh 339回购。扎比克斯。com/zabix/4.4/rhel/8/x86 _ 64/zabix发行版-4.4-1 .8 .没有什么?每分钟转数

!-网络源安装zabbix4.0版本-

[root @ centos 03 ~]# yum-y安装zabbix代理!安装扎比克斯代理程式!-安装依赖程序-

[root @ centos 03 ~]# CP/etc/zabix/zabix _ agentd。conf/etc/zabix/zabix _ agentd。糖膏剂bak

!-备份配置文件-

[root@centos03 ~]#我来了/etc/zabix/zabix _ agentd。conf!-修改扎比克斯客户端主配置文件-

pid文件=/var/run/zabix/zabix _ agentd。PID

日志文件=/var/log/zabix/zabix _ agentd。原木

日志文件大小=0

服务器=192.168.100.20!-扎比克斯服务器端-

服务器活动=192.168.100.20!-扎比克斯服务器端-

主机名称=192.168.100.30!-扎比克斯客户端计算机名或者互联网协议(Internet Protocol)地址-

包括=/etc/zabix/zabix _ agentd。d/*。会议

#UnsafeUserParameters=0

[root @ centos 03 ~]# system CTL start zabix-agent。服务!-启动zabbix代理服务-

[root@centos03 ~]# systemctl启用扎比克斯代理。服务!-设置为开机自动启动-

[root @ centos 03 ~]# netstat-anbuntu | grep zabix!-监听代理人服务是否正常启动-

TCP 0 0 0。0 .0:10050 0 .0 .0:*列表2244/zabix _ agend

S7-1200可编程控制器

2)通过客户端使用浏览器配置扎比克斯服务器监控Linux操作系统

创建主机

编辑详细信息,单击提交

添加Linux操作系统主机应用集

添加监控项

创建图形

创建触发器

查看图形监控图

3334———— 3334343434——

更多关于云服务器,域名注册,虚拟主机的问题,请访问西部数码代理商官网:www.chenqinet.cn

相关推荐

后台-系统设置-扩展变量-手机广告位-内容页底部广告位3