48小时系统班试听入口

【运维技术详解】Zabbix监控系统安装部署过程

发布作者:新盟教育 发布日期:2022-11-22 浏览人数:2415人

运维技术详解

资源放送 

↓ 扫一扫 领取录屏资料

网页同步文章.png


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


一、环境准备

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

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

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


设置虚拟机能正常上网

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


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


测试电脑物理机于虚拟机是否连通了?

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



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


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


验证没问题。

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




二、获取zabbix源码


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


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

a、从官方网repo.zabbix.com/zabbix/


b、如也可以从清华大学开源软件镜像站获取:mirrors.tuna.tsinghua.edu.cn



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


mirrors.tuna.tsinghua.edu.cn


三、部署步骤


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

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


2、安装

ls查看文件名:



rpm -ivh zabbix-release-4.0-2.el8.noarch.rpm



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



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

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



repo.zabbix.com替换成mirrors.tuna.tsinghua.edu.cn,使用如下命令进行一键替换即可:

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


替换后:


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

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

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


然后保存:

:wq


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

yum install zabbix-server-mysql zabbix-web-mysql -y



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

yum install mariadb-server.x86_64




启动一下mariadb:


systemctl start mariadb.service

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

systemctl enable mariadb.service

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


mysql_secure_installation

一路选择y:


创建zabbix库:

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

create database zabbix character set utf8 collate utf8_bin;

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

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


使用quit 退出数据库:



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

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

rpm -ql zabbix-server-mysql  | grep sql



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

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


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

mysql zabbix -e 'show tables;'



5、配置启动zabbix-server:

vim /etc/zabbix/zabbix_server.conf

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

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



然后记得保存,退出。

:wq

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

systemctl start zabbix-server
systemctl enable  zabbix-server

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

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


记得关掉selinux:

vim /etc/selinux/config



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

查看selinux状态:

getenforce



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


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



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

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


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


防火墙放开80端口:


重新加载一下:



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


四、web页面安装


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


发现PHP存在一个时区问题,其他都是ok的,我们到后台设置一下即可:

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



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



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

systemctl restart httpd
systemctl restart php-fpm.service


然后就发现解决了:


点击下一步:



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

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



解决办法:

create database zabbix character set utf8 collate utf8_bin;


修改一下php:

find / -name 'zabbix.conf.php.exampl' 找到所在路径,cd到所在路径下mv zabbix.conf.php.example zabbix.conf.php #重命名文件vim zabbix.conf.php #修改正确的端口、账号及密码
[root@localhost ~]# cd /usr/share/nginx/html/[root@localhost html]# lszabbix.conf.php[root@localhost html]# vim zabbix.conf.php [root@localhost html]#

然后保存退出;

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

vim /etc/zabbix/zabbix_server.conf
DBPort=3306


然后保存退出;如果又继续报错:

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


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


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

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


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





看到congratulation ,就部署完成了。








1671585dc74035d34ac554d5f2ae42fc.jpg


推荐阅读

>>>新手必备-Linux入门之云计算是什么

>>>红帽认证入门-Linux系统介绍及企业版本选型

>>>新手必备-Linux系统安装配置+Xshell远程连接

>>>Linux常用命令行合集之绝对路径和相对路径

>>>软连接与硬连接



运维界升职加薪必备的云计算技术,你学了吗?

学完高级运维云计算课程之后,你可以:

  • 跨越90%企业的招聘硬门槛

  • 增加70%就业机会

  • 拿下BAT全国TOP100大厂敲门砖

  • 体系化得到运维技术硬实力

  • 技术大佬年薪可达30w+