性能不够?基于时序数据库的Zabbix 5.2安装指南

我们往往在谈论zabbix的优缺点的时候 , 提到最多的依然还是数据库(默认采用关系型数据库) , 由于关系型数据库所有的读写都是采用sql语句解析 , 一但并发过大或者数据量过大 , 处理能力就显得捉襟见肘 , 这也是Zabbix让人诟病的地方 , 终于在4.2版本正式加入了Timescale时序性数据库 , 该数据库在基于PG的基础上加入时序插件 , 既保证了易用性 , 同时也解决了关系型数据库的弊端(弊端仅仅指在监控场景) , 具体细节可以去官网看看 , 今天来介绍如何基于PG的Timescale时序数据库来安装Zabbix 。
正文环境

  • Linux版本:CentOS 8.2
  • Zabbix版本:5.2
  • Web:Nginx
  • 数据库:PG+Timescale
Zabbix相关组件安装
1.导入5.2阿里云源
cat < /etc/yum.repos.d/zabbix.repo[zabbix]name=Zabbix Official Repository - \$basearchbaseurl=\$basearch/enabled=1gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-non-supported]name=Zabbix Official Repository non-supported - \$basearchbaseurl=\$basearch/enabled=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIXgpgcheck=1EOF添加 gpgkeycurl\-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591curl\-o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX安装zabbix相关组件
dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-agent -yPG数据库安装
由于Timescale的最低要求为PG11 , 所以本文所提到的PG版本为12
1.PG12的镜像源安装
dnf install -y
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
安装源
2.安装PG12
dnf -qy module disable postgresql ##此条不输入会出现下面图一报错dnf -y install postgresql12 postgresql12-server
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
未输入第一条命令安装报错
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
安装成功
3.初始化数据库
/usr/pgsql-12/bin/postgresql-12-setup initdb
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
完成数据库初始化
4.启动PG并设置为开机启动
systemctl start postgresql-12" | sudo -u postgres psql zabbix
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
启用成功
3.导入zabbix架构文件
zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
导入架构
4.导入Timescale架构文件
zcat /usr/share/doc/zabbix-server-pgsql*/timescaledb.sql.gz | sudo -u zabbix psql zabbix
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
导入TimescaleDB架构文件
5.配置pg配置文件
【性能不够?基于时序数据库的Zabbix 5.2安装指南】vi /var/lib/pgsql/12/data/postgresql.conf
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
开启远程访问 , 可以写* , 也可以为指定IP , 最大连接数建议写大一些
vi /var/lib/pgsql/12/data/pg_hba.conf两个注意点:如果all in one , 则不需要在IPv4 connection改为0.0.0.0/0 , 第二点是认证方式全改为MD5 , 否则会验证失败
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
修改过后
5.重启数据库
systemctl restart postgresql-12配置zabbix-server相关文件
vi /etc/zabbix/zabbix-server.conf
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
只需要修改DBPassword部分 , 修改为自己创建的密码
Nginx配置
由于Nginx默认占用80端口 , 导致无法访问zabbix , 需要进行调整
vi /etc/nginx/nginx.conf
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
将Nginx的默认监听端口改为8080
vi /etc/nginx/conf.d/zabbix.conf
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
这里默认即可
启动zabbix服务
systemctl restart zabbix-server zabbix-agent nginx php-fpmsystemctl enable zabbix-server zabbix-agent nginx php-fpm前端关键页面
性能不够?基于时序数据库的Zabbix 5.2安装指南文章插图
新增PG模式选择 , 填写public即可