记一次 Zabbix 监控的部署(Installation from packages)

本文详细记录了Zabbix监控系统的部署过程,包括ZabbixProxy的安装、orabbix插件的部署建议,以及在CentOS6.5环境下的具体步骤。涵盖了Zabbix服务、代理、前端的安装,数据库配置,前端配置,依赖包安装,以及agent的安装和配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Zabbix Proxy部署:记一次Zabbix Proxy的部署
orabbix插件部署:记一次 Zabbix 插件 – orabbix 插件的部署

orabbix插件部署建议安装Zabbix 3.x 版本

参考Zabbix官方手册:
https://www.zabbix.com/documentation/4.0/manual/installation/install_from_packages/rhel_centos
系统环境:CentOS 6.5 [ minimal,已关闭防火墙、selinux ]
安装方式:rpm包安装
Zabbix版本:4.0.3(基于LAMP,Linux Apache MySQL PHP)

前言:第一次部署zabbix监控,参考依据为官方手册和度娘,请多谅解

1. 添加zabbix的yum仓库(yum源)

[root@zabbix ~]# rpm -ivh https://repo.zabbix.com/zabbix/4.0/rhel/6/x86_64/zabbix-release-4.0-1.el6.noarch.rpm

如果机器环境没有网络,可以直接在浏览器输入该地址下载这个rpm包,然后传输至目标环境进行安装
zabbix-1
此时可以去yum配置的目录下看已经有了一个zabbix的repo文件
zabbix-2
这个repo文件包含了安装zabbix所需的rpm包,如果没有网的同学,可以将repo文件的网址复制出来使用
使用网址时注意复制一部分即可找到对应的下载目录
例如zabbix.repo的地址为:baseurl=http://repo.zabbix.com/zabbix/4.0/rhel/6/$basearch/
实际在浏览器中输入:http://repo.zabbix.com/zabbix/4.0/rhel/6/即可
zabbix-3
x86_64目录中即为64位系统的安装包。

2. 安装Zabbix 服务/代理/前端

**注意(补充):**我再安装的时候在同一台机器安装了zabbix-server和zabbix-proxy,问了同事才知道proxy也用端口10051和server冲突,感觉最好是在不同的机器上安装server和proxy(没有意义)(后续会有文章写proxy相关的内容)
server&proxy

[root@zabbix ~]# yum install zabbix-server-mysql
[root@zabbix ~]# yum install zabbix-proxy-mysql
[root@zabbix ~]# yum install zabbix-web-mysql

由于本次部署的 CentOS系统为最小化安装,所以需要的依赖包比较多,在此贴出来以方便没法使用yum安装的同学自行寻找依赖包安装
我在安装的时候贴错了语句先安装了proxy(尴尬…)(**补充:**请忽略安装proxy的过程,)
不过没关系(上图的顺序为本人实际安装的顺序)
zabbix-4
zabbix-5
zabbix-6

3. 创建数据库

本环境使用的mysql-5.6版本的数据库,已经安装在另一台机器上了
不在此说明 mysql 的安装,需要的同学可以百度一下,本人也会在后续的文章会写 mysql 数据库的安装
参照Zabbix的官方手册,在创建数据库这部分有以下描述:

Zabbix服务器和Zabbix代理需要单独的数据库;它们不能使用同一个数据库。因此,如果它们安装在同一主机上,则必须使用不同的名称创建它们的数据库!
(自行翻译想看原文的同学可以点击文章开头的连接去阅读)

zabbix server和proxy 都需要自己的数据库,如果用同一个MySQL,必须使用不同的数据库名(这个理解应该没错)

那分别为zabbix server 和 zabbix proxy创建用户、数据库并授权(注意数据库的字符集需要是utf-8否则中文容易出现乱码)
(**补充:**请忽略proxy部分)
数据库部分的官方手册:
https://www.zabbix.com/documentation/4.0/manual/appendix/install/db_scripts#mysql

mysql> create database zabbix character set utf8 collate utf8_bin;
Query OK, 1 row affected (0.01 sec)

mysql> create database proxy character set utf8 collate utf8_bin;   #请忽略
Query OK, 1 row affected (0.00 sec)

mysql> create user 'zabbix'@'%' identified by '123';
Query OK, 0 rows affected (0.02 sec)

mysql> create user 'proxy'@'%' identified by '123';  #请忽略
Query OK, 0 rows affected (0.00 sec)

mysql> grant all privileges on zabbix.* to 'zabbix'@'%';
Query OK, 0 rows affected (0.01 sec)

mysql> grant all privileges on proxy.* to 'proxy'@'%';   #请忽略
Query OK, 0 rows affected (0.00 sec)

4. 导入数据

