思路:首先在本地虚拟机安装一个与离线服务器版本一致的系统,然后再本地虚拟机下载需要的rpm包到一个目录下但不安装,之后吧这些rpm包配置成一个yum仓库,打包放到离线服务器中,配置yum源就好。
一、安装配置
1、关闭防火墙和selinux。
systemctl stop firewalld
systemctl disable firewalld
setenforce 0 # 设置临时关闭selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config #设置永久关闭selinux
reboot #重启
2、安装 zabbix rpm 源,鉴于国内网络情况,使用阿里云 zabbix 源
rpm -Uvh https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
sed -i 's#http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#' /etc/yum.repos.d/zabbix.repo
yum clean all
3、下载zabbix server 和 agent软件包
yum install zabbix-server-mysql zabbix-agent --downloadonly --downloaddir=/tmp/offline_rpm
yum install yum-plugin-downloadonly ---如果没有downloadonly功能使用该命令下载
4、下载 Software Collections软件包,便于后续安装高版本的 php。
yum install centos-release-scl --downloadonly --downloaddir=/tmp/offline_rpm
5、安装 Software Collections(该步骤是因为下面的 web界面需要依赖此包,不安装无法下载软件包)
yum install centos-release-scl -y
6、启用 zabbix 前端源,修改vi /etc/yum.repos.d/zabbix.repo,将[zabbix-frontend]下的 enabled 改为 1
enabled=1
7、下载zabbix 前端和相关环境软件包
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl --downloadonly --downloaddir=/tmp/offline_rpm
8、下载mariadb数据库
yum install mariadb-server --downloadonly --downloaddir=/tmp/offline_rpm
9、创建本地yum仓库,使用createrepo来创建repository仓库,如果系统里没有该命令的话需要先进行createrepo的安装
yum install createrepo
createrepo /tmp/offline_rpm
创建好的仓库目录会出现 repodata子目录
10、将 /tmp/offline_rpm/下面全目录 使用SSH等文件传输工具如WinSCP拷贝出来至内网CentOS服务器上面进行安装。
11、离线服务器yum仓库配置
a.将 offline_rpm 文件夹传输至 内网主机 /tmp 下
b.将/etc/yum.repos.d 下面所有repo文件进行转移至bak文件夹下。(如果没有就自己新建一个bak目录)
c.新建一个repo文件
vi /etc/yum.repos.d/new.repo
d.写入如下内容并保存
[New] name=New baseurl=file:///tmp/offline_rpm gpgcheck=0 enabled=1
e.清理yum,之后开始安装zabbix程序
yum clean all
12、重复第一步的操作关闭防火墙以及selinux.
13、安装 zabbix server 和 agent
yum install zabbix-server-mysql zabbix-agent -y
14、安装 Software Collections,便于后续安装高版本的 php
yum install centos-release-scl -y
安装完成后在 /etc/yum.repos.d 目录下又会生成两个新的repo文件,也移动到bak目录下。
15、安装 zabbix 前端和相关环境。
yum install zabbix-web-mysql-scl zabbix-apache-conf-scl -y
16、安装mariadb数据库,并设置开机自启动
yum install mariadb-server -y
systemctl enable --now mariadb
17、使用以下命令初始化 mariadb 并配置 root 密码
mysql_secure_installation
18、使用 root 用户进入 mysql,并建立 zabbix 数据库,注意数据库编码
mysql -u root -p (输入数据库root密码进入数据库)
create database zabbix character set utf8 collate utf8_bin; #创建数据库
create user zabbix@localhost identified by 'password'; #创建用户
grant all privileges on zabbix.* to zabbix@localhost; #授权
(grant all privileges on * .* to zabbix@'%' identified by 'password'; #赋予任何主机访问数据的权限)
FLUSH PRIVILEGES;#修改生效
quit;
19、导入 zabbix 数据库,zabbix 数据库用户为 zabbix,密码为 password。
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
20、修改 zabbix server 配置文件zabbix_server.conf 里的数据库密码
vi /etc/zabbix/zabbix_server.conf
找到 # DBPassword= ,将数据库密码改为zabbix数据库的密码(DBPassword=password),保存退出。
21、修改 zabbix 的 php 配置文件,vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf 里的时区,改成 Asia/Shanghai
php_value[date.timezone] = Asia/Shanghai
22、启动相关服务,并配置开机自动启动
systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm
systemctl enable zabbix-server zabbix-agent httpd rh-php72-php-fpm
二、界面配置
1、使用浏览器访问http://ip/zabbix 即可访问 zabbix 的 web 页面。
2、点击“Next step”检查组件是否OK
3、配置连接数据库 , 输入zabbix帐户的密码,点击“Next step”,
4、点击“Next step”
5、点击“Next step”
6、看到以上提示,说明安装成功,点"Finish"
7、进入登录界面, 用户名:Admin,密码:zabbix
8、主界面
9、设置中文
三、安装过程中遇到的问题。
1、web界面验证时区false
vi /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf 里的时区,改成 Asia/Shanghai
php_value[date.timezone] = Asia/Shanghai
重启php
systemctl restart rh-php72-php-fpm
----------------------------------------------------------------分割线----------------------------------------------------------------------------------------------
zabbix agent安装
一、agent安装
1、同样的根据上面的准备将offline_rpm文件夹传到 离线的agent服务器上。配置好yum仓库(参考上述的安装配置中的1~11步骤)。
2、安装zabbix-agent
yum install zabbix-agent -y
3、修改 vi /etc/zabbix/zabbix_agentd.conf 文件。主要配置如下所示,根据自己的配置选择主动模式或被动模式修改。本次我这里使用的是被动模式(IP端口请根据自己实际情况修改)。
############ GENERAL PARAMETERS ################# ##### Passive checks related 被动模式 ### Option: Server Server=127.0.0.1 # 被动模式下 zabbix server 的地址,也就是允许哪些主机给我发指令 ### Option: ListenPort # ListenPort=10050 # Agent 自己的监听端口 ### Option: ListenIP # ListenIP=0.0.0.0 # Agent 自己的监听地址 ##### Active checks related 主动模式 ### Option: ServerActive ServerActive=127.0.0.1 # 主动模式下,向这些服务器主动汇报监控数据 ### Option: Hostname # Hostname= Hostname=Zabbix server # 我在 Server 端的识别码
4、配置好后重启zabbix agent.
systemctl restart zabbix-agent
二、界面配置添加agent.
1、界面选择“配置>主机>创建主机”。
2、填写agent服务器信息后选择模板。
3、选择agent模板信息后点击添加即可,本步骤只是作为样例,请根据实际需求选择对应模板。
4、之后便可以在主机界面看到已配置成功的zabbix agent服务器,并且zbx可用性显示正常。
参考资料:
https://www.cnblogs.com/xrg-blog/p/15234546.html
https://blog.csdn.net/a648642694/article/details/107332363/
https://www.cnblogs.com/lemon-le/p/14229646.html
https://blog.csdn.net/qq_22648091/article/details/112109937