Zabbix 5.4 完整功能安装指南(PG时序版)

网友投稿 889 2023-05-31

Zabbix 5.4 完整功能安装指南(PG时序版)

Zabbix 5.4 完整功能安装指南(PG时序版)

之前提到过Zabbix 5.2版本的安装方式,此次采用PG+Timescale(Server与DB分开部署)

正文

环境

系统版本:CentOS 8.2(可以替换为其他版本,例如ubuntu)

Zabbix版本:5.4数据库版本:postgresql 12Timescale版本:2.1Nginx版本:1.14

前提条件

关闭Selinux及防火墙

安装Zabbix源

最近官方源的网络已经恢复正常,所以直接采用Zabbix官方源即可,两台机器都需要装

安装Sever相关组件

其中zabbix-web-service为最新的报表功能

dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2 zabbix-web-service

数据库安装

第二条命令为禁用自带的pg库,不禁用会报错(如下图所示)

初始化数据库

/usr/pgsql-12/bin/postgresql-12-setup initdb systemctl enable postgresql-12 && systemctl start postgresql-12

安装Timescale时序插件源

安装Timescale插件

dnf install -y timescaledb-2-postgresql-12

初始化数据库添加时序插件并重启数据库

timescaledb-tune --pg-config=/usr/pgsql-12/bin/pg_config systemctl restart postgresql-12

一路Y即可

创建Zabbix所需数据库及用户名密码

--pwprompt参数是为zabbix用户创建密码,不带默认不要密码

sudo -u postgres createuser --pwprompt zabbix sudo -u postgres createdb -O zabbix zabbix

如果出现这个问题,由于你在root目录下,切换到其他目录即可,没有实际影响

启用TimescaleDB

echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix

如果出现该图证明就OK了

安装数据库文件及zabbix-agent(建议采用agent2)

dnf -y install zabbix-agent2 zabbix-sql-scripts

导入数据库架构文件

zcat /usr/share/doc/zabbix-sql-scripts/postgresql/create.sql.gz | sudo -u zabbix psql zabbix

导入TimescaleDB超表文件

zcat /usr/share/doc/zabbix-sql-scripts/postgresql/timescaledb.sql.gz | sudo -u zabbix psql zabbix

和5.2略有不同

数据库配置文件修改

主要体现在两方面,一方面是Server需要远程连接到数据库,所以需要开放连接IP,另外一个是数据库远程用户的权限。

vi /var/lib/pgsql/12/data/postgresql.conf

去掉注释,改为*,开启远程访问,另外建议初始化连接数改为300

vi /var/lib/pgsql/12/data/pg_hba.conf

改为允许zabbix Server访问,其次认证方式改为trust或者md5

最后pg重新加载配置

vi /var/lib/pgsql/12/data/pg_hba.conf

Zabbix Server配置文件修改

主要修改zabbix数据库的IP和密码(用户默认为zabbix)

修改主机

修改密码(这里密码脱敏了,实际不是这个,自己注意修改)

Nginx配置

由于默认80端口被占用,所以修改官方配置文件,其次修改zabbix配置文件

vi /etc/nginx/nginx.conf

将默认端口改为8080

vi /etc/nginx/conf.d/zabbix.conf

将80端口那一行注释去掉

启动相关服务

systemctl restart zabbix-server zabbix-agent2 nginx php-fpm systemctl enable zabbix-server zabbix-agent2 nginx php-fpm

如果出现这个错误基本是selinux的错误

前段关键操作

如果web服务也分离部署,此处的Host也要写IP

开启报表服务

1.修改配置文件,开启report进程,填写服务相关接口,如下图

如果非本地需要写IP

2.安装chrome浏览器

3.启动报表相关服务

systemctl restart zabbix-web-service  systemctl enable zabbix-web-service

4.前端配置

这里记得是前端登录Url

写在最后

由于之前做过5.4报表的介绍,这里就不展现效果了,整个过程其实完整跑下来还是有点小复杂的,但是熟练后基本都可以知道每一步报错的问题在哪里,这也是学习的一个过程,相比mysql版本还是优化了很多的,具体效果怎么样大家可以自行测试。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Redis分布式锁抽丝剥茧
下一篇:徒手用 Go 写个 Redis 服务器
相关文章