大家好,我是乐乐。上一期我们已经讲过从源代码安装zabbix,本期着重讲从二进制包安装zabbix。

当我们在ZABBIX官方存储库可以看到,Zabbix SIA 提供如下官方RPM和DEB包:

·Red Hat Enterprise Linux/CentOS

·Debian/Ubuntu/Raspbian

·SUSE Linux Enterprise Server

yum/dnf, apt和zypper的各种操作系统发行版的软件包文件可以在repo.zabbix.com上找到。

请注意,尽管某些操作系统发行版(特别是基于Debian的发行版)提供了它们自己的Zabbix包,但Zabbix不支持这些包。第三方提供的Zabbix包可能已过时,缺乏最新的特性和bug修复。推荐只使用repo.zabbix.com上的官方软件包。如果之前用过非官方的Zabbix包,请参阅 upgrading Zabbix packages from OS repositories的说明操作。

一、6.0Red Hat zabbix企业版 Linux/CentOS

概述

官方 Zabbix 软件包可用于:

RHEL 8, CentOS 8 and Oracle Linux 8 下载软件包可用于 MySQL/PostgreSQL 数据库和 Apache/Nginx 网络服务器支持。

Zabbix 6.2 尚未发布。下载链接指向 6.2 之前的软件包。

由于 MySQL 库较旧,验证 Verify CA 加密模式不适用于带有 MySQL 库的 RHEL 7。

Zabbix agent 软件包和实用程序 Zabbix get 和 Zabbix sender 也可用于 RHEL 7、RHEL 6 和 RHEL5。

Zabbix 官方仓库也提供 fping 和 libssh2 包。这些包位于不受支持的 目录中。

安装注意事项

参见不同平台下载页面的安装说明:

  • 安装软件源

  • 安装server/agent/前端

  • 创建初始数据库,导入初始数据

  • 为Zabbix server配置数据库

  • 为Zabbix前端配置PHP

  • 启动server/agent进程

  • 配置Zabbix前端

如果要以root用户身份运行Zabbix agent,请参见 以root用户运行agent。

Zabbix web service进程用于生成定时报表,需要Google浏览器。在软件包中不包含浏览器,必须手动单独安装。

使用 Timescale DB 导入数据

使用 TimescaleDB,除了为 PostgreSQL 导入命令,还 要执行:

# cat /usr/share/doc/zabbix-sql-scripts/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix

TimescaleDB 仅支持 Zabbix 服务器。

PHP 7.2

Zabbix 前端需要 7.2 或更新的PHP版本。

配置 SELinux

Zabbix 使用基于套接字的进程间通信。在启用 SELinux 的系统上,可能需要添加 SELinux 规则以允许 Zabbix 在 SocketDir 目录中创建/使用 UNIX 域套接字。当前,server(警报器、预处理器、IPMI)和 proxy(IPMI)使用套接字文件。套接字文件是持久的,这意味着它们在进程运行时存在。

在 enforcing 模式下启用 SELinux 状态,你需要执行以下命令来启用 Zabbix 前端和服务器之间的通信:

RHEL 7 及更高版本:

# setsebool -P httpd_can_connect_zabbix onIf the database is accessible over network (including 'localhost' in case of PostgreSQL), you need to allow Zabbix frontend to connect to the database too:# setsebool -P httpd_can_network_connect_db on
RHEL 7 之前的版本:
# setsebool -P httpd_can_network_connect on# setsebool -P zabbix_can_network on
前端和 SELinux 配置完成后,重启 Apache 网络服务器:
# service httpd restart

此外,Zabbix 提供 zabbix-selinux-policy 包作为 RHEL 8 和 RHEL 7 源 RPM 包的一部分。这个包为 SELinux 提供了一个基本的默认策略,并通过允许 Zabbix 创建和使用套接字并启用与 PostgreSQL 的 httpd 连接(由前端使用)使 zabbix 组件开箱即用。

源 zabbix_policy.te文件包含以下规则:

module zabbix_policy 1.2;require {  type zabbix_t;  type zabbix_port_t;  type zabbix_var_run_t;  type postgresql_port_t;  type httpd_t;  class tcp_socket name_connect;  class sock_file { create unlink };  class unix_stream_socket connectto;}#============= zabbix_t ==============allow zabbix_t self:unix_stream_socket connectto;allow zabbix_t zabbix_port_t:tcp_socket name_connect;allow zabbix_t zabbix_var_run_t:sock_file create;allow zabbix_t zabbix_var_run_t:sock_file unlink;allow httpd_t zabbix_port_t:tcp_socket name_connect;#============= httpd_t ==============allow httpd_t postgresql_port_t:tcp_socket name_connect;

