龙空技术网

通过源代码方式完整安装zabbix实战笔录

互联网蚂蚁哥 1028

前言:

此刻看官们对“centoslibpcre安装”可能比较注重,你们都需要了解一些“centoslibpcre安装”的相关文章。那么小编同时在网络上搜集了一些对于“centoslibpcre安装””的相关资讯,希望小伙伴们能喜欢,看官们快快来学习一下吧!

文章索引:

成熟、易用的企业级开源监控解决方案zabbix功能介绍

一、获取 Zabbix

获取 Zabbix 安装介质有四种方法:

从官方的RPM和DEB 发行包安装;

下载最新的归档源码包并编译它;

从 容器 中安装;

二、安装要求

1、硬件要求

(1)、内存和磁盘

Zabbix 运行需要物理内存和磁盘空间。如果刚接触 Zabbix,128 MB 的物理内存和 256 MB 的可用磁盘空间可能是一个很好的起点。 然而,所需的内存和磁盘空间显然取决于被监控的主机数量和配置参数。 如果您计划调整参数以保留较长的历史数据,那么您应该考虑至少有几 GB 磁盘空间,以便有足够的磁盘空间将历史数据存储在数据库中。

每个 Zabbix 守护程序进程都需要与数据库服务器建立多个连接。 为连接分配的内存量取决于数据库引擎的配置。

您拥有的物理内存越多,数据库(以及 Zabbix )的工作速度就越快!

(2)、CPU

Zabbix,尤其是 Zabbix 数据库可能需要大量 CPU 资源,该具体取决于被监控参数的数量和所选的数据库引擎。

硬件资源配置参考

下表提供了几个硬件配置参考:

2、软件要求:

Zabbix 是基于先进 Apache Web 服务器、领先的数据库引擎和 PHP 脚本语言构建的。

数据库管理系统

3、前端

Zabbix 前端需要使用下列软件:

Zabbix 也许可以在以前的Apache、MySQL、Oracle 和 PostgreSQL 版本上运行。

二、从源代码包安装

可以通过从源代码编译来获取最新版本的Zabbix:。

这里提供了从源代码安装 Zabbix 的具体步骤。

1、 安装 Zabbix守护进程

(1)、 下载源代码存档

转到下载源代码存档。待下载完毕后,执行以下命令解压缩源代码存档:

$ tar -zxvf zabbix-4.0.0.tar.gz

请在命令中输入正确的 Zabbix 版本。 它必须与下载的存档的名称匹配。

2 、创建用户账户

对于所有 Zabbix 守护进程,需要一个非特权用户。 如果从非特权用户帐户启动 Zabbix 守护程序,它将以该用户身份运行。

然而,如果一个守护进程以“root”启动,它会切换到“zabbix”用户,且这个用户必须存在。在 Linux 系统中,可以使用下面命令建立一个用户(该用户属于自己的用户组,“zabbix”):

groupadd zabbixuseradd -g zabbix zabbix

而对于 Zabbix 前端安装,并不需要单独的用户帐户。

如果 Zabbix server 和 agent 运行在相同的机器上,建议使用不同的用户运行来 Zabbix server 和 agent。 否则,如果两者都作为同一用户运行,则 Zabbix agent 可以访问 Zabbix server 配置文件,并且可以轻松检索到 Zabbix 中的任何管理员级别的用户,例如,数据库密码。

以 root 、bin 或其他具有特殊权限的账户运行 Zabbix 是非常危险的。

3 、创建 Zabbix 数据库

对于 Zabbix server 和 proxy 守护进程以及 Zabbix 前端,必须需要一个数据库。但是 Zabbix agent 并不需要。

SQL 脚本 用于创建数据库 schema 和插入 dataset。Zabbix proxy 数据库只需要数据库 schema,而 Zabbix server 数据库在建立数据库 schema 后,还需要 dataset。

当创建数据库后,继续执行编译 Zabbix 的步骤。

4、 配置源代码

当配置 Zabbix server 或者 proxy 的源代码时,需要指定所使用的数据库类型。一次只能使用 Zabbix server 或 Zabbix proxy 进程编译一种数据库类型。

如果要查看所有受支持的配置选项,请在解压缩的 Zabbix 源代码目录中运行:

./configure --help

如果要配置 Zabbix server 和 Zabbix proxy 的源代码,可以运行以下内容:

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2

从 Zabbix 3.0.0 起,STMP 认证需要需要 cURL 7.20.0 或更高版本的 --with-libcurl 配置选项。

从 Zabbix 2.2.0 起,虚拟机监控需要 --with-libcurl 和 --with-libxml2 配置选项。

从 Zabbix 3.4 开始,Zabbix 将始终使用 PCRE 库进行编译;安装时它不是可选的。 --with-libpcre=[DIR] 只允许指向特定的基础安装目录,而不是通过 libpcre 文件的多个公共位置搜索。

如果要配置 Zabbix server 的源代码(使用 PostgreSQL 等),可以运行:

./configure --enable-server --with-postgresql --with-net-snmp

如果要配置 Zabbix proxy 的源代码(使用 SQLite 等),可以运行:

./configure --prefix=/usr --enable-proxy --with-net-snmp --with-sqlite3 --with-ssh2

