帮助文档
专业提供香港服务器、香港云服务器、香港高防服务器租用、香港云主机、台湾服务器、美国服务器、美国云服务器vps租用、韩国高防服务器租用、新加坡服务器、日本服务器租用 一站式全球网络解决方案提供商!专业运营维护IDC数据中心,提供高质量的服务器托管,服务器机房租用,服务器机柜租用,IDC机房机柜租用等服务,稳定、安全、高性能的云端计算服务,实时满足您的多样性业务需求。 香港大带宽稳定可靠,高级工程师提供基于服务器硬件、操作系统、网络、应用环境、安全的免费技术支持。
服务器资讯 / 香港服务器租用 / 香港VPS租用 / 香港云服务器 / 美国服务器租用 / 台湾服务器租用 / 日本服务器租用 / 官方公告 / 帮助文档
案例:搭建Zabbix监控系统
发布时间:2024-03-07 11:03:10   分类:帮助文档
案例:搭建Zabbix监控系统



        前言:Zabbix可以灵活地监控服务器资源,并且集Cacti与Nagio两者的优点于一身且功能更强大,实现企业级分布式监控,所以在市场应用更广。


目录
🍇Zabbix概述
🍇案例实施
🍒搭建yum源
🍒安装MariDB
🍒安装Zabbix
🍒编辑配置文件
🍒安装zabbix web接口
🍇Zabbix基本配置
🍒Zabiix用户管理
🍒修改Zabbix中文乱码
🍒Zabbix监控Linux服务器
🍒Zabbix监控windows服务器
🍇Zabbix 自定义监控项

        🍤:博客主页
        🍤:选择大于努力
        🍤:如果这个博主有幸得到你的喜欢,在此求关注❤️!

Zabbix概述
        Zabbix是一个基于Web界面企业及开源监控套件。
🍤具备功能
主机的性能监控、网络设备性能监控、数据库性能监控、多种告警方式、详细报表图表绘制
🍤监测对象
Linux 服务器 、Windows服务器、路由器、交换机等网络设备 其官方网站是Zabbix
🍤监控架构
server-client:适用于网络比较简单,设备较少的监控环境。master-node-client:适用于跨网络、跨机房、设备较多的大型环境。server-proxy-client:适用于跨网络、跨机房的中型网络架构。
案例实施
        Zabbix提供两种安装方式:YUM安装与编译安装。由于CetnOS官方YUM源中并不提供Zabbix软件包以及相关依赖包,因此,如果想用YUM安装Zabbix需要通过Zabbix官方源或第三方提供的YUM源实现。
🍤实施环境
        目标:首先配置Zabbix服务器,通过 Zabbix服务器监控linux服务器和windows服务器。
        前提:关闭防火墙、selinux,如图配置IP地址。

搭建yum源
        🍤配置Zabbix之前先搭建Zabbix服务器的yum源。
............//将rpm文件指定到/zabbix目录中
[root@localhost ~]# mkdir /zabbix
[root@localhost ~]# mount /dev/cdrom /media
mount: /dev/sr0 is write-protected, mounting read-only
[root@localhost ~]# cp /media/* /zabbix/
............//生成yum源目录文件
[root@localhost ~]# cd /zabbix/
[root@localhost zabbix]# createrepo .
............//指定本地yum源路径为/zabbix目录
[root@localhost zabbix]# cd
[root@localhost ~]# rm -rf /etc/yum.repos.d/*
[root@localhost ~]# vim /etc/yum.repos.d/a.repo
[a]
name=a
baseurl=file:///zabbix
gpgcheck=0
安装MariDB
        在CentOS7系统中光盘镜像中默认提供的数据库软件不是MySQL而是MariaDB,因此在LAMP架构中使用MariaDB来充当“M”的角色,其余的组件还是保持原有的Apache与PHP。MariaDB是MySQL数据库源码的一个分支版本,与MySQL在大多数方面是兼容的。
        🍤通过部署下面命令安装并启动MariaDB,设置数据库管理员密码为"pwd123",验证数据库是否成功安装。
[root@localhost ~]# yum -y install mariadb-server mariadb
[root@localhost ~]# systemctl start mariadb
[root@localhost ~]# systemctl enable mariadb
[root@localhost ~]# mysqladmin -u root password 'pwd123'
[root@localhost ~]# mysql -uroot -ppwd123
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 5.5.56-MariaDB MariaDB Server

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>
安装Zabbix
        🍤安装Zabbix时会安装很多依赖包,其中包括httpd与PHP相关依赖包,所以直接安装Zabbix即可。
[root@localhost ~]# yum -y install zabbix-server-mysql zabbix-web-mysql zabbix-agent
        🍤安装Zabbix Web时需要数据库,在MariaDB中手动创建数据库名为zabbix的数据库,并授权给zabbix用户使用,以增加数据库的安全性。
[root@localhost ~]# mysql -u root -ppwd123
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.01 sec)
MariaDB [(none)]> grant all privileges on zabbix.* to zabbix@localhost identified by 'pwd456';
Query OK, 0 rows affected (0.00 sec)
MariaDB [(none)]> exit
Bye
        🍤导入数据库SQL脚本文件。
