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

数据库 其他数据库
整个过程其实完整跑下来还是有点小复杂的,但是熟练后基本都可以知道每一步报错的问题在哪里,这也是学习的一个过程,相比mysql版本还是优化了很多的,具体效果怎么样大家可以自行测试。

[[406056]]

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

正文

环境

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

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

前提条件

关闭Selinux及防火墙

安装Zabbix源

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

  1. rpm -Uvh https://repo.zabbix.com/zabbix/5.4/rhel/8/x86_64/zabbix-release-5.4-1.el8.noarch.rpm 

安装Sever相关组件

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

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

数据库安装

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

  1. dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm 
  2. dnf -qy module disable postgresql 
  3. dnf install -y postgresql12-server 

 

初始化数据库

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

安装Timescale时序插件源

  1. tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL 
  2. [timescale_timescaledb] 
  3. name=timescale_timescaledb 
  4. baseurl=https://packagecloud.io/timescale/timescaledb/el/$(rpm -E %{rhel})/\$basearch 
  5. repo_gpgcheck=1 
  6. gpgcheck=0 
  7. enabled=1 
  8. gpgkey=https://packagecloud.io/timescale/timescaledb/gpgkey 
  9. sslverify=1 
  10. sslcacert=/etc/pki/tls/certs/ca-bundle.crt 
  11. metadata_expire=300 
  12. EOL 

安装Timescale插件

  1. dnf install -y timescaledb-2-postgresql-12 

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

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

一路Y即可

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

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

  1. sudo -u postgres createuser --pwprompt zabbix 
  2. sudo -u postgres createdb -O zabbix zabbix 

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

启用TimescaleDB

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

 

如果出现该图证明就OK了

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

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

导入数据库架构文件

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

导入TimescaleDB超表文件

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

 

和5.2略有不同

数据库配置文件修改

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

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

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

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

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

最后pg重新加载配置

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

Zabbix Server配置文件修改

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

修改主机

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

Nginx配置

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

  1. vi /etc/nginx/nginx.conf 

将默认端口改为8080

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

将80端口那一行注释去掉

启动相关服务

  1. systemctl restart zabbix-server zabbix-agent2 nginx php-fpm 
  2. systemctl enable zabbix-server zabbix-agent2 nginx php-fpm 

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

前段关键操作

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

开启报表服务

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

如果非本地需要写IP

2.安装chrome浏览器

  1. wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm 
  2.  
  3. dnf -y localinstall google-chrome-stable_current_x86_64.rpm 

3.启动报表相关服务

  1. systemctl restart zabbix-web-service 
  2.  
  3. systemctl enable zabbix-web-service 

4.前端配置

这里记得是前端登录Url

写在最后

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

 

责任编辑:姜华 来源: 今日头条
相关推荐

2011-03-18 11:04:39

Centos 5.4zabbix 1.8.

2022-03-07 08:37:26

Zabbix报表导出图表插件

2010-05-28 18:07:47

TortoiseSVN

2012-12-31 11:34:46

2023-01-28 21:27:27

2020-09-22 12:22:32

Windows TerWindowsLinux

2021-09-08 08:34:21

ZabbixLinux运维

2011-04-06 10:03:08

Centos5.4Cacti安装

2011-03-30 10:07:05

Zabbix安装

2011-03-29 13:34:01

Zabbix安装

2009-09-03 09:44:45

RHEL 5.4linux红帽

2023-11-29 09:00:00

KubernetesDevOps

2023-07-07 09:04:18

JavaScript时间操作

2023-12-13 11:23:15

2009-04-23 10:42:12

MySQL 5.4MySQL 6.0MySQL

2009-10-13 22:04:51

2010-05-27 13:29:08

RHEL 5.4无人值守安装

2011-02-23 09:55:33

Centos安装vsftpd

2021-10-27 08:00:00

DevSecOps开发安全

2022-09-14 10:24:54

物联网架构物联网
点赞
收藏

51CTO技术栈公众号