Zabbix服务器的构建
服务器端
第1步 创建 Zabbix 的超级用户帐号
这是用来运行服务器的用户。在实际应用过程中你应该创建一个专用的普通帐号(通常使用 ‘zabbix’)。使用 'root'、'bin' 或其他特殊帐号会产生安全问题,切记不要这样做。
注意: ZABBIX 服务器进程 (zabbix_server) 在 root 帐号下运行将被保护。
第 2 步 解开 ZABBIX 源代码
- shell> gunzip zabbix.tar.gz && tar -xvf zabbix.tar
第 3 步 创建 ZABBIX 数据库
ZABBIX 使用 SQL 脚本来创建要求的数据库模式并插入缺省配置。这儿有 MySQL 和 PostgreSQL 两种不同的脚本。
对于 MySQL 来说:
- shell> mysql -u -p
- mysql> create database zabbix;
- mysql> quit;
- shell> cd create/mysql
- shell> cat schema.sql |mysql -u -p zabbix
- shell> cd ../data
- shell> cat data.sql |mysql -u -p zabbix
- shell> cat images_mysql.sql |mysql -u -p zabbix
对于 PostgreSQL 来说:
- shell> psql -U
- psql> create database zabbix;
- psql> \q
- shell> cd create/postgresql
- shell> cat schema.sql|psql -U zabbix
- shell> cd ../data
- shell> cat data.sql|psql -U zabbix
- shell> cat images_pgsql.sql |psql -U zabbix
对于 SQLite 来说:
- shell> cd create/sqlite
- shell> cat schema.sql | sqlite3 /var/lib/sqlite/zabbix.db
- shell> cd ../data
- shell> cat data.sql | sqlite3 /var/lib/sqlite/zabbix.db
- shell> cat images.sql | sqlite3 /var/lib/sqlite/zabbix.db
注意: 数据库如果不存在,将被自动创建。
第 4 步 为您的系统配置和编译源代码
源代码必须在服务器(监测机)和客户端(被监测机)上编译。为服务器配置源代码,您必须指定将使用哪种数据库。
- shell> ./configure --enable-server --with-mysql --with-net-snmp –with-jabber –with-libcurl
- # 配置成 MySQL + Jabber + WEB 监测
或
- shell> ./configure --enable-server --with-pgsql --with-net-snmp –with-jabber –with-libcurl
- # 配置成 PostgreSQL + Jabber + WEB 监测
或
- shell> ./configure --enable-server --with-oracle=/home/zabbix/sqlora8 --with-net-snmp –with-jabber –with-libcurl
- # 配置成 Oracle + Jabber + WEB 监测
注意:使用标记 --with-oracle 是为了指出 sqlora8 库文件所在的位置。支持 Oracle 就需要该库文件。该库文件可以在 libsqlora8 主页上找到。
Note: 使用标记 --enable-static 用来统计链接库。如果您计划在不同的服务器间发布被编译的二进制文件,您必须使用该标记,从而让这些二进制文件可以在没有所要求库文件的情况下工作。 --enable-static 不能在 Solaris 上正常工作。 标记 --with-ucd-snmp 可以用来代替 --with-net-snmp。如果不要求支持 SNMP 的话,--with-net-snmp 和 --with-ucd-snmp 标记都可以省略。
然而,如果您想单独编译客户端二进制文件的话,请运行:
- shell> ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-jabber –with-libcurl
参数 --enable-static 也可以强行用于静态链接上。
第 5 步 Make 和 安装
- shell> make install
缺省使用
- make install
将所有文件安装在 /usr/local/bin、/usr/local/lib 等目录中,您也可以使用 --prefix 来指定您要安装的目录前缀
第 6 步 配置 /etc/services
这一步并不真的必需,但它被推荐。在客户机(被监测)上在 /etc/services 文件中添加以下几行:
- zabbix_agent 10050/tcp
- zabbix_trap 10051/tcp
第 7 步 配置 /etc/inetd.conf
如果您计划使用 zabbix_agent 来代替推荐使用的 zabbix_agentd, 那么必须添加以下几行:
- zabbix_agent stream tcp nowait.3600 zabbix /opt/zabbix/bin/zabbix_agent
然后重启 inetd
- shell> killall -HUP inetd
在配置文件中修改缺省设置
第 8 步 配置 /etc/zabbix/zabbix_agent.conf
您需要为每个安装了 zabbix_agent 的主机配置该文件。该文件将包含 Zabbix 服务器的 IP 地址。来自其他主机的连接将被拒绝。您也可以参考 misc/conf/zabbix_agent.conf 文件。
第 9 步 配置 /etc/zabbix/zabbix_agentd.conf
您需要为每个安装了 zabbix_agentd 的主机配置该文件。该文件将包含 Zabbix 服务器的 IP 地址。来自其他主机的连接将被拒绝。您也可以参考 misc/conf/zabbix_agentd.conf 文件。
第 10 步 配置 /etc/zabbix/zabbix_server.conf
对于小安装来说 (最大不超过 10 个被监测主机),缺省的参数是完成胜任的。但当您要让 Zabbix 发挥最佳性能时就要更改缺省参数。更多详情请参见 [性能调整]章节。
您或许可以参考 misc/conf/zabbix_server.conf 文件。
第 11 步 运行服务器进程
在服务器端运行 zabbix_server
- shell> cd bin
- shell> ./zabbix_server
第 12 步 运行代理
在需要的地方运行 zabbix_agentd
- shell> cd bin
- shell> ./zabbix_agentd
Zabbix服务器的构建介绍到这里了。
【编辑推荐】