zabbix在centos6下的編譯安裝

簡介

  zabbix是開源的,它基於web界面的,提供分佈式系統監視以及網絡監視功能,是一個all-in-one的高度集成的企業級監控解決方案。zabbix能監視各類網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各類問題。Zabbix由一箇中心的Zabbix Server和若干可能安裝有Zabbix Agent被監控設備構成,主要特性可歸納爲如下幾點;php

1.主要組成

    zabbix server與可選組件zabbix agent。
 zabbix server能夠經過SNMP,zabbix agent,ping,端口監視等方法提供對遠程服務器/網絡狀態的監視,數據收集等功能,它能夠運行在Linux, Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X等平臺之上。
 zabbix agent須要安裝在被監視的目標服務器上,它主要完成對硬件信息或與操做系統有關的內存,CPU等信息的收集。zabbix agent能夠運行在Linux ,Solaris, HP-UX, AIX, Free BSD, Open BSD, OS X, Tru64/OSF1, Windows NT4.0, Windows 2000/2003/XP/Vista)等系統之上。
html

2.數據存儲

 數據庫爲PostgreSQL,Mysql,Oracle,SQLite或DB2。
 可配置歷史和趨勢數據的保存時間
 內建舊清理程序防止數據膨脹
mysql

詳細請參考小橋河西的博客,很實用:http://blog.chinaunix.net/uid-20726500-id-4513716.htmlweb


源碼安裝步驟

官方文檔:https://www.zabbix.com/documentation/2.4/manual/installation/install#from_the_sourcessql

環境:Centos6.4 64bit

1.安裝依賴包和LAMP環境

安裝開發軟件包shell

yum -y groupinstall  "Development Tools"

安裝LAMP(Linux,Apache, Mysql, Php)環境及zabbix所需644的依賴包
數據庫

yum -y install httpd mysql mysql-server php php-mysql php-common php-mbstring php-gd php-odbc php-pear curl curl-devel net-snmp net-snmp-devel perl-DBI php-xml ntpdate  php-bcmath

備註:除LAMP以外,還有常見的LNMP(Linux, Nginx, MySQL, Php)。
apache

2.建立zabbix服務運行所須要的用戶和組

groupadd zabbix
useradd -g zabbix zabbix
passwd zabbixuser  #修改用戶密碼

3. 初始化及配置mysql數據庫

啓動mysql服務:vim

chkconfig mysqld on #設置mysql服務開機啓動
service mysqld start 或者/etc/init.d/mysqld start #來啓動mysql服務

 進入mysql的sql命令狀態,建立zabbix運行所須要的數據庫及用戶權限:centos

[root@cloudstack local]# mysqladmin  -u root –h 127.0.0.1 password "123456" --root用戶初始化後無密碼,此處設定密碼爲123456
[root@cloudstack local]# mysql –u root –h 127.0.0.1 –p  -- -p是強制輸入密碼
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 6
Server version: 5.1.73 Source distribution

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>
--建立zabbix數據庫
mysql>create database zabbix character set utf8;
--插入zabbix用戶
mysql>grant all privileges on zabbix.* to zabbixuser@'%' identified by 'zabbixpassword';
--或者insert into mysql.user(Host,User,Password) values("localhost","zabbixuser",password("zabbixpassword"));
Query OK, 1 row affected, 3 warnings (0.00 sec)
mysql>flush privileges;


4.安裝配置zabbix

4.1下載zabbix-2.4.7

mkdir /lyy
cd /lyy
wget  #將源碼包下載到/lyy目錄下 
tar -zxvf zabbix-2.4.7.tar.gz #解壓


4.2 編譯安裝zabbix

cd  zabbix-2.4.7
./configure --sysconfdir=/usr/local/zabbix/  --enable-server --enable-agent --with-net-snmp --with-libcurl --with-mysql

若是configure過程當中提示少包,能夠及時安裝,如:yum –y install mysql-devel。

Configure正確完成後,根據提示執行:

make install

注意:此處sysconfdir指定配置文件的路徑(zabbix_server.conf和zabbix_agent.conf),指定就在/usr/local/zabbix/目錄下的etc目錄了,若是不指定默認在/usr/local/下的etc目錄下。


4.3配置 zabbix server端及agent端的系統服務腳本

cp /lyy/zabbix-2.4.7/misc/init.d/tru64/zabbix_agentd /etc/init.d/
cp /lyy/zabbix-2.4.7/misc/init.d/tru64/zabbix_server /etc/init.d/
chown zabbixuser:zabbixuser /etc/init.d/zabbix_*

以上配置完畢後,能夠直接在zabbixuser用戶下的任意目錄,執行

service zabbix_server start/stop/restart

若是不配置以上系統服務腳本,則需執行/usr/local/zabbix/sbin/zabbix_server(或者缺省的usr/local/sbin/zabbix_server)啓動服務。

 

4.4將zabbix的初始數據導入到數據庫zabbix中

mysql –u zabbixuser –h 192.168.229.131 -p zabbix < /lyy/zabbix-2.4.7/database/mysql/schema.sql
mysql –u zabbixuser –h 192.168.229.131 -p zabbix < /lyy/zabbix-2.4.7/database/mysql/images.sql
mysql –u zabbixuser –h 192.168.229.131 -p zabbix < /lyy/zabbix-2.4.7/database/mysql/data.sql

