關於zabbix介紹可能就不用再說了,處處都是文章,這裏以前使用的時Nagios,這裏開始嘗試接觸zabbix,由於幾個重要原則選擇做爲將來可能替換掉線上的監控系統,因此這邊理由以下網友的itnihao的文字中摘抄了以下:php
一、分佈式監控,天生具備的功能,適合於構建分佈式監控系統,具備node,proxy2種分佈式模式
二、自動化功能,自動發現,自動註冊主機,自動添加模板,自動添加分組,自動化運維工具搭配,puppet+zabbix,或者saltstack+zabbix,那是如魚得水
三、自定義監控比較方便,自定義監控項很是簡單,支持變量,支持low level discovery
四、提供api功能,二次開發方便,你能夠選用zabbix來進行二次深度開發,結合cmdb資產管理系統,業務管理系統,從而使你的自動化運維繫統達到新的高度。
五、all in one,報警,圖形所有整合再一塊兒,不用整合一堆插件,正是我不太喜歡Nagios的緣故,每每在各個插件的配置中損失了很多時間
六、其餘理由在使用的過程當中慢慢發掘吧。。。
這東西官網的文檔早就是現成的了,這裏加上本身的話整理以下java
這東西官網的文檔早就是現成的了,這裏加上本身的話整理以下node
zabbix server:負責接收agent發送的報告信息的核心組件,全部配置、統計數據以及操做數據均有其組織進行
database storage:專門用於存儲全部的配置信息,以及zabbix收集的數據
web interface:zabbix的GUI接口,一般與server運行在同一臺主機上
proxy:可選組件,經常使用於分佈監控環境中,代理server收集部分被監控端的監控數據並統一發往server端
agent:部署在被監控主機上,負責收集本地數據併發往server端或者proxy端
主機(host):要監控的網絡設備,能夠由IP或者DNS名稱指定
主機組(host group):主機的邏輯容器,能夠包含主機和模板,但同一個組內的主機和模板不能互相連接
監控項(item):一個特定指標的相關數據,這些數據來自於被監控對象,每一個item都由「key」進行標識
觸發器(trigger):一個表達式,用於評估某監控對象的某特定item內所接收到的數據是否在合理範圍內,即閥值
事件(event):即發生的一個值得關注的事情,例如觸發器的狀態轉變,新的agent或從新上線的agent的自動註冊等
動做(action):指對於特定事件事先定義的處理方法,經過包含操做(如發送通知)和條件(什麼時候執行操做)
報警升級(escalation):發送警報或者執行遠程命令的自定義方法,如每隔5分鐘發送一次報警,共發送5次等。
媒介(media):發送手段或者渠道,如email,jabber或者SMS等
通知(notification):經過選定的媒介向用戶發送的有關某事件的信息
zabbix.x86_64 //核心包,server端或者agent端都須要
zabbix-agent.x86_64 //agent端包
zabbix-java-gateway.x86_64
zabbix-proxy.x86_64
zabbix-proxy-mysql.x86_64
zabbix-proxy-pgsql.x86_64
zabbix-proxy-sqlite3.x86_64
zabbix-sender.x86_64 //agent端主動發送報文至server端
zabbix-server.x86_64 //server端
zabbix-server-mysql.x86_64 //server端鏈接mysql工具
zabbix-server-pgsql.x86_64 //server端連接pgsql工具
zabbix-web.noarch //web界面
zabbix-web-japanese.noarch
zabbix-web-mysql.noarch //web端鏈接mysql工具
zabbix-web-pgsql.noarch //web端連接pgsql工具
因此mysql
server須要安裝:zabbix、zabbix-server、zabbix-server-mysql,zabbix-get
agent須要安裝:zabbix、zabbix-agent、zabbix-sender
web端:zabbix-web、zabbix-web-mysql
Distribution : CentOS 6.5 minimal
zabbix version : 2.2
Init system : sysvinit
Database : MySQL Additional
Notes : In order to get a proper Ruby setup we build it from source
1. 關閉selinx 2. 時間同步
-Install the base operating system (CentOS 6.5 Minimal) and Packages / Dependencies
-Database
-zabbix-server
-zabbix-agent
rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix zabbix-server zabbix-web zabbix-get
/etc/init.d/mysqld start
mysql_secure_installation
mysql -uroot
mysql> create database zabbix character set utf8;
mysql> grant all privileges on zabbix.* to zabbix@localhost identified by 'zabbix';
mysql> exit
cd /usr/share/doc/zabbix-server-mysql-2.2.2/create
mysql -uroot zabbix < schema.sql
mysql -uroot zabbix < images.sql
mysql -uroot zabbix < data.sql
#Edit database configuration in zabbix_server.conf
#vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=zabbix
#Start Zabbix server process.
/etc/init.d/zabbix-server start
chkconfig zabbix-server on
#zabbix server監聽端口10051
#Apache configuration file for Zabbix frontend is located in /etc/httpd/conf.d/zabbix.conf. Some PHP settings are alreadyconfigured.
#vim /etc/httpd/conf.d/zabbix.conf
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
#It's necessary to uncomment the 「date.timezone」 setting and set the right timezone for you. After changing the configuration file restart the apache web server.
php_value date.timezone Asia/Shanghai
具體查看時區的話能夠查看這個地址 http://www.php.net/manual/en/timezones.asia.phpios
/etc/init.d/httpd restart
Zabbix frontend is available at http://zabbix-frontend-hostname/zabbix in the browser.
Default username/password is Admin/zabbix.
rpm -ivh http://repo.zabbix.com/zabbix/2.2/rhel/6/x86_64/zabbix-release-2.2-1.el6.noarch.rpm
yum install -y zabbix-agent zabbix zabbix-sender
sed -i 's#^\(Server=\).*#\1server ip#' /etc/zabbix/zabbix_agentd.conf sed -i 's#^\(Hostname=\).*#\1server name#' /etc/zabbix/zabbix_agentd.conf /etc/init.d/zabbix-agent start #zabbix agent監聽端口10050