1.web方案
web scenario:web監控方案,web場景;
web scenarios指的是監控指定的web站點的資源下載下傳及頁面響應時間等資料名額;
(1)建立web監控需要先定義一個web scenario(方案):
一個web方案包括一個或多個HTTP請求或步驟(steps)
每次監控都是按照預先定義的步驟的順序執行;
(2)通過web監控方案可以擷取到下列資訊:
整個web方案中所有步驟的速度和響應時間,以及平均下載下傳速度和平均響應時間;
失敗的步驟号
失敗的報錯資訊
(3)在設定web方案中的具體步驟時,可以按需調用此步驟的下載下傳速度和響應時間,以及響應狀态碼;
(4)Zabbix可以檢測擷取到HTML頁面中是否包含預設的字元串資訊,也可以實作模拟浏覽器完成登入,身份驗證和頁面點選的功能;
(5)在建立完成一個步驟以後,Zabbix會自動在已經選擇好的application中添加若幹個items,這些items可以用于建立觸發器及定義報警條件;
基于之前建立的nginxweb建立web,點選Hosts裡面nginxweb後面的web,點選Create web scenario
在Steps添加相關内容
建立完成後,檢視latest data,多了六項内容
2.Zabbix的主動/被動檢測
被動檢測:相對于agent而言,agent接口,Zabbix server向Zabbix agent請求擷取配置的各items相關的資料,agent負責接收請求、擷取資料并響應給Zabbix server
主動檢測:相對于agent而言,agent(active)接口,Zabbix agent向Zabbix server請求與自己相關的items的配置,主動地将監控資料發送給Zabbix server;
配置主動檢測,在agent端需要的基本配置:
ServerActive=Zabbix_server,Zabbix_proxy
Hostname=Local_hostname
在agent端需要的基本配置
##### Active checks related,在該配置段中配置一下内容
ServerActive=172.16.1.2
Hostname=zrs2.zrs.com
還要在server端配置一下内容
[root@zrs1 ~]# vim /etc/hosts
172.16.1.4 zrs2.zrs.com zrs2
删除之前的host,建立一個新的host
在這個host上面建立item,preprocessing中改為Change per second
檢視,因為有之前建立的的模版,是以直接加進目前host中,為5個item和2個application,可以看到已經監控成功。
3.基于snmp協定被動監控
什麼是SNMP
SNMP:“簡單網絡管理協定”,用于網絡管理的協定。SNMP用于網絡裝置的管理。SNMP的工作方式:管理者需要向裝置擷取資料,是以SNMP提供了“讀”操作;管理者需要向裝置執行設定操作,是以SNMP提供了“寫”操作;裝置需要在重要狀況改變的時候,向管理者通報事件的發生,是以SNMP提供了“Trap”操作。
監聽端口
161/udp
162/udp
CentOS 6/7:支援SNMP協定的方法:
net-snmp,net-snmp-utils
配置檔案:
/etc/snmp/snmpd.conf
啟動服務:
systemctl start snmpd.service
測試工具:
snmpget -v 2c -c public HOST OID
snmpwalk -v 2c -c public HOST OID
在被管理的主機上,關閉zabbix-agent服務
[root@zrs2 ~]# systemctl stop zabbix-agent.service
在監控主機和被監控主機上都下載下傳snmp服務
yum -y install net-snmp net-snmp-utils
在被監控的主機上啟動服務
[root@zrs2 ~]# systemctl start snmpd.service
在監控主機上測試
[root@zrs1 ~]# snmpget -v 2c -c public 172.16.1.4 system.sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Linux zrs2.zrs.com 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64
删除之前的host,建立新的基于snmp的host,還用原來的name
建立item,監控網絡流量,snmp可以任意寫一個key,snmp監控在OID上面,preprocessing中改為Change per second
4.Zabbix Proxy
分布式監控的模型之一;
兩種類型:
server-node-agent
server-proxy-agent(zabbix 3.0+)
安裝和配置Zabbix proxy:
完成代理功能:
zabbix-proxy-mysql zabbix-get
實作将采集的資料傳回給server:
zabbix-sender
想要監控proxy主機:
zabbix-agent
打開一台新的虛拟機172.16.1.5,安裝zabbix-proxy-mysql zabbix-get zabbix-sender zabbix-agent作為反代主機
[root@zrs4 ~]# hostname
zrs4.zrs.com
配置檔案
<code>[root@zrs4 ~]</code><code># egrep -v '^$|#' /etc/zabbix/zabbix_proxy.conf </code>
<code>ProxyMode=0</code>
<code>Server=172.16.1.2</code>
<code>Hostname=zrs4.zrs.com</code>
<code>LogFile=</code><code>/var/log/zabbix/zabbix_proxy</code><code>.log</code>
<code>LogFileSize=0</code>
<code>PidFile=</code><code>/var/run/zabbix/zabbix_proxy</code><code>.pid</code>
<code>SocketDir=</code><code>/var/run/zabbix</code>
<code>DBHost=172.16.1.5</code>
<code>DBName=zbxdb</code>
<code>DBUser=zabbixuser</code>
<code>DBPassword=zabbixpass</code>
<code>ConfigFrequency=60</code>
<code>DataSenderFrequency=5</code>
<code>StartPollers=5</code>
<code>StartPollersUnreachable=1</code>
<code>StartTrappers=5</code>
<code>StartPingers=1</code>
<code>StartDiscoverers=1</code>
<code>StartHTTPPollers=1</code>
<code>SNMPTrapperFile=</code><code>/var/log/snmptrap/snmptrap</code><code>.log</code>
<code>Timeout=4</code>
<code>ExternalScripts=</code><code>/usr/lib/zabbix/externalscripts</code>
<code>LogSlowQueries=3000</code>
建立資料庫
<code>[root@zrs4 ~]</code><code># systemctl start mariadb</code>
<code>[root@zrs4 ~]</code><code># mysql</code>
<code>MariaDB [(none)]> create database zbxdb charset </code><code>'utf8'</code><code>;</code>
<code>MariaDB [(none)]> use zbxdb;</code>
<code>MariaDB [(none)]> grant all on zbxdb.* to zabbixuser@</code><code>'172.16.%.%'</code> <code>identified by </code><code>'zabbixpass'</code><code>;</code>
導入資料庫
<code>[root@zrs4 ~]</code><code># cp /usr/share/doc/zabbix-proxy-mysql-3.4.4/schema.sql.gz /root</code>
<code>[root@zrs4 ~]</code><code># ls</code>
<code>anaconda-ks.cfg initial-setup-ks.cfg schema.sql.gz</code>
<code>[root@zrs4 ~]</code><code># gunzip schema.sql.gz </code>
<code>[root@zrs4 ~]</code><code># mysql -uzabbixuser -h172.16.1.5 -p zbxdb < schema.sql </code>
<code>Enter password:</code>
啟動服務
systemctl start zabbix-proxy.service
在Administration的Proxies中建立反代
打開一台新的虛拟機172.16.1.10,安裝 zabbix-sender zabbix-agent,作為反代伺服器的後端
[root@zrs5 ~]# hostname
zrs5.zrs.com
<code>[root@zrs5 ~]</code><code># egrep -v '^$|#' /etc/zabbix/zabbix_agentd.conf </code>
<code>PidFile=</code><code>/var/run/zabbix/zabbix_agentd</code><code>.pid</code>
<code>LogFile=</code><code>/var/log/zabbix/zabbix_agentd</code><code>.log</code>
<code>EnableRemoteCommands=1</code>
<code>Server=172.16.1.5</code>
<code>ListenPort=10050</code>
<code> </code><code>StartAgents=3</code>
<code>ServerActive=12.16.1.5</code>
<code>Hostname=zrs5.zrs.com</code>
<code>Include=</code><code>/etc/zabbix/zabbix_agentd</code><code>.d/</code>
建立發現規則
再建立動作,就可以通過反代自動添加主機了。
檢視Hosts,發現這個主機已經成功添加進來了,給監控到的這個主機建立一個item監控項,preprocessing中改為Change per second
然後檢視Hosts,這個主機的綠燈也亮了。
檢視這個主機的Latest data,正常監控了。
本文轉自 Runs_ 51CTO部落格,原文連結:http://blog.51cto.com/12667170/2045533,如需轉載請自行聯系原作者