登陸數據庫查看下錶是否都建立成功


4.5 配置zabbix的網站

將zabbix的頁面文件copy到指定目錄(跟apache配置的相同便可)

mkdir /var/www/html/zabbix
cp -rf /lyy/zabbix-2.4.7/frontends/php/* /var/www/html/zabbix/
chown -R zabbixuser.zabbixuser /var/www/html/zabbix/


4.6配置php文件,適應zabbix安裝所需的參數

vim /etc/php.ini
date.timezone = Asia/Shanghai
max_execution_time = 300
max_input_time = 300
post_max_size = 32M
memory_limit = 128M

注意: 其中參數mbstring.func_overload = 2是要求註釋掉的,不然會在後邊產生錯誤。

 

4.7配置zabbix server端的配置文件

    修改zabbix_server.conf(缺省位置在/usr/local/etc/zabbix_server.conf,此處爲/usr/local/zabbix/etc/zabbix_server.conf),定義其中數據庫的IP、用戶名、密碼參數。

vim /usr/local/zabbix/etc/zabbix_server.conf
DBHost=192.168.229.131
DBName= zabbix
DBUser=zabbixuser
DBPassword=zabbixpassword
#後面的供參考
StartPollers=30                     #開啓多線程數,通常不要超過30個
StartTrappers=20                        #trapper線程數
StartPingers=10                         #fping線程數
StartDiscoverers=120            
MaxHousekeeperDelete=5000       
CacheSize=1024M                         #用來保存監控數據的緩存數,根據監控主機的數量適當調整
StartDBSyncers=8                        #數據庫同步時間
HistoryCacheSize=1024M          
TrendCacheSize=128M                     #總趨勢緩存大小
HistoryTextCacheSize=512M
AlertScriptsPath=/etc/zabbix/alertscripts
LogSlowQueries=1000


5.配置apache文件,定義訪問zabbix的主機

vim /etc/httpd/conf/httpd.conf
ServerName 192.168.229.131
<VirtualHost *:80>
 DocumentRoot "/var/www/html"
 ServerName 192.168.229.131
</VirtualHost>


6.啓動apache服務跟zabbix服務

chkconfig httpd on #設置開機啓動httpd服務
service httpd start #啓動httpd服務

此時查看並確認服務(主要是httpd,mysqld, zabbix_server)啓動狀況:

[root@localhost html]# netstat -plunt | grep LISTEN
tcp        0      0 0.0.0.0:22       0.0.0.0:*   LISTEN     1623/sshd          
tcp        0      0 127.0.0.1:631    0.0.0.0:*   LISTEN     497/cupsd         
tcp        0      0 127.0.0.1:25     0.0.0.0:*   LISTEN     705/master        
tcp        0      0 0.0.0.0:10050    0.0.0.0:*   LISTEN     63120/zabbix_agentd
tcp        0      0 127.0.0.1:10051  0.0.0.0:*   LISTEN     63499/zabbix_server
tcp        0      0 0.0.0.0:3306     0.0.0.0:*   LISTEN     3517/mysqld       
tcp        0      0 :::80            :::*        LISTEN     63459/httpd        
tcp        0      0 :::22            :::*        LISTEN     1623/sshd          
tcp        0      0 ::1:631          :::*        LISTEN     1497/cupsd         
tcp        0      0 ::1:25           :::*        LISTEN     1705/master


7.訪問安裝界面並根據提示逐步完成安裝

7.1訪問網站並初始化

在瀏覽器中輸入:http://192.168.229.131/zabbix/ ,而後根據網頁提示一步一步往下進行。 

注意如下常見錯誤及解決: 

當遇到配置/var/www/html/zabbix/conf/zabbix.conf.php失敗的狀況,以下圖:

解決方法:

根據提示下載配置文件zabbix.conf.php,並拷貝到/var/www/html/zabbix/conf/目錄下,並給zabbixuser受權,以後點擊網頁上的重試便可。

[root@cloudstack conf]# cp /home/centos6/Desktop/zabbix.conf.php /var/www/html/zabbix/conf/
[root@cloudstack conf]# chown zabbixuser:zabbixuser zabbix.conf.php

 


7.2登陸監控器主界面

一切準備完畢後,進入登錄界面,初始的用戶名是admin和密碼是zabbix,以後會進入主界面

 


注意如下常見錯誤及解決:

1.在zabbix主界面遇到如下報錯:

date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Los_Angeles' for 'PST/-8.0/no DST' instead [dashboard.php:130

解決方法:

第1

[root@cloudstack init.d]# vi /etc/php.ini
配置date.timezone = Aisa/Shanghai

第2

[root@cloudstack init.d]# vi /var/www/html/zabbix/include/page_header.php
在最前邊添加ini_set('date.timezone','Asia/Shanghai');


2.在zabbix主界面遇到報錯:server is not running

解決方法:

1.先看日誌狀況

vi /tmp/zabbix_server.log

2. 查看防火牆設置狀況

3.參考http://my.oschina.net/jincon/blog/269870,能夠其中一個函數被禁用致使的問題,解決:

vi /etc/php.ini 
將其中disable_function=註釋掉便可。



8. Zabbix的簡單試用

8.1配置和添加host

8.2其餘使用

更多使用方法介紹,請參考官方使用手冊https://www.zabbix.com/documentation/2.4/manual/quickstart/login .

相關文章
相關標籤/搜索