这里写自定义目录标题

  • zabbix安装
  • 1、安装环境
  • 2、下载安装包
  • 3、数据库安装与初始化
  • 4、安装服务与依赖
  • 5、修改配置
  • 6、启动服务
  • 7、配置agent


zabbix安装

碰到一些不大不小的坑,解决起来也不难,多是依赖问题,由于从来没有接触过zabbix,所以网上一些理所当然认为就该如此操作的东西我也看不懂,只能各种猜各种尝试,好在没有费多长时间就解决了。
我会把遇到的坑都详细列出来,避免后来者踩到同样的坑里面

1、安装环境

操作系统:Centos7.7
数据库:mysql5.7
zabbix:4.2.8

2、下载安装包

公司服务器没有接入外网,只有一台服务器有外网,因此选择离线安装的方式
zabbix的官网没法下载安装包,因此在清华的源站下载
https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.2/rhel/7/x86_64/ 我这里使用的mysql版的zabbix,因为mysql使用了多年已经习惯,不喜欢mysql的也可以使用别的数据库版本的
把所有的包都下载下来准没错
其中还包括一些依赖

[root@linux1 zabbix]# ll
总用量 10216
-rw-r--r--. 1 root root   56448 6月   1 15:53 fping-3.10-1.el7.rf.x86_64.rpm
-rw-r--r--. 1 root root   59584 6月   2 09:08 php-bcmath-5.4.16-48.el7.x86_64.rpm
-rw-r--r--. 1 root root  578968 6月   2 09:09 php-common-5.4.16-48.el7.x86_64.rpm
-rw-r--r--. 1 root root  517760 6月   2 09:13 php-mbstring-5.4.16-48.el7.x86_64.rpm
-rw-r--r--. 1 root root  427304 6月   2 09:08 zabbix-agent-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root  298540 6月   2 09:08 zabbix-get-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root  784360 6月   2 09:08 zabbix-java-gateway-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root  987248 6月   2 09:08 zabbix-proxy-mysql-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root  946096 6月   2 09:08 zabbix-proxy-sqlite3-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root   13868 6月   2 09:08 zabbix-release-4.2-2.el7.noarch.rpm
-rw-r--r--. 1 root root  329840 6月   2 09:08 zabbix-sender-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 2423316 6月   2 09:08 zabbix-server-mysql-4.2.8-1.el7.x86_64.rpm
-rw-r--r--. 1 root root 2987924 6月   2 09:08 zabbix-web-4.2.8-1.el7.noarch.rpm
-rw-r--r--. 1 root root   10140 6月   2 09:08 zabbix-web-japanese-4.2.8-1.el7.noarch.rpm
-rw-r--r--. 1 root root    9668 6月   2 09:08 zabbix-web-mysql-4.2.8-1.el7.noarch.rpm

3、数据库安装与初始化

不贴数据库配置的步骤了,mysql的安装还是很简单的,下载了安装包,一个一个装就可以了,只是其中有一个坑是必须卸载系统自带的mariadb-lib,应该是叫这个名,不然无法安装mysql-lib这个包
创建数据库和zabbix的mysql用户

mysql> create database zabbix;
mysql> grant all on zabbix.* to 'zabbix'@'%' identified by '123456' with grant option;

导入zabbix需要的表,sql文件在
/usr/share/doc/zabbix-server-mysql-4.2.8/create.sql.gz
我的数据库不在zabbix-server的服务器上,在另一个服务器
讲文件传送到目标服务器并解压

[root@linux4 mysql]# gunzip create.sql.gz 
[root@linux4 mysql]# ll
-rw-r--r--. 1 root root    6248581 6月   2 09:21 create.sql
#进入解压目录
[root@linux4 mysql]# cd /sga/mysql
[root@linux4 mysql]# mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 47221
Server version: 5.7.29 MySQL Community Server (GPL)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| activity           |
| azkaban            |
| dataCenter_buffer  |
| dataCenter_detail  |
| hive               |
| mysql              |
| nacos              |
| performance_schema |
| scm                |
| sys                |
| zabbix             |
+--------------------+
12 rows in set (0.00 sec)