对于server的库导入create.sql
由于本环境数据库不在zabbix服务本地的机器上,所以要把对应的包传到MySQL的机器进行导入,或者在本机安装一个mysql客户端,远程导入
这里采取的是将包传输过去导入(传输至/tmp下)

#Zabbix Server:(create.sql.gz文件的位置)
[root@zabbix yum.repos.d]# rpm -ql zabbix-server-mysql | grep sql.gz
/usr/share/doc/zabbix-server-mysql-4.0.3/create.sql.gz

#MySQL数据库:
[root@mysql6 ~]# zcat /tmp/create.sql.gz | mysql -uzabbix -p123 zabbix

5. 修改server配置文件

zabbix-server的配置文件:

[root@zabbix ~]# cd /etc/zabbix/
#数据库相关配置依照以下配置
[root@zabbix zabbix]# grep ^DB zabbix_server.conf
DBHost=172.17.10.70    #数据库地址
DBName=zabbix          #数据库名
DBUser=zabbix          #用户名
DBPassword=123         #密码

6. 启动服务并设置服务开机自启动

[root@zabbix ~]# service zabbix-server start
Starting Zabbix server:                                    [  OK  ]
[root@zabbix ~]# chkconfig zabbix-server on

日志的路径在/var/log/zabbix/下,如果有问题,可以结合日志排查(现在暂不看日志,因为Apache和PHP都还没安装,看也没用)

7. Zabbix配置前端

根据Zabbix的官方手册,从Zabbix-3.0开始,Zabbix需要PHP的版本在5.4.0以上,但是CentOS 6 / RHEL 6的镜像中PHP最高版本为5.3.3,所以我们需要从外部拿一个php的包

先不管PHP,先把Apache搞定(这里安装的是2.2.15版本)

[root@zabbix ~]# yum install httpd -y

启动 Apache 服务,并设置为开机自启动

[root@zabbix ~]# service httpd start
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.10.171 for ServerName
                                                           [  OK  ]
[root@zabbix ~]# chkconfig httpd on

开始安装PHP
通过rpm包下载的网站,下载一个PHP的包,我这里找到的是一个5.4.45的包(Les RPM de Remi for RedHat EL 6 for x86_64)
注:以下内容中所需的rpm包,本人已收集好并上传至资源共享中
https://download.youkuaiyun.com/download/weixin_43767002/10938026
将安装包传输到服务器/tmp目录下,通过rpm命令安装(需要依赖包):
php-1
下载的时候一定要注意包的版本最好要一致
php-2
安装完成

找到zabbix-web包的php配置样例配置文件

[root@zabbix tmp]# rpm -ql zabbix-web | grep example
/usr/share/doc/zabbix-web-4.0.3/httpd22-example.conf
/usr/share/doc/zabbix-web-4.0.3/httpd24-example.conf
/usr/share/zabbix/conf/zabbix.conf.php.example
[root@zabbix tmp]# cd /etc/httpd/conf.d/
[root@zabbix conf.d]# cp /usr/share/doc/zabbix-web-4.0.3/httpd22-example.conf ./zabbix.conf

咱们之前安装的Apache是2.2版本的所以使用的样例文件是httpd22开头的那个
修改样例文件中的时区:
php_value date.timezone Asia/Shanghai
重启httpd服务、重启zabbix-server服务

[root@zabbix conf.d]# service httpd restart
Stopping httpd:                                            [  OK  ]
Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name, using 172.17.10.171 for ServerName
                                                           [  OK  ]
[root@zabbix conf.d]# service zabbix-server restart
Shutting down Zabbix server:                               [  OK  ]
Starting Zabbix server:                                    [  OK  ]

检查zabbix-server的日志
打开web页面
web-1
发现有500的报错
查看httpd的日志
web-2
其实是由于/etc/zabbix/web目录的权限不对导致的
web-3
将web目录及目录下文件的权限修改为Apache
web-4
刷新页面,进入zabbix初始化页面

