Linuxword Global
当前位置: Linux技术 > 最详细的Zabbix监控系统安装部署过程(图文)

这篇文章可能有点长,但全部是干货,安装部署过程中,会遇到一些问题,对于linux还不够精通的我,只能找度娘慢慢解决,好在最终还是解决了。所以就整理记录一下,方便小白学习、交流,少走弯路。建议先收藏了或分享某圈,有空再慢慢看。

一、环境准备

之前给大家分享在虚拟机上安装linux系统,本期龙哥与大家分享一下,如何在linux系统上部署zabbix监控系统。

部署前,先确保虚拟机能正常上网以及物理机可以与虚拟机ping通。

为啥要确保正常上网? 答:因为部署过程中,需要下载更新包。

为啥物理机与虚拟机要互通? 答:因为部署完成后,就可以再物理机上的浏览器输入IP地址访问、管理。以及还可以通过CRT来登录linux系统,进行修改配置。

设置虚拟机能正常上网

1、把虚拟机网卡设置NAT模式

c8f1fb337af6603487a5e2ccf6edd81b

2、用linux系统上的浏览器打开网页,测试上网是否ok:

6d9ee5405ec5e8b6080d0790007fb0e5

测试电脑物理机与虚拟机是否联通了?

1、确认一下虚拟机的网卡获取的IP地址网段:

24d42ecd67a64c250abbf26e9ec9e009

2、用物理机上的VMware 8 网卡设置如下:

d515825e81987fb8778a554ea0c1b74b

3、在物理机上ping一下虚拟机是否可以联通:

66ffd50ddde5aa07b3803db2146e47fa

验证没问题。

4、如果你不喜欢用linux自带的终端,联通后了,这时你就可以使用物理机上的SecureCRT了:

bc497e500dcc8b3a30a5c10682b5c562
4a7f957cc4250a56e1720d060dca9267
5f128f51bf5e71c26b6e5f82c4f1b0a6

二、获取zabbix源码

1、到官方网确认版本的服务情况,这里我将选择“zabbix 4.0 LTS”版本。

55a712628ece4aa3a4ca5df43855ef11

2、获取zabbix包,有两种方法:

a、从官方网

https://repo.zabbix.com/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm

0761b3133d9f91cd4d96fc5bdf4da166

b、如也可以从清华大学开源软件镜像站获取

https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/8/x86_64/

b0489e040a2f6bd19fe92205ab92479e

选择release,右键,复制此链接:

98d204fc88eb7322b15a5f1892e1a530

https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm

三、部署步骤

1、接下来使用wget下载下来:

代码语言:javascript
代码运行次数:0
复制

wget https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm

(手机看不全,可以左右滑动)

d19ce79b7e61397d4cabef1d9624c5ab

2、安装

ls查看文件名

cd2a13895e38cdb7f0b86bd3eb580ea1
代码语言:javascript
代码运行次数:0
复制

 rpm -ivh zabbix-release-4.0-2.el8.noarch.rpm
f564b62364c11a6c885fea031325717d
代码语言:javascript
代码运行次数:0
复制

 rpm -ql zabbix-release  //查看一下这个包里面有哪些文件。
16c3ae618463f40ab527136227f70c8e

编辑一下zabbix.repo,把里面的地址修改成从清华园下载的地址

代码语言:javascript
代码运行次数:0
复制

vim /etc/yum.repos.d/zabbix.repo
b21e00f110c567c101d8f635b146441c

把http://repo.zabbix.com

替换成https://mirrors.tuna.tsinghua.edu.cn/zabbix

使用如下命令进行一键替换即可:

代码语言:javascript
代码运行次数:0
复制

:%s#http://repo.zabbix.com#https://mirrors.tuna.tsinghua.edu.cn/zabbix#g

替换后:

5c56fb9aa5dd68c5de3fbd5cbd048389

再把gpgcheck=1修改成0,也是可以用一键替换的命令:

gpgcheck是gpg验证是否开启的选项,1是开启,0是不开启,一般情况可以关掉。

代码语言:javascript
代码运行次数:0
复制

%s#gpgcheck=1#gpgcheck=0#g

然后保存

代码语言:javascript
代码运行次数:0
复制

:wq

3、安装zabbix服务端、zabbix-web前端

代码语言:javascript
代码运行次数:0
复制

yum install zabbix-server-mysql zabbix-web-mysql -y
78ed661a972d42c6e8c9a4bebda2a290
7099e459d9375a6114fd2a70f6afb83d

4、安装mariadb,创建zabbix库,授权zabbix用户

代码语言:javascript
代码运行次数:0
复制

yum install mariadb-server.x86_64
b20a5e5b1c14230a095a402ca72acac4
3f7150c8ed9decae368f344593e5bc44

启动一下mariadb:

代码语言:javascript
代码运行次数:0
复制

systemctl start mariadb.service

顺便设置一下,开机自启:

