Zabbix 5.4 完整功能安装指南(PG时序版)
之前提到过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官方源即可,两台机器都需要装
- 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为最新的报表功能
- dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2 zabbix-web-service
数据库安装
第二条命令为禁用自带的pg库,不禁用会报错(如下图所示)
- dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
- dnf -qy module disable postgresql
- dnf install -y postgresql12-server
初始化数据库
- /usr/pgsql-12/bin/postgresql-12-setup initdb
- systemctl enable postgresql-12 && systemctl start postgresql-12
安装Timescale时序插件源
- tee /etc/yum.repos.d/timescale_timescaledb.repo <<EOL
- [timescale_timescaledb]
- name=timescale_timescaledb
- baseurl=https://packagecloud.io/timescale/timescaledb/el/$(rpm -E %{rhel})/\$basearch
- repo_gpgcheck=1
- gpgcheck=0
- enabled=1
- gpgkey=https://packagecloud.io/timescale/timescaledb/gpgkey
- sslverify=1
- sslcacert=/etc/pki/tls/certs/ca-bundle.crt
- metadata_expire=300
- EOL
安装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浏览器
- wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm
- dnf -y localinstall google-chrome-stable_current_x86_64.rpm
3.启动报表相关服务
- systemctl restart zabbix-web-service
- systemctl enable zabbix-web-service
4.前端配置
这里记得是前端登录Url
写在最后
由于之前做过5.4报表的介绍,这里就不展现效果了,整个过程其实完整跑下来还是有点小复杂的,但是熟练后基本都可以知道每一步报错的问题在哪里,这也是学习的一个过程,相比mysql版本还是优化了很多的,具体效果怎么样大家可以自行测试。
相关文章
- 数据孤岛是业务效率的无声杀手
- 2023展望:新的一年将给大数据分析领域带来什么?
- 阿里云ADB基于Hudi构建Lakehouse的实践
- 大数据在医疗保健领域的使用案例
- 微软增加说明:KB5021751 更新扫描已经 / 即将过时 Office 过程中不会触碰用户隐私
- 2022 Gartner全球云数据库管理系统魔力象限发布 腾讯云数据库入选
- 场景化、重实操,分享一个实时数仓实践案例
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地