Zabbix监控部署
一.Zabbix是什么
Zabbix 是一个企业级开源分布式监控解决方案。它的核心用途是实时监控成千上万台服务器、虚拟机、网络设备(交换机/路由器)、数据库、中间件和云服务的运行状态。
Zabbix的架构可以分成三个部分--Zabbix server、Zabbix Proxy和Zabbix Agent这三个部分。server端就是核心服务端,负责接收数据、处理数据、触发告警、存储历史数据。通常部署在独立的物理机或虚拟机上。Agent就是部署在客户端,也就是被监控的服务器的,负责主动采集CPU、内存、磁盘等系统信息,并发送给Server或Proxy。而Proxy也是服务端,部署在跨地域的分公司或大规模集群中,代表Server收集本地的数据,然后统一发送给Server,减轻Server的压力,是一个可选组件。对于server来说,获取数据有两种方式,一种是拉取,就是每隔一段时间就主动从agent端拉取数据;还有一种是push数据,这种就是agent数据变化就自己把数据push给server端。
对于实验,我们只要server和agent就可以了。
二.下载Zabbix以及初始配置
下载Zabbix我们直接前往官网即可,我们这里使用的是rocky9的操作系统,我们选择安装的最好是LTS的,这是长期支持版本,我们这里装的就是Zabbix6.0 LTS版本的。
在安装界面选好我们需要的版本和操作系统的版本,然后我们这里需要部署的就是agent端、server端以及web界面,那么此时我们可以选择的数据库有两个,我们使用MySQL,然后web服务使用Apache即可。
然后官方文档就会给出对应的操作,我们直接照着官方文档的来操作就可以了。
那么我们照着执行即可:先升级一下我们的软件源,添加这个官方的下载源。
此时我们ls就看见,是有了Zabbix的官方源的,然后我们直接安装Zabbix的组件即可。
这里就包括了Zabbix的server端,同时编译时就将MySQL作为数据库绑定了;前端界面代码,同时包含了MySQL的PHP驱动,让前端连接上数据库;Apache的配置文件;数据库的初始化脚本以及agent端让这台机器也可以被监控,和配置selinux策略,让机器在开启selinux下也可以正常读写日志,连接数据库等等。
然后我们对数据库进行初始化
初始化成功之后,就将我们之前安装的数据库初始化的脚本导入,此时就会自动配置我们的数据库,同时提醒我们设置新密码。
最后为Zabbix server连上数据库,让Zabbix监控到的数据都放在我们指定的这个数据库中。
配置zabbix_server.conf文件:
将DBPassword改成自己刚刚设置的密码,其他的默认不需要改,因为我们的数据库是在本机,而且其他都是按照官方来的,所以配置是一样的。
三.前端初始化
创建完这些之后我们就可以使用浏览器来访问服务端的web界面了,不过第一次访问的时候,还要进行一些简单的配置。
他首先会确认这些依赖性是否完整,全部ok之后我们就可以点击next step了,此时就需要将我们刚才初始化的数据库信息填写一下。
然后后面就一直点next step就行,最后就是一个登录界面:
初始账户是Admin,密码是zabbix,然后进去之后可以修改密码,作为管理员进入。
四.agent端配置--添加主机
此时server端和web界面都已经创建好了,但是此时监控的主机就只有server一个(因为我们一开始也将server端配置成被监控的)。那么此时,我们就可以在其他主机上安装监控,也就是Zabbix agent端。这些步骤在官方文档上面也是有的。
在目标主机中,也先将yum源进行一个更新。
更新好之后,在客户端我们就只用安装agent就可以了,只用对这个进行监控,然后将数据上传给server端。
然后配置/etc/zabbix/zabbix_agentd.conf文件,将里面的server端配置成我们刚才的主机ip地址。(默认是localhost,所以server端自己不用配置)
将这两行全部都修改成server主机地址,第二个配置的意思是直接agent直接push数据给server主机。
然后我们客户端配置了,想要监控server端肯定要去主动连接才可以,这里的连接时直接在Zabbix的web界面上执行的。
在网页中的配置选项中的主机,右上角有一个创建主机,我们点击创建主机即可。
然后写上我们的客户端的名字,然后这里群组我们选择Linux servers即可,这里选择了官方给的群组就会有一些监控项、触发器的模板推荐,我们后续可以选择。然后填写我们agent的ip地址,点击添加即可,我们这里没有选择模板的话,默认是没有监控项和触发器的,我们后续再来添加。