zabbix是一個基於web界面來監視各類網絡參數,保證服務器系統的安全運營的開源軟件;他還能夠提供靈活的通知機制以讓系統管理員快速定位/解決存在的各類問題。下面咱們來對它進行一些簡單的配置php
主機環境:rhel6.5 selinux and iptables disabledmysql
參考文檔:www.zabbix.comlinux
實驗主機:ios
192.168.122.186 server2.example.com(服務端) 192.168.122.74 server3.example.com(客戶端) zabbix所需的lamp環境web
yum install -y httpd php php-mysql mysql-server
在server2主機zabbix所需安裝包:sql
yum install zabbix-2.4.5-1.el6.x86_64.rpm zabbix-agent-2.4.5-1.el6.x86_64.rpm zabbix-server-mysql-2.4.5-1.el6.x86_64.rpm zabbix-web-2.4.5-1.el6.noarch.rpm zabbix-web-mysql-2.4.5-1.el6.noarch.rpm zabbix-server-2.4.5-1.el6.x86_64.rpm
解決依賴性:數據庫
yum install libssh2-1.4.2-2.el6.x86_64.rpm php-bcmath-5.3.3-26.el6.x86_64.rpm php-mbstring-5.3.3-26.el6.x86_64.rpm fping-2.4b2-16.el6.x86_64.rpm iksemel-1.4-2.el6.x86_64.rpm iksemel-utils-1.4-2.el6.x86_64.rpm
啓動mysql並創建zabbix庫和維護本庫的zabbix用戶:apache
mysql -pvim
create database zabbix character set utf8 collate utf8_bin; grant all privileges on zabbix.* to zabbix@locallhost identified by 'redhat';
往zabbix庫中按順序導入數據安全
mysql -uzabbix -predhat zabbix < schema.sql mysql -uzabbix -predhat zabbix < p_w_picpaths.sql mysql -uzabbix -predhat zabbix < data.sql
在zabbix配置文件中更改數據庫信息
vim /etc/zabbix/zabbix_server.conf DBName=zabbix DBUser=zabbix DBSocket=/var/lib/mysql/mysql.sock DBPassword=redhat
更改zabbix網頁配置的時區
vim /etc/httpd/conf.d/zabbix.conf php_value date.timezone Asia/Shanghai
啓動apache
/etc/init.d/httpd start
啓動zabbix服務
/etc/init.d/zabbix-server start
登錄http://server2.exampl.com/zabbix進行配置
確保這裏的一切都是ok的
填寫數據庫信息
接着填寫完服務主機信息就完成了 登錄zabbix的用戶是Admin密碼是zabbix
這就是登錄後的界面了
接下來是添加agent主機了
在server3客戶端主機須要安裝
yum install zabbix-2.4.5-1.el6.x86_64.rpm zabbix-agent-2.4.5-1.el6.x86_64.rpm -y
配置客戶端
vim /etc/zabbix/zabbix_agentd.conf Server=192.168.122.186 ServerActive=192.168.122.186 Hostname=server3.example.com
主機名須要被服務端解析
啓動zabbix-agent
/etc/init.d/zabbix-agent start
在zabbix server上激活客戶端自動註冊功能 點擊 Configuration -> Actions -> Create action(Event source:Auto registration) 按以下配置:
自定義Action名字:
Conditios默認便可
Oper actions以下:
Add host:自動註冊主機添加到 hosts 列表
Add to host groups:自動註冊主機加入 linux servers 組(組名能夠自定義)
Link to templates:自動註冊主機應用模板 Template OS linux
經過Configuration -> Hosts 就能夠看到添加的主機了
以後咱們能夠經過在Configuration -> Templates裏找到想用的模版
將須要此模版的主機加進來如:
在http模版里加入server2
或者點擊 Configuration -> Hosts -> server2.example.com -> Templates 選擇須要的模版
用Zabbix監控server2主機的數據庫 :
zabbix agent 經過/etc/zabbix/zabbixagentd.d/userparametermysql.conf 文件的配置來獲取mysql服務的信息。
經過創建/var/lib/zabbix/.my.cnf文件來告訴zabbix agent 如何登錄mysql
mkdir /var/lib/zabbix vim /var/lib/zabbix/.my.cnf [mysql] host = localhost user = zabbix password = redhat socket = /var/lib/mysql/mysql.sock [mysqladmin] host = localhost user = zabbix password = redhat socket = /var/lib/mysql/mysql.soc /etc/init.d/zabbix-agent restart
最後點擊 Configuration -> Hosts -> server2.example.com -> Templates 添加mysql 模版
在Configuration -> Hosts ->server2.example.com中能夠看到mysql的監控圖形
最後咱們經過onealter來制定zabbix的報警
首先在Onealter下載所需的軟件包 alert-agent-4.1.3.1-linux-x64.tar.gz 在官網添加zabbix應用得到Key
將alert包解壓到zabbix的外部告警目錄
tar zxf alert-agent-4.1.3.1-linux-x64.tar.gz -C /usr/lib/zabbix/alertscripts/ cd /usr/lib/zabbix/alertscripts chown -R zabbix:zabbix alert-agent cp alert-agent/plugin/zabbix-plugin/110monitor /usr/lib/zabbix/alertscripts/chmod +x /usr/lib/zabbix/alertscripts/110monitor
點擊「Administrator」->「Media types」->「Create media type建立告警方式,採用腳本模式script,腳本名爲110monitor 系統會在/usr/lib/zabbix/alertscripts/下查找上面的110monitor指令。
建立用戶110monitor並設置通知媒介點擊「Administrator」->「Users」->「create user「,將110monitor用戶加入到"Zabbix Administrator組媒體類型,添加110monitor。
設置appkey爲發送目標.。
設置全部權限爲"Zabbix Super Admin"全部報警都發送
點擊"Configurationg"->"Actions"->"Create action(Triggers)"建立告警通知策略
測試:
在server2.exmple.com上經過禁用ping測試是否正常通知(要有Template ICMP Ping模塊)
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all 禁ping
以後就能看到報警信息了。