您可以从源代码中获取最新版本的Zabbix。
这里提供了从源代码安装Zabbix的分步教程。
1安装Zabbix守护进程
1下载源存档
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
$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中的任何管理员级别用户都可以非常轻松地检索(例如)数据库密码。
root
,bin
或任何其他具有特殊权限的帐户运行存在安全风险。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 2.2.0起支持虚拟机监视需要--with-libcurl和--with-libxml2配置选项。
要配置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下不起作用。
为了静态构建服务器,您必须具有所需的每个外部库的静态版本。配置脚本中没有严格的检查。
当在同一系统上安装了多个MySQL版本或与MySQL一起安装MariaDB时,它非常有用。
使用--with-oracle标志指定OCI API的位置。
有关加密支持,请参阅使用加密支持编译Zabbix。
5制作并安装一切
$ make dbschema
make install
此步骤应以具有足够权限的用户身份运行(通常为“root”或使用sudo
)。
make install
默认情况下, 运行将在/ usr / local / sbin中安装守护程序二进制文件(zabbix_server,zabbix_agentd,zabbix_proxy),并在/ usr / local / bin中安装客户机二进制文件(zabbix_get,zabbix_sender)。
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地址和代理主机名(必须为服务器所知),以及数据库名称,用户和密码(如果使用任何)。
7启动守护进程
在服务器端运行zabbix_server。
shell> zabbix_server
请参阅本页底部的“另请参阅”部分,了解如何配置共享内存。
在所有受监视的计算机上运行zabbix_agentd。
shell> zabbix_agentd
如果已安装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包中的实用程序是必需的。
安装前端
步骤1
第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的网窝。用户脚本支持需要。 | |
GD | 2.0或更高 | PHP-GD。PHP GD扩展必须支持PNG图像( - with-png-dir),JPEG( - with-jpeg-dir)图像和FreeType 2(-- with-freetype-dir)。 |
的libxml | 2.6.15 | php-xml或php5-dom |
的XmlWriter | PHP-的XmlWriter | |
XMLReader的 | PHP-的XMLReader | |
CTYPE | PHP-CTYPE | |
会议 | PHP会话 | |
gettext的 | php-gettext 从Zabbix 2.2.1开始,PHP gettext扩展不是安装Zabbix的强制要求。如果未安装gettext,前端将照常工作,但翻译将无法使用。 |
列表中也可能包含可选的先决条件。失败的可选先决条件以橙色显示,并具有警告状态。如果选择的先决条件失败,则设置可能会继续。
第3步
第4步
第5步
第6步
下载配置文件并将其放在conf /中将Zabbix PHP文件复制到的webserver HTML documents子目录中。
第7步
第8步
3安装Java网关
仅当您要监视JMX应用程序时,才需要安装Java网关。Java网关是轻量级的,不需要数据库。
要从源安装,首先下载并解压缩源存档。
要编译Java网关,请运行./configure
带有--enable-java
选项的脚本。建议您指定--prefix
请求除默认/ usr / local之外的安装路径的选项,因为安装Java网关将创建整个目录树,而不仅仅是单个可执行文件。
$ ./configure --enable-java --prefix = $ PREFIX
要编译Java网关并将其打包到JAR文件中,请运行make
。请注意,这一步,你需要javac
和jar
你的路径可执行文件。
$ make
现在你在src / zabbix_java / bin中有一个zabbix-java-gateway- $ VERSION.jar文件。如果您熟悉从分发目录中的src / zabbix_java运行Java网关,则可以继续执行配置和运行Java网关的说明。否则,请确保您具有足够的权限并运行make install
。
$ make install
继续进行设置以获取有关配置和运行Java网关的更多详细信息。
发表评论