创建这个包是为了防止用户因为配置复杂而关闭 SELinux。它包含足以加速 Zabbix 部署和配置的默认策略。为获得最高安全级别,建议设置自定义 SELinux 设置。

Proxy 安装

添加好所需软件源后,可通过执行以下命令来安装Zabbix proxy:

# dnf install zabbix-proxy-mysql

将命令中的 'mysql' 替换为 'pgsql' 以使用 PostgreSQL,或者替换为 'sqlite3' 以使用 SQLite3 (仅proxy适用)。

创建数据库

为Zabbix proxy 单独创建数据库 。

Zabbix server和Zabbix proxy 不能使用同一个数据库。如果他们是安装在同一个主机中的,则proxy数据库需要另命名。

导入数据

导入初始数据库模式

# cat /usr/share/doc/zabbix-sql-scripts/mysql/proxy.sql | mysql -uzabbix -p zabbix
对于使用 PostgreSQL(或 SQLite)的 proxy:
# cat /usr/share/doc/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u zabbix psql zabbix# cat /usr/share/doc/zabbix-sql-scripts/sqlite3/proxy.sql | sqlite3 zabbix.db

为Zabbix proxy配置数据库

编辑 zabbix_proxy.conf:

# vi /etc/zabbix/zabbix_proxy.confDBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=<password>

在 Zabbix proxy 的 DBName 中,使用与 Zabbix server 不同的数据库。

在 DBPassword 中为 MySQL 使用 Zabbix 数据库密码; PosgreSQL 用户 PosgreSQL 的密码。

将 DBHost= 与PostgreSQL一起用,你可能需要保留默认设置 DBHost=localhost (或1个 IP 地址),但这可能会使PostgreSQL 通过网络套连接至Zabbix。参考 SELinux configuration获取说明。

启动 Zabbix proxy进程

要启动 Zabbix proxy 进程并使其在系统启动时启动,请执行以下操作:

# service zabbix-proxy start# systemctl enable zabbix-proxy

前端配置

Zabbix proxy 没有前端;它只与Zabbix server通信。

安装Java gateway

仅当你想监控 JMX 应用程序时,才需要安装 Java gateway。 Java gateway 是轻量级的不需要数据库。

一旦添加了所需软件源,就可通过执行如下命令安装 Zabbix Java gateway:

# dnf install zabbix-java-gateway

了解更多关于配置和运行Java gateway的详细信息可跳转至java 设置。

安装debuginfo包

Debuginfo软件包目前可用于 RHEL/CentOS 版本7, 6 和 5。

要启用 debuginfo 软件源,请编辑 /etc/yum.repos.d/zabbix.repo 文件。将 enabled=0 改为enabled=1 用于 zabbix-debuginfo 存储库。

[zabbix-debuginfo]name=Zabbix Official Repository debuginfo - $basearchbaseurl=http://repo.zabbix.com/zabbix/5.4/rhel/8/$basearch/debuginfo/enabled=0gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591gpgcheck=1
然后就可以安装zabbix-debuginfo软件包了。
# yum install zabbix-debuginfo

这个软件包里包含所有二进制 Zabbix 组件的 debug 信息。

二、6.0Debian/Ubuntu/Raspbian

概述

官方 Zabbix 软件包可用于(可移步官方下载):

软件包可用于 MySQL/PostgreSQL 数据库和 Apache/Nginx 网络服务器支持。

Zabbix 6.2 尚未发布。下载链接指向 6.2 之前的软件包。

安装注意事项

参见不同平台下载页面的安装说明 per platform in the download page for:

  • 安装软件源

  • 安装server/agent/前端

  • 创建初始数据库,导入初始数据

  • 为Zabbix server配置数据库

  • 为Zabbix前端配置PHP

  • 启动server/agent进程

  • 配置Zabbix前端

如果要以root用户身份运行Zabbix agent,请参见 以root用户运行agent。

Zabbix web service进程用于生成定时报表,需要Google浏览器。在软件包中不包含浏览器,必须手动单独安装。

使用 Timescale DB 导入数据