如果要配置 Zabbix agent 的源代码,可以运行:

./configure --enable-agent

可以使用 --enable-static 标识静态连接类库。如果你打算在不同的服务器之间分发已编译的二进制文件,则必须使用此标识使这些二进制文件在没有必需库的情况下工作。请注意 --enable-static 在 Solaris 系统下无效 。

不建议在搭建 Zabbix server 的时候使用--enable-static 选项。

为了静态搭建 Zabbix server,必须拥有每个所需的外部类库的静态版本。配置脚本中不提供这些类库的严格检查。

命令行工具 zabbix_get 和 zabbix_sender 只有在 --enable-agent 选项启用时才会被编译。

如果 MySQL 客户端类库不处在默认的位置,则需要添加可选的 MySQL 的配置文件 --with-mysql=/<path_to_the_file>/mysql_config ,以选择所需的路径。

这可以有效解决,一个系统上安装了多个版本的 MySQL 或者 MariaDB 的情况。

5、安装

需要先运行以下命令:

#make install

这步需要使用一个拥有足够权限的用户来运行 (如 'root',或者使用 sudo)。

运行 make install 将使用在 /usr/local/sbin 下的守护进程二进制文件(zabbix_server, zabbix_agentd, zabbix_proxy)和在 /usr/local/bin 下的客户端二进制文件进行默认安装。

如需要指定 /usr/local 以外的位置,可在之前的配置源代码的步骤中使用 --prefix,例如 --prefix=/home/zabbix。在这个案例中,守护进程的二进制文件会被安装在 <prefix>/sbin 下,工具会安装在 <prefix>/bin 下。帮助文件会安装在 <prefix>/share 下。

6 查看和编辑配置文件

在此编辑 Zabbix agent 的配置文件 /usr/local/etc/zabbix_agentd.conf

需要为每台安装了 zabbix_agentd 的主机配置这个文件。

必须在这个文件中指定 Zabbix server 的 IP 地址 。若从其他主机发起的请求会被拒绝。

在此编辑 Zabbix server 的配置文件/usr/local/etc/zabbix_server.conf

必须指定数据库的名称、用户和密码(如果使用的话)。

如果进行小型环境部署(最多十个受监控主机),其余参数的默认值将适合的环境。 如果要最大化 Zabbix server(或 proxy)的性能,则应更改默认参数。

如果安装了 Zabbix proxy,请在此编辑 proxy 的配置文件 /usr/local/etc/zabbix_proxy.conf

必须指定 Zabbix server 的 IP 地址和 Zabbix proxy 主机名(必须被 Zabbix server 识别),同时也要指定数据库的名称、用户和密码(如果使用的话)。

7、 启动守护进程

在 Zabbix server 端运行 zabbix_server:

shell> zabbix_server

值得注意的是,确保的系统允许分配 36MB(或更多)的共享内存,否则 Zabbix server 将无法启动,并会在 Zabbix server 日志文件中看到 “Cannot allocate shared memory for <type of cache>.”。

在受监控的主机上运行 zabbix_agentd:

shell> zabbix_agentd

值得注意的是,请确保的系统允许分配 2MB 的共享内存,否则 Zabbix agent 可能会无法运行,并会在 Zabbix agent 日志文件中看到 “Cannot allocate shared memory for collector.” 这样的报错信息。

如果安装了 Zabbix proxy,请运行 zabbix_proxy:

shell> zabbix_proxy

二、安装 Zabbix web 界面

Zabbix 前端是 PHP 编写的,所以必须运行在支持 PHP 的 Web 服务器上。只需要简单的从 frontends/php 路径下复制 PHP 文件到 Web 服务器的 HTML 文档目录,即可完成安装。

Apache Web 服务器的 HTML 文档目录通常包括:

/usr/local/apache2/htdocs (从源代码安装 Apache 的默认目录)/srv/www/htdocs (OpenSUSE, SLES)/var/www/html (Debian, Ubuntu, Fedora, RHEL, CentOS)

建议使用子目录替代 HTML 根目录。可以使用下列命令,以创建一个子目录并复制 Zabbix 的前端文件到这个目录下(注意替换为实际的目录):

mkdir <htdocs>/zabbixcd frontends/phpcp -a . <htdocs>/zabbix

下面开始安装前端,第一步在浏览器打开 Zabbix 链接:;server_ip_or_name>/zabbix

可以看到前端安装向导的第一个页面。

第二步

请确认满足所有的软件安装前置条件。

先决条件最低要求如下表所示:

第三步

请输入连接到数据库的详细信息。Zabbix 数据库必须提前创建完成。

第四步

请输入 Zabbix server 的详细信息。

第五步

查看设置的摘要。

第六步

下载配置文件并将其放在 conf/ 路径下,即在您复制 Zabbix PHP 文件的 Web 服务器 HTML 文档子目录中。

如果 Web服务器用户具有对 conf/ 目录的写访问权,则会自动保存配置文件,并且可以直接继续执行下一步。

第七步

完成安装。

第八步

Zabbix 前端已经就绪!默认的用户名是 Admin,密码是zabbix。

至此,安装完成。

标签: #centoslibpcre安装 #源码包安装的apache