代码语言:javascript
代码运行次数:0
复制

systemctl enable mariadb.service

接下来,对数据库进行安全初始化:

代码语言:javascript
代码运行次数:0
复制

 mysql_secure_installation

一路选择y:

4cd320e510f278b790ccb460e9661c96

创建zabbix库:

记得指定utf8,如下命令:后面才可以支持中文。

代码语言:javascript
代码运行次数:0
复制

create database zabbix character set utf8 collate utf8_bin;

对zabbix授权,设置密码为along@123:

代码语言:javascript
代码运行次数:0
复制

 grant all on zabbix.* to zabbix@localhost identified by 'along@123';
17147954178f294344db1870b666eb5a

使用quit 退出数据库:

aa3fdd85e71508e54aed11306b69866c

导入zabbix表结构和初始数据:

导哪里的数据呢?可以查的:

代码语言:javascript
代码运行次数:0
复制

 rpm -ql zabbix-server-mysql  | grep sql
ec58e9017dc933f3e3fd32a887863cb6

导入数据,并设置数据库用户名、密码:

代码语言:javascript
代码运行次数:0
复制

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -palong@123 zabbix

怎么确认有没有导入成功了?使用下面命令,检查zabbix库是否导入成功:

代码语言:javascript
代码运行次数:0
复制

mysql zabbix -e 'show tables;'
f5b26b8703b4a030c712ab32a2b39ef9

5、配置启动zabbix-server:

代码语言:javascript
代码运行次数:0
复制

vim /etc/zabbix/zabbix_server.conf

使用:‘/DBH’,搜索,看到如下几个,如果有注释,记得取消掉:

代码语言:javascript
代码运行次数:0
复制

DBHost=localhost //或写127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=along@123
da468877ad87440bd9b05e87efffc11e

然后记得保存,退出。

代码语言:javascript
代码运行次数:0
复制

:wq

启动zabbix-server,并设置开机自启

代码语言:javascript
代码运行次数:0
复制

systemctl start zabbix-server
代码语言:javascript
代码运行次数:0
复制

systemctl enable  zabbix-server

如果zabbix-server进程没进来,报错,不能链接数据库等,可以使用如下命令:

代码语言:javascript
代码运行次数:0
复制

mysql -uroot -p -e "use zabbix;source /usr/share/doc/zabbix-server-mysql/create.sql;"

记得关掉selinux:

代码语言:javascript
代码运行次数:0
复制

 vim /etc/selinux/config
a12f724aaac0b6bb1939e1520dc9011d

把它改为disabled,然后保存,重启系统。

查看selinux状态:

代码语言:javascript
代码运行次数:0
复制

getenforce
265b54ccf0c26a6dcfdb00ee5721a7d4

zabbix进程也起来了,如果出现页面打不开,拒绝访问:(没报错的话,跳过)

cb81d33e9e2367301ad61b388ed5a824

打开浏览器,输入:ip地址/zabbix

db18ebadd8824394283bf90319d3ece9

那么应该是防火墙端口的问题,执行如下命令即可:

代码语言:javascript
代码运行次数:0
复制

firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --query-port=80/tcp
firewall-cmd --reload

查询防火墙80端口是否放开:

2624ca6b086faba296a7e248fa2f3771

防火墙放开80端口:

4172e7de772dfed970dd18c09acaf2a3

重新加载一下:

9a75198e034c0dc90abb3db1cb9193a5

再测试一下,就发现可以打开了:

48e4d6207dff1755aa8fa990d228c144

四、web页面安装

接下来,我们就可以在web安装一下:点击Next step

edb9555afe92eeb3ea6e493d154e1c4b

发现PHP存在一个时区问题,其他都是ok的,

我们到后台设置一下即可:

代码语言:javascript
代码运行次数:0
复制

vim /etc/php-fpm.d/zabbix.conf
996bf2e41dd5ea17f99c4051ff0e9c3a

取消注释,并改为Aisa/Shanghai这个时区,并保存:

af6e053a08620d4d51073a61ac53d1db

重启一下,下面两条命令:

代码语言:javascript
代码运行次数:0
复制

systemctl restart httpd
代码语言:javascript
代码运行次数:0
复制

systemctl restart php-fpm.service

然后就发现解决了:

b766bcadc4bfcf4e4c4aea1ec071aa60

点击下一步:

bc8686900513feaed7e78328a701953d

出现下面报错的,无法链接数据库:

 

Configure DB connection Please create database manually, and set the configuration parameters for connection to this database. Press "Next step" button when done. Unsupported charset or collation for tables: acknowledges

d1bd788c7bab4635aa0bf4f532c00f23

解决办法:

代码语言:javascript
代码运行次数:0
复制

create database zabbix character set utf8 collate utf8_bin;

修改一下php:

代码语言:javascript
代码运行次数:0
复制

