zabbix開源監控系列一(安裝及web端安裝)


隨着網站的上線,對網站的一套監控體系也陸續完成,主要用cacti對服務器的網卡流量、CPU  Usage 、Load Average、 Memory Usage做了監控,也是用了PERCONA 提供的模板對mysql的相關監控點做了監控,可以直觀的在監控圖上顯示各個監控點的狀態,具體實現方式博文會有講解。

考慮到對業務監控的需求,又搭建了zabbix,主要對各個服務的process NUM,port,free disk space,host status,processor load ,及web頁面,主要還是業務監控的添加,通過開發提供的需求,閥值或需要獲得狀態值,通過自定義腳本來實現對zabbix中無默認key值得監控。

關於zabbix的文章魚龍混雜,本系列將從zabbix的安裝到監控添加,郵件及短信報警,mysql模板添加,zabbix默認key及自定義key的演示,及web頁面的監控等。但也僅僅是簡單使用zabbix,zabbix相當強大,想用好用活zabbix還需仔細研究。

1, zabbix的安裝 

此處簡單說明  zabbix不像cacti只需要安裝服務端,就可以直接對各個server進行監控,(cacti是通過snmp協議獲取數據,然後使用rrdtool存儲和更新,及snmp和rrdtool是cacti的關鍵所在,當然也要mysql或者其他數據庫的存儲的支持)。zabbix則是通過client端獲取host信息,server端定時(item中配置時間)通過定義的key值獲取client端狀態值來進行繪圖或者監控。

安裝,依然通過編譯,版本2.2.3 下載見附件

yum -y install curl curl-devel net-snmp net-snmp-devel  net-snmp-libs net-snmp-utils perl-DBI 

創建用戶賬號(server,agent)

# groupadd zabbix

# useradd -g zabbix zabbix

# usermod -s /sbin/nologin zabbix

創建zabbix數據庫並導入zabbix數據庫數據(server)

# mysql -u root -p123456

> grant all on zabbix.* to zabbix@localhost identified by 'zabbixpwd';

> create database zabbix;

# tar zxvf zabbix-2.2.3.tar.gz

# cd zabbix-2.2.3

# mysql -uzabbix -pzabbixpwd zabbix < database/mysql/schema.sql

# mysql -uzabbix -pzabbixpwd zabbix < database/mysql/p_w_picpaths.sql

# mysql -uzabbix -pzabbixpwd zabbix < database/mysql/data.sql

編譯 server 端

# ./configure --prefix=/usr/local/zabbix   --enable-server --enable-agent --with-mysql --enable-ipv6 --with-net-snmp --with-libcurl

# make install

編譯client 端

./configure --prefix=/usr/local/zabbix  --enable-agent  即可


server端配置文件配置 172.16.16.201

vi /usr/local/etc/zabbix_server.conf

修改如下內容並刪除其他未修改參數條目:

-------------

LogFile=/var/log/zabbix_server.log

DBHost=localhost

DBName=zabbix

DBUser=zabbix

DBPassword=zabbixpwd


 vi /usr/local/etc/zabbix_agentd.conf

修改如下內容並刪除其他未修改參數條目:

-------------

LogFile=/var/log/zabbix_agentd.log

Server=127.0.0.1,172.16.16.201 寫上本機ip 

UnsafeUserParameters=1 打開可以自定義key值選項。


agent: (172.16.8.1)需要監控的Ip,都要裝,都要配置。

# vi /usr/local/etc/zabbix_agentd.conf

修改如下內容並刪除其他未修改參數條目:

-------------

LogFile=/var/log/zabbix_agentd.log

Server=172.16.16.201 指向server端IP

UnsafeUserParameters=1

-------------

# touch /var/log/zabbix_server.log

# chmod 777 /var/log/zabbix_server.log

# touch /var/log/zabbix_agentd.log

# chmod 777 /var/log/zabbix_agentd.log

啓動進程

/usr/local/zabbix/sbin/zabbix_server

/usr/local/zabbix/sbin/zabbix_agentd  服務器端講打開10050 10051 端口 客戶端只打開10050,zabbix之間通信也是使用10050端口,可以使用telnet進行檢測,注意selinux,iptables,要做好策略或者進行關閉。

安裝web端

zabbix代碼是php開發,需要安裝php相關進行支持

php  php-bcmath  php-cli  php-common  php-gd  php-ldap php-mbstring php-mysql php-odbc php-pdo php-pear php-xml php-xmlrpc 其中好像 php-bcmath 跟php-mbstring 我yum源裏沒有,單獨下載的。

把解壓出來的frontends/php 下面的php源代碼文件拷貝到web服務器html文件目錄下面,我用的apache,由於只需要提供web環境,也是yum安裝的apache並把/php目錄下的所有文件capy到了/var/www/html/zabbix下,根據自己情況選擇吧。

輸入url http://172.16.16.201/zabbix/,就會自動跳轉

具體web安裝,請參照其他博文,推薦http://showerlee.blog.51cto.com/2047005/1189484

修改php.ini 文件 解除相關錯誤

注:我在第一次安裝過程中出新php-gd的一直報錯,手動編譯安裝的gd庫,才解決問題。

需修改該PHP文件配置文件參數:

# vi /usr/local/php5/lib/php.ini

查找如下參數並修改爲:

----------------

post_max_size = 16M

max_execution_time = 300

max_input_time = 300

----------------

加載PHP下gettext模塊

# cd /root/php-5.4.13/ext/gettext

# /usr/local/php5/bin/phpize

# ./configure --with-php-config=/usr/local/php5/bin/php-config

# make && make install

加載該模塊

# vi /usr/local/php5/lib/php.ini

添加如下行:

extension = "/usr/local/php5/lib/php/extensions/no-debug-zts-20100525/gettext.so"

重啓apache服務

# service httpd restart

根據每一部指示,填寫用戶名密碼,即完成安裝,

wKioL1OZSWWQVfTYAAO59ZD7RIA325.jpg

wKiom1OZSZSQN6RwAAN53-zaz3c755.jpg

zabbix默認用戶 admin 密碼 zabbix 。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章