Zabbix服務器的構建
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服務器的構建介紹到這里了。
【編輯推薦】