find /  -name 'zabbix.conf.php.exampl'  找到所在路径,cd到所在路径下
mv zabbix.conf.php.example zabbix.conf.php #重命名文件
vim zabbix.conf.php #修改正确的端口、账号及密码
代码语言:javascript
代码运行次数:0
复制

[root@localhost ~]# cd  /usr/share/nginx/html/
[root@localhost html]# ls
zabbix.conf.php
[root@localhost html]# vim zabbix.conf.php 
[root@localhost html]#
c858a293b60458e0e3a1f64f77528c7c

然后保存退出;

然后我是把zabbix_server.conf的DB端口也改成3306,取消注释:

代码语言:javascript
代码运行次数:0
复制

vim /etc/zabbix/zabbix_server.conf
代码语言:javascript
代码运行次数:0
复制

DBPort=3306

然后保存退出;

如果又继续报错:

Unable to determine current Zabbix database version,the table "dbversion"database version

17302d1f427e92c3ae88b9c55a76acac

发现zabbix-server服务状态没起来:

b7ba37c9688ef1f4914a7f7c9fd2001b
c6cdd200cc15fb6e1f0de39f1dc48687

解决办法,输入下来命令:服务就起来

代码语言:javascript
代码运行次数:0
复制

mysql -uroot -p -e "use zabbix;source /usr/share/doc/zabbix-server-mysql/create.sql;"

再web重新登录一下,发现解决了:

826426cb5f3dd2148878ba354de877dd
809dbe3683acdc3559e4ea57c2bff22b
b213f636bffdb06cde7d05254279160a

看到congratulation ,就部署完成了。开心!

48be2c8f34ee95d21e8e8cd0e95a5e8e
7ac898b3d21dad37d0f4e841c31ca1d6

默认账户名:Admin 密码:zabbix

34fd427d35aacd5441e65664e8391661

都是英文菜单,如果看不习惯,可以点击右上角 小人物 图标:

e7ebe3dca02eee87086bc4d4623ea0f9

又报错:

代码语言:javascript
代码运行次数:0
复制

You are not able to choose some of the languages, because locales for them are not installed on the web server.
de22d9be6bb432cb5dd9ac97553f9e67
代码语言:javascript
代码运行次数:0
复制

yum reinstall glibc-common
yum install langpacks-zh_CN.noarch
代码语言:javascript
代码运行次数:0
复制

locale -a   //查看安装结果

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

02b554fcadc17466d8f9199432c199d0

‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍

结果还是不行,原来zabbix默认把对中文的支持给关闭了,我们需要修改zabbix的php源文件. 修改站点根目录下include/locales.inc.php文件

接下来,我们搜索一下locales.inc.php在哪里?

代码语言:javascript
代码运行次数:0
复制

find / -name 'locales.inc.php'
9235275280c4f8cb1b03d4aa44a58e7e

然后到根据目录,vim该文件:

代码语言:javascript
代码运行次数:0
复制

 vim /usr/share/zabbix/include/locales.inc.php
9f85c41dd9232b9153d1751176005a47
代码语言:javascript
代码运行次数:0
复制

 dnf install glibc-common
7b159544c0add26b9b4e57939f060cda

完成

20b0c186d82607878eeef48bc5a2b857
代码语言:javascript
代码运行次数:0
复制

locale -a | grep zh_CN
128efa33cc84edb978e5f73a1718193b

安装完成后,回到web页面,刷新,发现可以看到中文包了:

7b965f95d2c2c579ebe9c822b14f5400

然后选中,update即可:

314b587e65d0503fed98846534e0a045

到这一步,zabbix监控系统就算部署完成了。后续再与大家分享zabbix相关的干货文章,今天就先到这了,欢迎大家一起学习,一起遇见更好的自己,做一个有技术追求的人。

「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」

赞(0) 打赏
一分也是爱

支付宝扫一扫打赏

微信扫一扫打赏

标签:

上一篇:

下一篇:

相关推荐

博客简介

本站CDN采用VmShell免费提供离中国大陆最近的香港CMI高速网络做支撑,ToToTel打造全球最快速的边沿网络支撑服务,具体详情请见 :https://vmshell.com/ 以及 https://tototel.com/,网站所有的文件和内容禁止大陆网站搬迁复制,谢谢,VPS营销投稿邮箱: [email protected],我们免费帮大家发布,不收取任何费用,请提供完整测试文稿!

精彩评论

友情链接

他们同样是一群网虫,却不是每天泡在网上游走在淘宝和网游之间、刷着本来就快要透支的信用卡。他们或许没有踏出国门一步,但同学却不局限在一国一校,而是遍及全球!申请交换友链

站点统计

  • 文章总数: 2772 篇
  • 草稿数目: 30 篇
  • 分类数目: 6 个
  • 独立页面: 0 个
  • 评论总数: 2 条
  • 链接总数: 0 个
  • 标签总数: 25022 个
  • 注册用户: 139 人
  • 访问总量: 8,650,168 次
  • 最近更新: 2025年4月22日