从源代码包安装zabbix

 admin   2019-03-15 10:17   348 人阅读  0 条评论

您可以从源代码中获取最新版本的Zabbix。

这里提供了从源代码安装Zabbix的分步教程。

1安装Zabbix守护进程

1下载源存档

转到Zabbix下载页面并下载源存档。下载后,通过运行以下命令提取源:

$ tar -zxvf zabbix-4.0.0.tar.gz
在命令中输入正确的Zabbix版本。它必须与下载的存档的名称匹配。
2创建用户帐户

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

但是,如果守护程序是从“root”帐户启动的,它将切换到“zabbix”用户帐户,该帐户必须存在。要创建这样的用户帐户(在其自己的组中,“zabbix”),

在基于RedHat的系统上,运行:

groupadd --system zabbixuseradd --system -g zabbix -d / usr / lib / zabbix -s / sbin / nologin -c“Zabbix Monitoring System”zabbix

在基于Debian的系统上运行:

addgroup --system --quiet zabbixadduser --quiet --system --disabled-login --ingroup zabbix --home / var / lib / zabbix --no-create-home zabbix
Zabbix进程不需要主目录,这就是我们不建议创建它的原因。但是,如果您正在使用某些需要它的功能(例如,存储MySQL凭据$HOME/.my.cnf),您可以使用以下命令自由创建它。

在基于RedHat的系统上,运行:

mkdir -mu = rwx,g = rwx,o = -p / usr / lib / zabbixchown zabbix:zabbix / usr / lib / zabbix

在基于Debian的系统上,运行:

mkdir -mu = rwx,g = rwx,o = -p / var / lib / zabbixchown zabbix:zabbix / var / lib / zabbix

Zabbix前端安装不需要单独的用户帐户。

如果Zabbix 服务器代理程序在同一台计算机上运行,建议使用其他用户来运行服务器,而不是运行代理程序。否则,如果两者都作为同一用户运行,则代理可以访问服务器配置文件,并且Zabbix中的任何管理员级别用户都可以非常轻松地检索(例如)数据库密码。

将Zabbix作为rootbin或任何其他具有特殊权限的帐户运行存在安全风险。
3创建Zabbix数据库

对于Zabbix 服务器代理守护进程以及Zabbix前端,需要一个数据库。运行Zabbix 代理不需要它

提供 SQL 脚本来创建数据库模式和插入数据集。Zabbix代理数据库只需要模式,而Zabbix服务器数据库也需要模式顶部的数据集。

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

4配置源

配置Zabbix服务器或代理的源时,必须指定要使用的数据库类型。一次只能使用服务器或代理进程编译一种数据库类型。

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

./configure --help

要配置Zabbix服务器和代理的源,您可以运行以下内容:

./configure --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
自Zabbix 3.0.0起支持SMTP验证需要具有cURL 7.20.0或更高版本的--with-libcurl配置选项。
自Zabbix 2.2.0起支持虚拟机监视需要--with-libcurl和--with-libxml2配置选项。
从版本3.4开始,Zabbix将始终使用PCRE库进行编译; 安装它不是可选的。--with-libpcre = [DIR]只允许指向特定的基本安装目录,而不是搜索libpcre文件的许多常见位置。

要配置Zabbix服务器的源(使用PostgreSQL等),您可以运行:

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

要配置Zabbix代理的源(使用SQLite等),您可以运行:

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

要配置Zabbix代理的源,您可以运行:

./configure --enable-agent

您可以使用--enable-static标志静态链接库。如果计划在不同服务器之间分发已编译的二进制文件,则必须使用此标志使这些二进制文件在没有必需库的情况下工作。请注意, - enabled-static 在Solaris下不起作用

建立服务器时,不建议使用--enable-static选项。

为了静态构建服务器,您必须具有所需的每个外部库的静态版本。配置脚本中没有严格的检查。
如果使用--enable-agent选项,则编译命令行实用程序zabbix_get和zabbix_sender。
添加MySQL配置文件的可选路径--with-mysql = / <path_to_the_file> / mysql_config,以便在需要使用不在默认位置的MySQL客户端库时选择所需的MySQL客户端库。

当在同一系统上安装了多个MySQL版本或与MySQL一起安装MariaDB时,它非常有用。

使用--with-ibm-db2标志指定CLI API的位置
使用--with-oracle标志指定OCI API的位置

有关加密支持,请参阅使用加密支持编译Zabbix

5制作并安装一切
如果从SVN安装,则需要先运行:

$ make dbschema

make install

此步骤应以具有足够权限的用户身份运行(通常为“root”或使用sudo)。

make install默认情况下, 运行将在/ usr / local / sbin中安装守护程序二进制文件(zabbix_server,zabbix_agentd,zabbix_proxy),并在/ usr / local / bin中安装客户机二进制文件(zabbix_get,zabbix_sender)。

要指定与/ usr / local不同的位置,请在配置源的上一步中使用--prefix键,例如--prefix = / home / zabbix。在这种情况下,守护进程二进制文件将安装在<prefix> / sbin下,而实用程序将安装在<prefix> / bin下。手册页将安装在<prefix> / share下。
6查看和编辑配置文件
  • 编辑Zabbix代理配置文件/usr/local/etc/zabbix_agentd.conf

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

您必须在文件中指定Zabbix服务器IP地址来自其他主机的连接将被拒绝。

  • 编辑Zabbix服务器配置文件/usr/local/etc/zabbix_server.conf

您必须指定数据库名称,用户和密码(如果使用任何)。

如果您的安装很小(最多十个受监控主机),其余参数将适合您的默认值。如果要最大化Zabbix服务器(或代理)的性能,则应更改默认参数。有关详细信息,请参阅性能调整部分。

  • 如果已安装Zabbix代理,请编辑代理配置文件/usr/local/etc/zabbix_proxy.conf