mysql> use zabbix
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
mysql> source create.sql

导入成功!

4、安装服务与依赖

libmysqlclient.so.18()(64bit)和libmysqlclient.so.18(libmysqlclient_18)(64bit)为mysql中的
mysql-community-libs-compat-5.7.29-1.el7.x86_64.rpm
在下载的mysql包里面有
OpenIPMI
直接使用安装光盘中的镜像yum安装即可
fping
下载地址
http://rpmfind.net/linux/rpm2html/search.php?query=fping http://rpmfind.net/linux/dag/redhat/el7/en/x86_64/dag/RPMS/fping-3.10-1.el7.rf.x86_64.rpm
httpd
直接使用安装光盘中的镜像yum安装即可
[root@linux3 zabbix]# yum install -y httpd
php
这里有个坑,我把所有的php都安装了,导致安装新下载的php-common时出现冲突
[root@linux3 zabbix]# yum install -y php*
php-common
下载地址
http://rpmfind.net/linux/centos/7.8.2003/os/x86_64/Packages/php-common-5.4.16-48.el7.x86_64.rpm
安装时需要卸载系统原来的php-common
php-bcmath
下载地址
http://www.rpmfind.net/linux/centos/7.8.2003/os/x86_64/Packages/php-bcmath-5.4.16-48.el7.x86_64.rpm
php-mbstring
http://www.rpmfind.net/linux/centos/7.8.2003/os/x86_64/Packages/php-mbstring-5.4.16-48.el7.x86_64.rpm
安装zabbix-web-4.2.8-1.el7.noarch.rpm和zabbix-web-mysql-4.2.8-1.el7.noarch.rpm时有个坑,因为这两个包互相依赖,单独安装一个包就会依赖另一个包,经过一番百度发现可以两个一起装
zabbix-web-database = 4.2.8-1.el7 被 zabbix-web-4.2.8-1.el7.noarch 需要
同时安装两个包

[root@linux1 zabbix]# rpm -ivh zabbix-web-4.2.8-1.el7.noarch.rpm zabbix-web-mysql-4.2.8-1.el7.noarch.rpm

到这里依赖就安装完成了,一共安装了5个包

[root@linux1 zabbix]# rpm -qa | grep zabbix
zabbix-get-4.2.8-1.el7.x86_64
zabbix-web-mysql-4.2.8-1.el7.noarch
zabbix-server-mysql-4.2.8-1.el7.x86_64
zabbix-web-4.2.8-1.el7.noarch
zabbix-agent-4.2.8-1.el7.x86_64

5、修改配置

修改时区

[root@linux1 zabbix]# vi /etc/php.ini

[Date]
; Defines the default timezone used by the datefunctions
; http://php.net/date.timezone
date.timezone=Asia/Shanghai

[root@linux1 zabbix]# vi /etc/httpd/conf.d/zabbix.conf

php_value date.timezone Asia/Shanghai

[root@linux1 zabbix]# service httpd restart

修改zabbix-server配置,添加了数据库信息

[root@linux1 zabbix]# vim /etc/zabbix/zabbix_server.conf 
DBHost=192.168.0.14
DBName=zabbix
DBPassword=123456
DBUser=zabbix

6、启动服务

[root@linux1 zabbix]# systemctl enable zabbix-server.service 
[root@linux1 zabbix]# systemctl start zabbix-server.service
[root@linux1 zabbix]# service httpd start

登陆地址:使用了默认的80端口,如果是生产环境的话最好换成别的端口
http://192.168.0.11/zabbix/ 一路下一步就配置好了!
zabbix server 离线安装 zabbix 5.2 离线部署_linux
zabbix server 离线安装 zabbix 5.2 离线部署_linux_02

7、配置agent

在需要监控的服务器上安装
zabbix-agent-4.2.8-1.el7.x86_64.rpm
安装完成后修改agent配置

[root@linux10 zabbix]# vim /etc/zabbix/zabbix_agentd.conf

Server=192.168.0.11
ServerActive=192.168.0.11
Hostname=linux10
HostMetadata=system.uname

[root@linux10 zabbix]# service zabbix-agent start

至此,zabbix的离线安装就完成了。