使用 TimescaleDB,除了为 PostgreSQL 导入命令,还 要执行:

# cat /usr/share/doc/zabbix-sql-scripts/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix

TimescaleDB 仅支持 Zabbix 服务器。

PHP 7.2

Zabbix 前端需要 PHP 7.2 或更新的版本来启动 Zabbix 5.0。

在Zabbix前端安装低于7.2版本的PHP请参考 instructions 。

配置 SELinux

参阅适用于RHEL/CentOS 的 SELinux 配置。

前端和 SELinux 配置好之后,重启 Apache 网络服务器:

# service apache2 restart

Proxy安装

添加好所需软件源后,可通过执行以下命令来安装 Zabbix proxy:

# apt install zabbix-proxy-mysql

将命令中的 'mysql' 替换为 'pgsql' 以使用 PostgreSQL,或者替换为 'sqlite3' 以使用 SQLite3 (仅proxy适用)。

创建数据库

为 Zabbix proxy 单独创建数据库 。

Zabbix server 和 Zabbix proxy 不能使用同一个数据库。如果他们是安装在同一个主机中的,则 proxy 数据库需要不同的命名。

导入数据

导入初始数据库模式

# cat /usr/share/doc/zabbix-sql-scripts/mysql/proxy.sql | mysql -uzabbix -p zabbix
对于使用 PostgreSQL(或 SQLite)的 proxy:
# cat /usr/share/doc/zabbix-sql-scripts/postgresql/proxy.sql | sudo -u zabbix psql zabbix# cat /usr/share/doc/zabbix-sql-scripts/sqlite3/proxy.sql | sqlite3 zabbix.db

为Zabbix proxy配置数据库

编辑 zabbix_proxy.conf:

# vi /etc/zabbix/zabbix_proxy.confDBHost=localhostDBName=zabbixDBUser=zabbixDBPassword=<password>

在DBName 中为 Zabbix proxy创建单独的数据库或重命名数据库。

在DBPassword 中对MySQL使用Zabbix数据库密码;PosgreSQL使用它自己的用户密码。

将 DBHost= 与PostgreSQL一起用,你可能需要保留默认设置 DBHost=localhost (或1个 IP 地址),但这可能会使PostgreSQL 通过网络套字连接到Zabbix。参考 RHEL/CentOS 的 Selinux 配置 获取说明。

启动 Zabbix proxy 进程

要启动Zabbix proxy 进程并使其在系统启动时启动,请执行以下操作:

# systemctl restart zabbix-proxy# systemctl enable zabbix-proxy

前端配置

Zabbix proxy 没有前端;它只与 Zabbix server 通信。

安装 Java gateway

只有当你想监控 JMX 应用程序时,才需要安装 Java gateway 。 Java gateway 是轻量级的不需要数据库。

添加了所需的软件源之后,就可执行如下命令安装 Zabbix Java gateway:

# apt install zabbix-java-gateway
由于zabbix从二进制包安装的篇幅较长,我们将会把它分为上下两篇,在小篇我们将会继续介绍zabbix从二进制包部署安装,关注乐维社区,学习zabbix不迷路。