8. Zabbix初始化配置

  1. 欢迎页(点击Next step)
    zabbix-web-1
  2. 检查页:(修复检查项不是OK的)
    zabbix-web-2
    修复以上问题可参考官方手册:
    https://www.zabbix.com/documentation/4.0/manual/installation/install#installing_frontend
    zabbix-web-3
    下面内容是本次部署需要修复的项,以供参考
  • PHP databases support off Fail
    安装php模块:php-mysql
    依赖包:php-pdo
    注意:php-mysql 还需要libmysqlclient.so.18这个lib文件,在mysql-libs-5.5.62-1.el6.remi.x86_64.rpm包里有,安装这个rpm包即可,但这个包与CentOS自带的mysql-libs-5.1.71冲突,而zabbix又需要mysql-libs-5.1.71中的libmysqlclient.so.16,所以采取的方法是将mysql-libs-5.5.62强制安装(没有libmysqlclient.so.16 zabbix服务无法启动)
    php-mode
    经find命令检索16和18两个文件均在,重启zabbix-server服务测试也可以正常重启
    重启httpd服务查看Fail是否被修复
    刷新网页
    php-mode
    已经成功修复
  • PHP bcmath off Fail
    安装php模块:php-bcmath
    php-mode
  • PHP mbstring off Fail
    安装php模块:php-mbstring
    相关配置:(php.ini)–来源于官方手册
    mbstring.func_overload = 0
    或–php_value mbstring.func_overload 0(zabbix.conf)
    always_populate_raw_post_data = -1 (version 5.6.0 or newer)
    php-mode
    修改对应配置文件(咱们之前使用的是zabbix.conf,并不需要修改php.ini)
    php-mode
  • PHP gd unknown 2.0 Fail
    PHP gd PNG support off Fail
    PHP gd JPEG support off Fail
    PHP gd FreeType support off Fail
    安装php模块:php-gd
    依赖包:libXpm,t1lib(yum安装即可)
[root@zabbix tmp]# yum install php-gd-5.4.45-17.el6.remi.x86_64.rpm -y
#rpm包是自己下载的,依赖包镜像中有,就会被一并安装
  • PHP xmlwriter off Fail
    PHP xmlreader off Fail
    安装php模块:php-xml
    依赖包:libxslt(yum安装即可)
[root@zabbix tmp]# yum install php-xml-5.4.45-17.el6.remi.x86_64.rpm -y
#rpm包是自己下载的,依赖包镜像中有,就会被一并安装
  • PHP LDAP off Warning
    安装php模块:php-ldap
    php-mode
    重启httpd服务,刷新zabbix页面,查看是否均已OK
    php-mode
    均已OK,点击Next step继续
  1. 填写数据库信息
    zabbix-web-3
  2. zabbix服务信息(Name可以不填)
    zabbix-web-4
  3. 初始化信息汇总
    zabbix-web-5
  4. 结束初始化,点击Finish完成
    zabbix-web-6

9. 登录zabbix

初始用户名为:Admin
初始密码为:zabbix
zabbix
zabbix
zabbix server 已成功部署完成

10.安装agent

  1. server端的agent安装
    先在server端安装个agent,顺便安装zabbix-get和zabbix-sender
[root@zabbix ~]# yum install zabbix-agent zabbix-get zabbix-sender -y

无需修改server端的agent配置文件
启动agent

[root@zabbix zabbix]# service zabbix-agent start
Starting Zabbix agent:                                     [  OK  ]

之前的报警已经没有了
zabbix-web

  1. 被监控节点的agent安装
    直接去网址中下载对应的agent版本,通过rpm安装
[root@orclsgl tmp]# rpm -ivh zabbix-agent-4.0.3-1.el6.x86_64.rpm
warning: zabbix-agent-4.0.3-1.el6.x86_64.rpm: Header V4 RSA/SHA512 Signature, key ID a14fe591: NOKEY
Preparing...                ########################################### [100%]
   1:zabbix-agent           ########################################### [100%]

修改agent的配置文件

[root@orclsgl tmp]# cd /etc/zabbix/
[root@orclsgl zabbix]# vim zabbix_agentd.conf
#修改以下内容
Server=172.17.10.171				#Zabbix-Server的IP地址
ServerActive=172.17.10.171:10051	#Server的IP地址+端口(端口默认是10051)
Hostname=Agent-test 172.17.10.209	#注意并不是agent的主机名,这个Host name是相对于Zabbix而言的

启动agent

[root@orclsgl zabbix]# service zabbix-agent start
Starting Zabbix agent:                                     [  OK  ]

在Zabbix-Server的Web界面添加主机
add-host
填写主机信息(注意:Host name要与agent配置文件中的Host name一致)
add-host
Groups可以先在Configuration → Host groups中添加分组,再来选择分组
点击Add添加主机
add-host
添加成功,现在这个主机没有任何监控项
可以为这个主机添加一个监控模板
在这个hosts界面,点击 Agent-test 172.17.10.209 进入主机配置
link templates
选择一个监控模板(这里选择的是 Zabbix Agent的监控模板),点击Add添加,点击Update更新操作
zabbix-agent
过几分钟ZBX图标会变绿,表示Zabbix-agent正常,如果是红色,请检查zabbix-agent的日志信息
这里的ZBX表示该主机通过Zabbix-agent的方式进行监控

关于zabbix的监控项及使用方法在后续的文章中会有更新
后续的文章还会更新orabbix插件的安装,期望自己能够全面更新几篇关于通过zabbix监控各主流数据库的状态

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值