您必须指定服务器IP地址和代理主机名(必须为服务器所知),以及数据库名称,用户和密码(如果使用任何)。

使用SQLite,必须指定数据库文件的完整路径; 不需要数据库用户和密码。
7启动守护进程

在服务器端运行zabbix_server。

shell> zabbix_server
确保您的系统允许分配36MB(或更多)共享内存,否则服务器可能无法启动,您将在服务器日志文件中看到“无法为<缓存类型分配共享内存>。”。这可能发生在FreeBSD,Solaris 8上。
参阅本页底部“另请参阅”部分,了解如何配置共享内存。

在所有受监视的计算机上运行zabbix_agentd。

shell> zabbix_agentd
确保您的系统允许分配2MB的共享内存,否则代理可能无法启动,您将在代理日志文件中看到“无法为收集器分配共享内存。”。这可能发生在Solaris 8上。

如果已安装Zabbix代理,请运行zabbix_proxy。

shell> zabbix_proxy

2安装Zabbix Web界面

复制PHP文件

Zabbix前端是用PHP编写的,因此要运行它,需要PHP支持的Web服务器。只需将PHP文件从frontends / php复制到webserver 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前端/ phpcp -a。<htdocs中> / ZABBIX

如果从SVN安装并计划使用除英语之外的任何其他语言,则必须生成翻译文件。为此,请运行:

现场/ make_mo.sh

msgfmt gettext包中的实用程序是必需的。

此外,要使用除英语之外的任何其他语言,应将其语言环境安装在Web服务器上。参阅 “用户配置文件”页面中“另请参阅”部分,了解如何根据需要进行安装。
安装前端
步骤1

在浏览器中,打开Zabbix URL:http:// <server_ip_or_name> / zabbix

您应该看到前端安装向导的第一个屏幕。

第2步

确保满足所有必备软件。

先决条件最低价值描述
PHP版本5.4.0
PHP memory_limit选项128MB在php.ini中:
memory_limit = 128M
PHP post_max_size选项16MB在php.ini中:
post_max_size = 16M
PHP upload_max_filesize选项2MB在php.ini中:
upload_max_filesize = 2M
PHP max_execution_time选项300秒(允许值0和-1)在php.ini中:
max_execution_time = 300
PHP max_input_time选项300秒(允许值0和-1)在php.ini中:
max_input_time = 300
PHP session.auto_start选项必须禁用在php.ini中:
session.auto_start = 0
数据库支持其中之一:MySQL,Oracle,PostgreSQL,IBM DB2必须安装以下模块之一:
mysql,oci8,pgsql,ibm_db2
bcmath时
PHP-bcmath时
MBSTRING
PHP-MBSTRING
PHP mbstring.func_overload选项必须禁用在php.ini中:
mbstring.func_overload = 0
PHP always_populate_raw_post_data选项必须禁用仅适用于PHP 5.6.0或更高版本。
在php.ini中:
always_populate_raw_post_data = -1
插座
PHP的网窝。用户脚本支持需要。
GD2.0或更高PHP-GD。PHP GD扩展必须支持PNG图像( - with-png-dir),JPEG( - with-jpeg-dir)图像和FreeType 2(-- with-freetype-dir)。
的libxml2.6.15php-xml或php5-dom
的XmlWriter
PHP-的XmlWriter
XMLReader的
PHP-的XMLReader
CTYPE
PHP-CTYPE
会议
PHP会话
gettext的
php-gettext 
从Zabbix 2.2.1开始,PHP gettext扩展不是安装Zabbix的强制要求。如果未安装gettext,前端将照常工作,但翻译将无法使用。

列表中也可能包含可选的先决条件。失败的可选先决条件以橙色显示,并具有警告状态。如果选择的先决条件失败,则设置可能会继续。

如果需要更改Apache用户或用户组,则必须验证会话文件夹的权限。否则Zabbix设置可能无法继续。
第3步

输入连接数据库的详细信息。必须已创建Zabbix数据库。

第4步

输入Zabbix服务器详细信息。

输入Zabbix服务器的名称是可选的,但是,如果提交,它将显示在菜单栏和页面标题中。

第5步

查看设置摘要。

第6步

下载配置文件并将其放在conf /中将Zabbix PHP文件复制到的webserver HTML documents子目录中。

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

完成安装。

第8步

Zabbix前端准备好了!默认用户名为Admin,密码为zabbix

继续开始使用Zabbix

3安装Java网关

仅当您要监视JMX应用程序时,才需要安装Java网关。Java网关是轻量级的,不需要数据库。

要从源安装,首先下载并解压缩源存档。

要编译Java网关,请运行./configure带有--enable-java选项脚本建议您指定--prefix请求除默认/ usr / local之外的安装路径选项,因为安装Java网关将创建整个目录树,而不仅仅是单个可执行文件。

$ ./configure --enable-java --prefix = $ PREFIX

要编译Java网关并将其打包到JAR文件中,请运行make请注意,这一步,你需要javacjar你的路径可执行文件。

$ make

现在你在src / zabbix_java / bin中有一个zabbix-java-gateway- $ VERSION.jar文件。如果您熟悉从分发目录中的src / zabbix_java运行Java网关,则可以继续执行配置和运行Java网关的说明否则,请确保您具有足够的权限并运行make install

$ make install

继续进行设置以获取有关配置和运行Java网关的更多详细信息。


本文地址:https://liuchunjie.top/?id=119
版权声明:本文为原创文章,版权归 admin 所有,欢迎分享本文,转载请保留出处!

 发表评论


表情

还没有留言,还不快点抢沙发?