Zabbix6.0使用教程 (五)—zabbix从二进制包安装上篇的更多相关文章

  1. Zabbix6.0使用教程 (一)—zabbix新增功能介绍1

    使用zabbix的小伙伴应该都有关注到目前zabbix的大版本已经更新到了6.0,后面乐乐将会对如何使用zabbix6.0做一个使用教程的系列,大家可以持续关注,这篇我们主要聊聊zabbix6.0新增 ...

  2. 黄聪:Microsoft Enterprise Library 5.0 系列教程(五) Data Access Application Block

    原文:黄聪:Microsoft Enterprise Library 5.0 系列教程(五) Data Access Application Block 企业库数据库访问模块通过抽象工厂模式,允许用户 ...

  3. kubernetes实践之一:kubernetes二进制包安装

    kubernetes二进制部署 1.环境规划 软件 版本 Linux操作系统 CentOS Linux release 7.6.1810 (Core) Kubernetes 1.9 Docker 18 ...

  4. 二进制包安装MySQL数据库

    1.1二进制包安装MySQL数据库 1.1.1 安装前准备(规范) [root@Mysql_server ~]# mkdir -p /home/zhurui/tools ##创建指定工具包存放路径 [ ...

  5. Zabbix源码包安装

    Zabbix源码包安装 Cenos5.3 Basic server 安装顺序 Libxml2 Libmcrypt Zlib Libpng Jpeg:需要创建目录jpeg  /bin  /lib   / ...

  6. MySQL5.7单实例二进制包安装方法

    MySQL5.7单实例二进制包安装方法 一.环境 OS: CentOS release 6.9 (Final)MySQL: mysql-5.7.20-linux-glibc2.12-x86_64.ta ...

  7. MySQL二进制包安装

    mysql的安装有多种方法,这里就介绍一下二进制包安装. [root@node1 ~]# tar xvf mysql-5.7.27-linux-glibc2.12-x86_64.tar [root@n ...

  8. MySQL二进制包安装及启动问题排查

    环境部署:VMware10.0+CentOS6.9(64位)+MySQL5.7.19(64位)一.操作系统调整 # 更改时区 .先查看时区 [root@localhost ~]# date -R Tu ...

  9. liunx系统二进制包安装编译mysql数据库

    liunx系统二进制包安装编译mysql数据库 # 解压二进制压缩包 [root@localhost ~]# tar xf mysql-5.5.32-linux2.6-x86_64.tar.gz -C ...

  10. Mysql 通用二进制包安装

    通用二进制包安装 注意:这里有严格的平台问题: 使用时:centos5.5版本   (类似Windows下的绿色包) 下载(mirrors.sohu.com/mysql)   直接使用tar 解压到指 ...

随机推荐

  1. 错误的daemon.json配置,导致docker容器启动失败 Failed to start Docker Application Container Engine

    docker学习-配置错误的源 问题点剖析 参考 docker学习-配置错误的源 问题点剖析 使用docker安装了nginx,编写Dockerfile,映射端口,终于跑起来了.但是,当我重启服务器, ...

  2. 【MySQL】InnoDB vs MyISAM

      MySQL默认数据库引擎 事务支持 索引类型 索引数据结构 对锁的支持 使用场景 关于count(*) 外键支持 InnoDB 5.1版本后,是 默认为Read committed 聚集索引,叶子 ...

  3. python随机种子seed的作用(强化学习常用到)

    先上代码 import math import gym from gym import spaces, logger from gym.utils import seeding import nump ...

  4. 基于文心大模型套件ERNIEKit实现文本匹配算法,模块化方便应用落地

    文心大模型,产业级知识增强大模型介绍 官网:https://wenxin.baidu.com/ 项目链接见文末 文心大模型开发套件ERNIEKit,面向NLP工程师,提供全流程大模型开发与部署工具集, ...

  5. Rsync+Inotify 实现数据同步

    Rsync 是UNIX及类UNIX-Like平台下一款强大的数据镜像备份软件,它不像FTP或其他文件传输服务那样需要进行全备份,Rsync 可以根据数据的变化进行差异备份,从而减少数据流量,提高工作效 ...

  6. maven打包报错

    * 系统:macOS* 开发工具:Idea* 问题描述:在idea中执行mvn clean install时报No compiler is provided in this environment. ...

  7. Leetcode刷题第二天-贪心

    655:非递减数列 链接:665. 非递减数列 - 力扣(LeetCode) 直接找最大最小值进行替换不行,[1,5,4,6,7,8,9]最大最小值所处位置可能是非递减数列 如果nums[i]> ...

  8. Java - CodeForces - 1230A

    题目: Dawid有了 4 包糖果.第 i 包里面有 Ai 个糖果. Dawid想把这四包糖果送给两个朋友,能否让两个朋友收到相同数量的糖果?注意,不能拆开任何一包糖,不能把糖果留给自己或扔掉,四包糖 ...

  9. raise的研究发现,弄懂,try except 一定要raise 否则非常不利于调试。

    现在很多人 都反应 下载订单后 提示下载成功,但是 软件中却没有这个订单,经过研究发现  原因是我用了 try except end; 这个结构导致的,当订单下载过程中 遇到错误的 时候,程序 没有 ...

  10. JS Leetcode 304. 二维区域和检索 - 矩阵不可变,彻底弄懂二维数组前缀和

    壹 ❀ 引 我在JS LeetCode 303. 区域和检索 - 数组不可变,一维数组的前缀和一文中,记录了一维数组求区间合的解题思路,正好还有一题的升级版,题目来自leetcode304. 二维区域 ...