[root@localhost ~]# zcat /usr/share/doc/zabbix-server-mysql-3.4.1/create.sql.gz | mysql -uzabbix -p zabbix
Enter password: //输入zabbix用户密码后稍等片刻,等待导入数据
[root@localhost ~]#
编辑配置文件
        🍤通过编辑配置文件,配置指定数据库的名称、用户、密码。
[root@localhost ~]# vim /etc/zabbix/zabbix_server.conf
DBHost=localhost //需要去掉注释
DBName=zabbix
DBUser=zabbix
DBPassword=pwd456 //需要去掉注释,并设置zabbix用户密码
        🍤编辑zabbix agent的配置文件/usr/local/etc/zabbix_agentd.conf,必须指定zabbix server的IP地址,在每台安装agent的主机上都要配置。这里要指定服务器的IP地址,现在在同一台服务器上,所以不修改!
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1 //客户端被动等待指定服务器来查询数据
ServerActive=127.0.0.1 //客户端主动提交数据到指定的服务器
Hostname=Zabbix server //主机名称
        🍤执行以下命令启动zabbix-server、zabbix-agent与httpd。
[root@localhost ~]# systemctl start zabbix-server
[root@localhost ~]# systemctl enable zabbix-server
[root@localhost ~]# systemctl start zabbix-agent
[root@localhost ~]# systemctl enable zabbix-agent
[root@localhost ~]# systemctl start httpd
[root@localhost ~]# systemctl enable httpd
安装zabbix web接口
        🍤编辑Apache服务器针对Zabbix的前端配置文件,设置时区与当前系统一致。
[root@localhost ~]# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai //删掉注释,修改时区为上海
[root@localhost ~]# systemctl restart httpd
        🍤打开浏览器访问http://192.168.1.10/zabbix,打开Zabbix前端安装向导,如下图所示。

        🍤单机"Next step"按钮,进入系统环境检测界面,全部符合后进入下一步。

        🍤根据之前配置好的zabbix数据库填写授权信息。密码提示:“pwd456”。

        🍤数据库连接成功配置后,填写连接Zabbix 服务信息。

       🍤返回一个汇总的配置信息查看无误后下一步即可。

        🍤提示安装完成。

        🍤登录zabbix页面,默认用户名为Admin、密码zabbix。

Zabbix基本配置
Zabiix用户管理
        🍤为了增强安全性,需要修改Zabbix服务器默认用户Admin的初始密码。使用默认用户名Admin登录Zabbix服务器,选择"Administration"→"users"→"Admin"进入用户配置界面。

        🍤单击"change passwrod"按钮来更改密码,语言界面显示改为中文,然后单击"update"按钮提交,刷新界面生效。

        🍤单击用户界面中的“创建用户”按钮,即可弹出创建用户界面,添加相应的信息即可创建新用户。

        🍤创建用户的时候还可以选择添加相应的群组,点击”添加“即可。

修改Zabbix中文乱码
        🍤安装Zabbix后,当显示语言为中文时,可能会出现中文乱码情况,这主要是字体导致的问题,如果要解决,需要下载合适的字体,并将其上传到Zabbix服务器上。

        🍤下载标准中文字体(simkai.ttf),将其上传到Zabbix服务器的文档根目录中,YUM安装的默认安装目录在/usr/share/zabbix中。
[root@localhost ~]# cp /media/simkai.ttf /usr/share/zabbix/fonts/
[root@localhost ~]# ls /usr/share/zabbix/fonts/
graphfont.ttf simkai.ttf
[root@localhost ~]# chmod 777 /usr/share/zabbix/fonts/simkai.ttf
        🍤通过以下命令修改PHP界面的字体文件,将原本的graphfont更改为simkai,然后刷新界面即可正常显示中文。
[root@localhost ~]# vim /usr/share/zabbix/include/defines.inc.php
define('ZBX_GRAPH_FONT_NAME',    'simkai'); //直接修改后面单引号的内容即可

Zabbix监控Linux服务器
        🍤如果希望监控Linux服务器,可以使用agent的方式,在Linux服务器上安装zabbix的agent。(被监控端操作)
[root@localhost ~]# mount /dev/cdrom /media/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@localhost ~]# ls /media
simkai.ttf           zabbix-agent-3.2.6-1.el7.x86_64.rpm
zabbix-3.2.6.tar.gz zabbix_agents_3.2.0.win.zip
[root@localhost ~]# rpm -ivh /media/zabbix-agent-3.2.6-1.el7.x86_64.rpm
        🍤修改agent配置文件,其中Server与ServerActive配置项指定zabbix服务器地址,但是作用并不相同。Server用于客户端被动等待指定服务器来查询数据,ServerActive用与客户端主动提交数据到指定的服务器。
        🍤Hostname必须与Zabbix Web上名称一致,否则Zabbix 主动监控无法正常工作。
