1. 程式人生 > >003.Zabbix2.x-Server服務端安裝

003.Zabbix2.x-Server服務端安裝

一 環境基礎

1.1 部署基礎環境

部署Zabbix需要LAMP或LANP環境,資料庫可以為MySQL或者MariaDB。硬體及儲存條件按需配置。

1.2 常見依賴列表列表

Web前端需要支援的軟體環境如下:
軟體 版本 描述
Apache 1.3以上 主程式
PHP 5.3以上 主程式
PHP擴充套件庫
gd 2.0以上 PHP GD擴充套件庫需支援PNG/JPEG/FreeType2
bcmath php-bcmath(--enable-bcmath)
ctype php-ctype(--enable-ctype)
libXML 2.6以上 php-xml
xmlreader php-xmlreader
Xmlwriter php-xmlreader
session php-net-socket
sockets php-net-socket(--enable-sockets)
mbstring php-mbstring(--with-gettext)
ibm_db2 使用DB2虛此支援
mysqli 使用MySQL需此支援
oci8 使用oracle需此支援
pgsql 使用postgresql需此支援
sqlite3 使用sqlite需此支援
注意:如是RHEL系統,自帶的RPM包可能缺少php-mbstring和php-bcmatch包,若編譯安裝,請確保以上引數開啟。

1.3 Zabbix-Server需要軟體環境

依賴的軟體包 描述
OpenIPMI 如需支援IPMI
libssh 2 如需支援SSH,則需此包
fping ICMP ping的支援
libcurl Web監控
libiksemel Jabber告警介質
net-snmp SNMP的支援
注意:Zabbix-Server對時間精度要求很高,儘量採用NTP自動同步。

二 Zabbix部署

2.1 Apache環境

  1 yum -y install gcc gcc-c++* net-snmp-devel curl curl-devel perl-DBI php-gd php-mysql php-bcmath php-mbstring php-xml mysql-devel libxml2* freetype-devel libicu-devel openldap-devel.x86_64 httpd httpd-devel mysql-server mysql  mysql-libs php php-devel
提醒:除Zabbix外,個人建議其他所有元件和相關包全部採用yum直接安裝,可解決相關依賴性。

2.2 Apache和php整合

  1 #vim /var/www/html/index.php
  2 <?php
  3 phpinfo();
  4 ?>
提醒:可用來測試相關元件的安裝情況。
  1 #vim /etc/httpd/conf/httpd.conf
  2 LoadModule  php5_module modules/libphp5.so
  3 DirectoryIndex  index.php index.html
  4 AddType     application/x-httpd-php  .php
  5 ServerName localhost:80
  6 #/etc/init.d/httpd restart
提醒:開啟Apache對php的相關支援。

2.3 資料庫調整

  1 #mkdir /data/zabbix				#建議將Zabbix資料庫獨立儲存
  2 #vi /etc/my.cnf
  3 datadir=/data/zabbix			#設定獨立的Zabbix資料庫便於儲存
  4 character-set-server=utf8			#設定字符集為utf8
  5 innodb_file_per_table=1			#設定innodb的每個表文件單獨儲存
  6 [client]
  7 default-character-set=utf8
  8 socket=/var/lib/mysql/mysql.sock
  9 [mysql]
 10 default-character-set=utf8
 11 socket=/var/lib/mysql/mysql.sock
 12 character-set-server=utf8
 13 innodb_file_per_table=1
 14 # chown -R mysql:mysql /data/
 15 # ln -S /data/mysql/mysql.sock /var/lib/mysql/mysql.sock
 16 # service mysqld start
 17 # mysql_secure_installation
建議:刪除匿名使用者和test資料,並設定root密碼提升資料庫安全性。

2.4 其他調整

  1 #service iptables stop
  2 #chkconfig iptables off
  3 #vi /etc/sysconfig/selinux
  4 SELINUX=disable
  5 #setenforce 0
提醒:建議關閉防火牆及SELinux。

三 Zabbix部署

3.1 建立Zabbix使用者及授權

  1 # useradd zabbix				#新建Zabbix使用者
  2 # usermod -s /sbin/nologin zabbix		#禁止Zabbix使用者登入,提升安全
  3 # mysql -uroot -p
  4 mysql> create database zabbix charset=utf8;
  5 mysql> grant all on zabbix.* to [email protected] identified by 'zabbixpassword';
  6 mysql> flush privileges;
提醒:對於MySQL 5.7版本建立資料庫後賦權需要符合安全密碼規則,具體修改自行百度。

3.2 安裝Zabbix

  1 # wget https://nchc.dl.sourceforge.net/project/zabbix/ZABBIX%20Latest%20Stable/2.4.8/zabbix-2.4.8.tar.gz
建議:Zabbix建議編譯安裝,相對穩定性較好。
  1 #tar xf zabbix-2.4.8.tar.gz
  2 #cd zabbix-2.4.8
  3 #./configure --prefix=/usr/local/zabbix/ --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl --with-libxml2
  4 #make && make install

3.3 匯入資料庫

  1 #cd /root/zabbix-2.4.8/database/mysql/
  2 #mysql -uzabbix -pzabbixpassword zabbix < schema.sql
  3 #mysql -uzabbix -pzabbixpassword zabbix < images.sql
  4 #mysql -uzabbix -pzabbixpassword zabbix < data.sql

3.4 新增為系統服務

  1 #ln -s /usr/local/zabbix/sbin/zabbix_* /usr/local/sbin/
  2 #cd /root/zabbix-2.4.8/misc/init.d/tru64
  3 #cp * /etc/init.d/
  4 #chmod u+x /etc/init.d/zabbix_*
提醒:為方便直接使用service進行管理,建議新增為系統服務。

3.5 配置Zabbix的web服務

  1 #cd /root/zabbix-2.4.8/frontends/php
  2 #cp -arf * /var/www/html

3.6 配置Zabbix

  1 #vi /usr/local/zabbix/etc/zabbix_server.conf
  2 LogFile=/var/log/zabbix/zabbix_server.log
  3 LogFileSize=0
  4 PidFile=/var/run/zabbix/zabbix_server.pid
  5 DBHost=127.0.0.1			#修改主機
  6 DBName=zabbix
  7 DBUser=zabbix
  8 DBPassword=zabbixpassword		#修改DB密碼(之前所建立密碼)
  9 SNMPTrapperFile=/var/log/snmptrap/snmptrap.log

3.7 配置php.ini

  1 #vi /etc/php.ini
  2 max_execution_time 300
  3 memory_limit 128M
  4 post_max_size 16M
  5 upload_max_filesize 2M
  6 max_input_time 300
  7 always_populate_raw_post_data -1
  8 date.timezone Asia/Shanghai

3.8 重啟服務

  1 #/etc/init.d/httpd restart
  2 #chkconfig httpd on
  3 #/etc/init.d/mysqld restart
  4 #chkconfig mysqld on

四 Web端配置

瀏覽器輸入:172.24.8.10/setup.php 02 合適所有相關引數,若出現fail,需要進入php.ini修改為推薦值即可。 03 輸入MySQL中建立的Zabbix使用者和密碼,並測試連線。 04 輸入平臺名字,可自定義。 05 確認資訊。 06 出現以下php檔案fail,只需要將此檔案下載下來,上傳至:/var/www/html/conf/目錄即可。 07 再次檢測即可。 08 登入即可。 09 注:zabbix預設的登入名和密碼分別是admin和zabbix。