当前位置 : 主页 > 操作系统 > centos >

Zabbix 6 系列学习 08:组件分离式部署

来源:互联网 收集:自由互联 发布时间:2023-09-06
前面提到了很多的安装方式,本文来讲讲如果将 LAMP 拆开部署。 本文环境 Zabbix 软件包分析 zabbix-server-mysql:Zabbix server 主程序 zabbix-web-mysql:Zabbix 前端文件 zabbix-nginx-conf:Zabbix nginx配置

前面提到了很多的安装方式,本文来讲讲如果将 LAMP 拆开部署。

本文环境

Zabbix 6 系列学习 08:组件分离式部署_Zabbix

Zabbix 软件包分析

  • zabbix-server-mysql:Zabbix server 主程序
  • zabbix-web-mysql:Zabbix 前端文件
  • zabbix-nginx-conf:Zabbix nginx配置文件,也属于前端文件
  • zabbix-sql-scripts:Zabbix 数据结构文件,数据库使用
  • zabbix-selinux-policy:Zabbix Selinux 部分,关掉 Selinux 可忽略
  • zabbix-agent:Zabbix 采集数据的插件

通过上面的包可以分析出来

  • Zabbix Front 需要安装 zabbix-web-mysql,zabbix-nginx-conf,zabbix-agent
  • Zabbix server 需要安装 zabbix-server-mysql,zabbix-agent
  • Zabbix DB 需要安装 zabbix-sql-scripts、zabbix-agent 和数据库程序

Zabbix DB

1.关闭 Selinux及防火墙

systemctl stop firewalld && systemctl disable firewalld
setenforce 0

永久关闭 Selinux,需要重启服务器

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
reboot

2.安装需要的软件

dnf -y install vim

3.安装 Zabbix 源

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

4.安装 Zabbix 所需软件 -- zabbix-sql-scripts、zabbix-agent

dnf -y install zabbix-sql-scripts zabbix-agent

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_02

这两个包是没有依赖的

5.安装 mysql 数据库(如果是 PG 得安装 PG 的组件,自行注意)

AlmaLinux 8 自带源为 8.0,所以无需关心源的问题,直接通过 dnf 安装,其他类 CentOS 的发行版应该也一样

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_03

dnf -y install mysql-server

6.启动数据库

systemctl start mysqld && systemctl enable mysqld

7.初始化数据库

mysql_secure_installation

过程仅输入密码,其他都可以回车

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_04

8.创建数据库、用户及相关授权

create database zabbix character set utf8mb4 collate utf8mb4_bin;
create user zabbix@'192.168.20.%' identified by 'xiaoyu123';
create user zabbix@localhost identified by 'xiaoyu123';
grant all privileges on zabbix.* to zabbix@'192.168.20.%';
grant all privileges on zabbix.* to zabbix@localhost;
set global log_bin_trust_function_creators = 1;
quit;

这里由于是数据库是单独服务器,所以需要开启远程授权。

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_05

9.导入 Zabbix 相关数据文件

zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-set=utf8mb4 -uzabbix -p zabbix

10.修改 Zabbix agent 配置文件

vim /etc/zabbix/zabbix_agentd.conf

将 Server 部分的 IP 地址改为 Zabbix Server 的地址

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_06

将 ServerActive 部分的 IP 地址改为 Zabbix Server 的地址,同时 Hostname 改成 Zabbix DB,这里的 hostname,实际自行设置,没有约束。

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_07

11.启动服务

systemctl start zabbix-agent && systemctl enable zabbix-agent

Zabbix Server 部分

1.关闭 Selinux及防火墙

systemctl stop firewalld && systemctl disable firewalld
setenforce 0

永久关闭 Selinux,需要重启服务器

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
reboot

2.安装需要的软件

dnf -y install vim

3.安装 Zabbix 源

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

4.安装 Zabbix 所需软件 -- zabbix-server-mysql、zabbix-agent

dnf -y install zabbix-server-mysql zabbix-agent

5.修改 Zabbix 配置文件

vim /etc/zabbix/zabbix_server.conf

修改 DBHost 为 mysql 的主机 IP。

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_08

添加数据库 Zabbix 用户的密码。

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_09

6.启动相关服务

systemctl start zabbix-server zabbix-agent
systemctl enable zabbix-server zabbix-agent

7.查看状态

tail -f /var/log/zabbix/zabbix_server.log

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_10

Zabbix Front 部分

1.关闭 Selinux及防火墙

systemctl stop firewalld && systemctl disable firewalld
setenforce 0

永久关闭 Selinux,需要重启服务器

sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config
reboot

2.安装需要的软件

dnf -y install vim

3.安装 Zabbix 源

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

4.安装 Zabbix 所需软件 -- zabbix-web-mysql,zabbix-nginx-conf,zabbix-agent

dnf -y install zabbix-web-mysql zabbix-nginx-conf zabbix-agent

5.修改Nginx配置文件

vim /etc/nginx/nginx.conf

将 Nginx 的主配置文件端口部分注释掉,如下图

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_11

vim /etc/nginx/conf.d/zabbix.conf

修改 zabbix nginx 配置文件,将 listen 部分注释去掉,端口号改为 80

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_12

6.修改 Zabbix agent 配置文件

vim /etc/zabbix/zabbix_agentd.conf

将 Server 部分的 IP 地址改为 Zabbix Server 的地址

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_13

将 ServerActive 部分的 IP 地址改为 Zabbix Server 的地址,同时 Hostname 改成 Zabbix DB,这里的 hostname,实际自行设置,没有约束。

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_14

7.启动相关组件

systemctl restart nginx php-fpm zabbix-agent
systemctl enable nginx php-fpm zabbix-agent

8.访问前端

通过 server ip 直接访问即可,下一步

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_15

环境检测页,下一步

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_16

数据库部分,需要将数据库主机填写对应的 IP 地址,密码需要填写,TLS 取消勾选即可下一步

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_17

时区、server 名称部分自行修改,下一步

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_18

安装前预览页,下一步

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_19

完成安装

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_20

登录界面,用户名密码依然为 Admin/zabbix

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_21

进入到首页后,出现了报错,由于 6.0 出现了 HA 的功能,所以没有在前端指定 Server 的功能,需要进入到前端配置文件修改

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_22

vim /etc/zabbix/web/zabbix.conf.php

将 ZBX_SERVER、ZBX_PORT分别填写正确的 IP 和端口号(默认10051)

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_23

再次查看前端

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_24

调整 agent 报错问题,由于Zabbix 不在本地部署,所以不再是 127.0.0.1

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_25

需要改成真实 Server 地址

改完后还是有问题,需要调整 Zabbix Server 部分的配置(在 Zabbix Server 主机里调整)

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_26

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_27

vim /etc/zabbix/zabbix_agentd.conf

改为 Zabbix Server 的 IP

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_28

改为 Zabbix Server 的 IP

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_29

重启服务

systemctl restart zabbix-agent

恢复正常

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_30

之后再添加前端主机、数据库主机监控,详细见后续文章

最终效果

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_31

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_32

Zabbix 6 系列学习 08:组件分离式部署_Zabbix_33

最后

本文篇幅较长,将前端、服务、数据库分开部署,有一定的好处,针对前端服务,可以给性能差一点的机器,而 server 和数据库则需要性能较强的机器,保证组件之间不会抢占性能,导致 zabbix 服务不可用,当然宿主机部署就另说。欢迎关注后续的文章,下期见。


上一篇:20220215_安装nvidia gpu
下一篇:没有了
网友评论