[root@localhost ~]# cp /etc/zabbix/zabbix_agentd.conf /etc/zabbix/.zabbix_agentd.conf.bak
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=linux-001
        🍤启动agent服务并设置开机启动,默认端口为10050。
[root@localhost ~]# systemctl start zabbix-agent
[root@localhost ~]# systemctl enable zabbix-agent
Created symlink from /etc/systemd/system/multi-user.target.wants/zabbix-agent.service to /usr/lib/systemd/system/zabbix-agent.service.
[root@localhost ~]# netstat -anpt | grep agent
tcp       0     0 0.0.0.0:10050           0.0.0.0:*               LISTEN     7669/zabbix_agentd  
tcp6       0     0 :::10050               :::*                   LISTEN     7669/zabbix_agentd  
        🍤在zabbix服务器上添加主机。
        登录Zabbix web界面,选择“配置”→“主机”→“创建主机”。添加主机名称为“linux-001”、群组为“Linux servers”的主机然后在agent代理程序接口处添加Linux服务器的IP地址192.168.1.20。


        🍤然后左上角,选择“模板”,将链接的模板选择为"Template OS Linux",单击“添加”按钮,完成主机的添加。

        🍤稍等一会,就可以看到下图中可用性列中"ZBX"为绿色,则表示添加成功。此刻也可以去查看”检测中“→“图形”,选择监测的群组和主机即可查看到服务器状态。

Zabbix监控windows服务器
        🍤在windows服务器上安装agent程序
        将下载的压缩包解压,在解压文件的bin目录下会有win32和win64两个文件夹,根据windows系统的版本自行进行选择,将客户端程序文件复制至C:\zabbix,将conf文件中的zabbix_agentd.win.cof配置文件同样复制至C:\zabbix。在配置文件中修改如下配置项:(推荐使用写字板或标准文本工具编辑)
Server=192.168.1.10
ServerActive=192.168.1.10
Hostname=win-001
        🍤注意:需在C盘创建一个zabbix的目录,把下图中文件导入进入后在编辑文件zabbix_agentd.win.cof。

        🍤使用cmd命令行进行安装启动agent。

        agent常用参数:-c,指定配置文件;-i,安装;-s,启动;-x,停止;-d,卸载。
       🍤到zabbix服务器上添加主机。
        登录zabbix web界面,选择“配置”→“主机”→“创建主机”。添加主机名为“win-001”,同时创建新群组“Windows servers”,在agent代理程序接口处添加Windows服务器的IP地址192.168.1.30。

        🍤选择”模板“界面,将链接的模板选择为“Template OS Windows”,单击“添加”按钮,安装主机的添加。稍等片刻即可查看到

        🍤而在检测中选项也会查看到一些关于win-001的监控状态。

Zabbix 自定义监控项
        Zabbix自带的默认模板里包括了很多监控项,也可以根据需求自定义监控项。下面以创建自定义监控项的方式,以创建监控httpd进程为例,介绍Zabbix自定义监控项。
        🍤首先需要在被监控端(centos7系统)创建监控脚本存放目录/etc/zabbix/zabbix_scripts,然后在该目录下编写脚本名称为check_httpd.sh的监控脚本。
[root@localhost ~]# mkdir /etc/zabbix/zabbix_scripts
[root@localhost ~]# vim /etc/zabbix/zabbix_scripts/check_httpd.sh
#!/bin/bash
result=`ps -ef | grep httpd | grep -v grep`
if [ -n "$result" ]
then
      echo '1'
else
      echo '2'
fi
        🍤修改zabbix_agentd.conf配置文件。
[root@localhost ~]# vim /etc/zabbix/zabbix_agentd.conf
UnsafeUserParameters=1 //去注释,默认0修改为1
        🍤在/etc/zabbix/zabbix_agentd.d/目录下创建userparameter_httpd.conf文件夹,并在文件中设置自定义监控项。
[root@localhost ~]# cd /etc/zabbix/zabbix_agentd.d/
[root@localhost zabbix_agentd.d]# vim userparameter_httpd.conf
UserParameter=check_httpd,sh /etc/zabbix/zabbix_scripts /check_httpd.sh
[root@localhost ~]# systemctl restart zabbix-agent //重启后生效
        🍤登录Zabbix web,选择要增加监控项的主机,选择监控项→创建监控项,主机选择”linux-001“,名称为“httpd监控”,键值为”check_httpd“,配置后点击下方添加按钮即可。


        🍤添加成功后,在最新数据中查看是否获取到数据。




香港云服务器租用推荐
服务器租用资讯
·广东云服务有限公司怎么样
·广东云服务器怎么样
·广东锐讯网络有限公司怎么样
·广东佛山的蜗牛怎么那么大
·广东单位电话主机号怎么填写
·管家婆 花生壳怎么用
·官网域名过期要怎么办
·官网邮箱一般怎么命名
·官网网站被篡改怎么办
服务器租用推荐
·美国服务器租用
·台湾服务器租用
·香港云服务器租用
·香港裸金属服务器
·香港高防服务器租用
·香港服务器租用特价