Zabbix配置详解
為什么80%的碼農都做不了架構師?>>> ??
zabbix 配置了解
Hosts
?? ?zabbix中的hosts就是指你想監控的設備,如服務器、工作站、交換機等等。如果你想監控某個主機X的某個變量,你必須先創建一個主機X,然后再給該主機添加監控items。hosts可以被有組織的安排進host group中。
通過zabbix的前端web界面配置hosts:
Configuration->Hosts->Create Host
此頁面中有5個表單:Host、Template、IPMI、Macros、Host inventory。
Host表單中包含了一般的host屬性,先看看hosts表單可以設置哪些屬性:
? ?status ? monitored表示host已經準備好了被監控,not monitored表示host還沒準備好。
Templates表單允許你連接一個templates到該host上面,所有該templates的items、triggers、graphs等等都會得到繼承。點擊add可以鏈接一個templates過來,點擊unlink則會刪除該模版。
Ipmi表單包含一些ipmi的管理屬性,如認證算法、特權級別、用戶名、密碼等。
macros表單 設置一些監控用到的參數
host inventtory表單可以讓你手動的輸入一些host的信息,類似于資產信息
Host groups
通過zabbix的前端web界面設置host group:
Configuration->Host groups->Create host group
該頁面有一個表單:host group
? ?hosts ? ?選擇哪些hosts屬于該group,一個host group可以有0個或者多個hosts
Items
? ? items表示從host中收集哪些數據項,一旦你配置了一個host,你就需要開始監控一些items以獲取真實數據,所有的item都是單獨的個體,你可以把很多items附加到一個templates上面,然后把該templates附加到一個hosts上面。在單個的item中你可以指定哪些數據是你想收集的,例如:一個item key名稱是system.cpu.load,它會收集cpu的負載,一個item key名稱是net.if.in,它會收集進入網卡的信息。你可以給key指定更進一步的參數,就是使用方括號緊跟在key后面,例如:system.cpu.load[avg5],它會收集最近5分鐘的cpu負載。
通過zabbix的前端web界面創建一個item:
#需要在Hosts界面中選擇相應的實例 Configuration->Hosts->items->create item
該頁面包含一個表單:Item
? ?host ? ?可以選擇一個host或者一個templates
? ?name ? ?這個顯示item的名稱,在下面的macros會用到
? ?type ? ?監控客戶端的方式,主要分析zabbix agent和zabbix agent(active)兩種方式
? ?key ? ? item key,支持的item keys可以在單獨的item type中查看,在一個host中key必須是唯一的
? ?host interface ? ?選擇一個host inserface,可以在host level中編輯它
? ?type of information ? ?采集到的數據在數據庫中存儲的格式
? ? ? ? numeric(unsigned) 64位無符號整型
? ? ? ??numeric(float) 浮點數
? ? ? ? character ?字符型
? ? ? ? log ?log文件類型
? ? ? ??text ?text類型沒有限制大小
? ?date type ? ?用在整型的items中,用來指定確切的數據類型
? ? ? ? boolean ?0/1
? ? ? ??octal 八進制
? ? ? ? decimal 十進制
? ? ? ??hexadecimal 十六進制
? ?units ? ?如果設置了units,zabbix會對收到的數據進行處理,在顯示數據時會使用units后綴,默認的原始數據是除以1000不是1024,如果使用B(byte)units,則會使用1024進行分割,如果設置units為B,zabbix會這樣顯示:1 1B,1024 1KB,1536 1.5KB。如果是unmeric(unsigned)的則可以使用unixtime轉化為時間類型,uptime則會轉化為可讀的時間
? ?use custom multiplier ? ?如果使用了該參數,則對于收到的數據會乘以一個整型或者浮點數,可以用這個選項把KB MBps轉化為B Bps類型
? ?update interval ? ?多少秒刷新一次該item
? ?flexible intervals ? ?針對update interval你可以設置例外的情況,可以設置在某個時間段每隔幾秒刷新一次,而在其余時間則按照update的設置來刷新,如果有多個flexible設置,則以刷新時間最小的為準。
? ?keep history ? 在數據庫中保存多少天的數據,過期的數據會被清除,
? ?keep trends ? ?保存一些聚合的數據在數據庫中的天數,過期數據會被清除,
? ?store value ? ?
? ? ? ? as is 不進行預處理
? ? ? ? delta(speed per second) ?評估這些數據(value-prev_value)/(time-prev_time)
? ? ? ? delta(simple change) ?評估這些數據(value-prev_value)
? ?show value ? ?沒折騰明白...
? ?log time format ? ?log的時間格式
? ?new application ? ?設置該item屬于那個新的application中
? ?applications ? ?把該item連接到已存在的application中,可以是一個或者多個application中
? ?Populates host inventory field ? 你可以選擇一個host信息域存放該item的值,如果設置了automatic inventory population,則他會自動工作,未明白???
? ?description ? ?輸入該item的描述
? ?status ? ?
? ? ? ? ?enable ? ?該item會被執行
? ? ? ? ?disable ? ?不會被執行
? ? ? ? ?not supportes ? ?不支持該item
item key是什么?
https://www.zabbix.com/documentation/2.0/manual/config/items/item/key
Item types
? ? ? ?item types是zabbix提供的各種檢查方式,下面主要看zabbix agent類型,這種類型主要通過zabbix agent來收集數據,檢查又分為主動檢查和被動檢查,item key是需要分不同平臺的,可以通過下面連接查看大部分平臺所支持的item key:
https://www.zabbix.com/documentation/2.0/manual/appendix/items/supported_by_platform
對于win32有一些特殊的item key:
https://www.zabbix.com/documentation/2.0/manual/config/items/itemtypes/zabbix_agent/win_keys
History and trends
? ? History and trends是兩種保存zabbix收集來的數據的方法,history保存每一個收集來的數據,trends保存一些基于小時的平均、最大、最小值信息。
Mass update ?
? ? 如果你有時候需要一次修改一個item的多個屬性值,不用打開每一個單獨的item去修改,可以使用mass update,可以選擇多個items,然后選擇mass update
Value mapping
? ? 為了使收到的數據更為人們可讀,我們可以使用value maps,它包含了numeric valus到string的映射,value map可以用在zabbix的前端和后端,以及例如email SMS的消息提醒上面,例如0可以表示false,1可以表示true,設置value map:
Administration->General->value mapping->create value map 該頁面有一個表單:Value mapping
? ?name 一個唯一的名稱。
? ?mapping ?中設置各個獨立的mappings,設置好value mapping后可以在item的配置界面的show value選項中選擇
Applications
? ? applications 用在本地group的group items中,在使用applications之前,你必須創建一個applications,并且link items過去。創建applications:
Configuration->Hosts->Applications->Create application Configuration->Templates->Applications->Create application 也可以在創建item的時候直接創建application
Queue
? ? queue顯示items還剩幾分鐘刷新,queue只是數據庫中數據的邏輯表現,統計很好的顯示了zabbix server的性能。 Administration-Queue可以查看,如果有delay的可以通過右上角的details查看具體信息。
Triggers?
? ? Triggers是一個本地的邏輯表達式,用來評估items收集到的數據并表示當前系統的狀態。當items收集數據的時候,它會非常不切實際的遵循這些數據直到碰到一個報警狀態,這個評估數據的任務就由trigger來處理。
? ? 觸發器允許設置一個閾值來決定什么數據是可以接收的,如果進入的數據超過可接受的狀態,觸發器則會被觸發。觸發器有兩種狀態OK/PROBLEM,如果該值是觸發器表達式的一部分,在zabbix server每次收到新的值,觸發器的狀態會被重復計算。配置trigger:
Configuration->Hosts->Triggers->Create trigger
該頁面包含了兩個表單:trigger、dependencies
trigger表單屬性:
? ?name ?trigger name,這個名稱可能包含macros,$1..$9可以被用來關聯表達式的常量。
? ?expression ?邏輯表達式用來收集觸發器的狀態
? ?Multiple PROBLEM events generation ? 通過設置該選項,你可以在觸發器產生problem的時候觸發一個事件
? ?comments ? 關于該觸發器的信息
? ?url ? ?如果不為空,則該url被用到screen
? ?serverity ? 設置觸發器的嚴重程度
? ?enabled ? 選擇激活該觸發器
Trigger experssion
? ? 觸發器表達式在觸發器中是很靈活的,可以組合出各種復雜的表達式。簡單的表達式模式如下:{<server>:<key>.<function>(<parameter>)}<operator><constant>
function查看:
https://www.zabbix.com/documentation/2.0/manual/appendix/triggers/functions
parameter 許多數值型函數接收參數,有些函數會返回多個值,可以通過在參數前加#,來獲取特定的值。
Trigger severity names and colours是可以修改的:
Administration->General->Trigger severities
Events
? ? events在zabbix有三個地方可以用到:triggers、discovery、auto registration。events可以是基于時間戳的,也可以是基于actions的,例如郵件報警。關于events的詳細信息可以在 Monitoring-Events中查看,可以通過點擊時間查看更詳細的信息。
Visualisation
? ? Graphs內建有簡單的simple graphs和復雜的custom graphs兩種形式。
? ? Simple graphs提供items收集到的數據的可視化的數據圖,在simple graphs中不需要用戶進行配置,他們都是由zabbix自動生成,可以通過Monitoring->Latest data進行查看,點擊具體的item的graph link,就會顯示數據圖,在圖形上面有滑動按鈕可以選擇查看那個時間的數據,還有右邊可以設置時間段來顯示數據,左邊可以設置圖形中顯示幾個小時的數據量。
? ? Custom graphs 提供一些用戶定制的圖形。Simple graphs可以用來查看單個item的數據,它沒有提供用戶定制的功能,如果你想改變圖形的風格、線條顯示的樣式、或者想顯示多個items的數據,這時就需要costom graphs,需要手動配置,可以創建針對一個主機、多個主機、或者一個templates的圖形。創建custom graphs:
graph表單:
? ?name ? ?數據圖的唯一名稱
? ?width ? ?數據圖的像素寬度
? ?height ? 數據圖的像素高度
? ?graph type ? ?圖像類型,normal 正常圖形,數據以線條顯示。stacked 疊加式圖形。pie 餅狀圖形。exploded 分解的餅狀圖形。
? ?show lengend ? ?顯示該圖利的說明
? ?show working time ? ?如果選擇該選項,則未工作的時間段會以灰色背景顯示,該選項不支持pie和exploded
? ?show triggers ? ?如果選擇該項,觸發器會以紅線顯示,不支持pie和exploded
? ?precentile line(left) ? ?顯示左邊Y軸的百分比,
? ?precentile line(right) ? ?顯示右邊Y軸的百分比
? ?Y axis MIN value ? ?Y軸的類型,calculated Y軸的值會自動計算,fixed 固定Y軸的最大值和最小值,不支持pie和exploded
? ?Y axis MAX value
? ?items ? ?顯示哪個items的數據圖,點擊add按鈕增加items,graphs items可以配置以下屬性:
? ? ? name ? ?item的名稱,會被顯示出來
? ? ? function ? ?顯示哪些值,有all、min、max、avg
? ? ? draw style ? ?回吐的樣式,只支持normal graphs
? ? ? Y axis side ? ?元素值顯示在那個Y軸旁邊
? ? ? color ? ?顏色
Network maps
? ? ? 用來創建網絡拓撲圖,在創建網絡map之前,你必須先創建一個map,它包含了一些基礎的元素,然后才能制作maps。你可以用一個hosts、host group、trigger、image來填充一個map。icons代表map的元素,你可以定義一些icons顯示的信息,出問題的時候顯示的內容,已有的maps可以在Monitoring->Maps上查看,創建一個map:
Configuration->Maps->create maps
該頁面只包含一個表單:map
map屬性如下:
? ?name ? ?map的名稱
? ?width ? ?map像素的寬度
? ?height ? ?map像素的高度
? ?background image ? ?背景圖,no image 沒有背景圖,image 可以選擇一個背景圖
? ?automatic icon mapping ? ????
? ?icon highlight ? ?圖標高亮,如果element有個主動的trigger,則可以使用高亮圖標表示,
? ?mark elements on trigger status ? ?
? ?expand single problem ? ?如果一個map元素有一個問題,這個選項控制是否顯示該問題的名稱,如果選擇,problem的名稱會被使用
? ?advanced labels ? ?可以讓你定義一個分開的標題為分開的element type
? ?icon label type ? ?icons的標題類型,label icon的label,ip address ip地址,element name element的名稱,status only 狀態,nothing 不顯示labels
? ?icon label location ? ?label的位置,bottom 下方,left 左邊,right 右邊,top 頂部
? ?problem display ? ?顯示故障問題,full 所有的問題都會被顯示,separated 未被確認的問題占左右問題的比重,unacknowledged only 只顯示未確認的問題
? ?urls ? ?一個很NB的功能
Add elements
? ? 點擊建立好的初始map圖,進入該map的配置界面,點擊icon的+則會產生一個icon,新的icon會顯示在map的左上方,你可以隨意的拖動icon,grid的shown會顯示map背景的方格子,點擊shown則會變成hidden,則不顯示方格子,on則表示elements總是會和方格子對齊,如果你想隨意拖動,則點擊on則會變成off。
? ? 生成新的elements后,你可以給該icon設置新的名稱,點擊該element即可,一個表單(edit map element)則會顯示出來,你可以設置關于該element的一些信息,如類型、名稱、不同的icon圖標等等,因為默認生成的都是同一個圖標,edit map element包含的屬性如下:
? ?type ? element的類型,host 代表該機器的所有的trigger的狀態,map代表map中所有element的狀態,trigger代表單獨的一個trigger的狀態,image只代表一個icon,host group代表一個group中所有hosts的triggers狀態
? ?label ? ?icon的label,可以是任意字符串
? ?label location ? ?label的位置,也有default、bottom、left、right、top可以選擇
? ?Host 選擇一個host,如果element類型是host
? ?Map ?選擇一個map,如果element類型是map
? ?Trigger ?選擇一個trigger, 如果element類型是Trigger
? ?Host group ?選擇一個host group,如果element的類型是Host group
? ?Automatic icon selection ?使用map默認的圖標
? ?icons ? ?自己決定使用那個icon
? ?coordinates ? ?X/Y coordinate of the map element
? ?urls
Select elements
? ? 選擇一個element之后,可以按住ctrl再選擇其他elements,或者通過鼠標劃區來選擇區內的elements,一旦選擇多個elements之后,所有的elements屬性都會顯示在一個表單中,這時你也可以修改他們的屬性。
Link elements
? ? 一旦你在maps中有多個elements,你就可以開始連接它們,先選中一個elements,然后按住ctrl再選擇一個elements,然后點擊link的+,這時候連接就被建立,有一個簡單的表單會出來,你可以針對該連接進行簡單的設置,主要有以下屬性:
? ?label ? ?label會顯示在link上面? ?type(ok) ? ?line 單線,bold line 粗線,dot 點線,dashed line 虛線
? ?color(ok) ? ?默認的線條顏色
? ?Link indicators ? ?連接一個triggers到link上,如果trigger的狀態有變化,則link的樣式按照指定的顯示,也是就線條樣式及顏色
Screens
? ? 在zabbix中可以用screens把各種原始數據快速的顯示在一副screen上,從本質上說screen是一個table,里面包含了多副圖,你可以設置一個tables中有多少cells,每個cell顯示什么樣的elements,以下的elements可以被顯示:simple graphs、custom graphs、maps、other screens、system status......很多。已有的screens可以在Monitoring->Screens中查看
Creat screens
? ? 先創建screens中的tables包含多少cells,然后再給cells中添加elements。創建screens:
Configuration->Screens->Create Screen 該頁面有一個表單:screen
? ?定義screens包含幾行幾列,screens都包含一個唯一的名稱
Add elements
? ? 點擊新創建的screens,你會看到一些名為change的links,點擊+標識則會增加一行/一列cell,點擊-表示則會移除一行/一列cell
? ? 點擊change則會打開一個表單,讓你選擇在每個cell中顯示的內容,在已有的screens中點擊change則會修改該cell,修改表單包含以下屬性:
? ?resource ? ?顯示在cell中的信息,可以是多種類型的,不同類型的資源,下面會有一些各自獨有的屬性。? ?graph name ? ?
? ?width
? ?height
? ?horizontal align ? ?水平對齊
? ?vertical align ? ?垂直對齊
? ?column span ? ?列間距
? ?row span ? ?行間距
? ?dynamic item ? ?有些類型的資源會有這個屬性,具體的含義如下:如果你設置了該屬性,一旦你從Monitoring->Screens查看時,你就會發現在右上角你有一個額外的下拉菜單讓你選擇host,因此,你可以有一個screens,一些elements顯示相同的信息,其他的elements顯示的信息依賴域你所選擇的host
Templates
? ? 一個templates可以設置一個實體,讓這個實體方便的應用到一組hosts上面,這個實體可以是items、triggers、graphs、applications、screens、low-level。
當一個templates連接到一個host,則該templates包含的所有實體都會添加到該host,templates經常被用到一組含有相同服務或者應用的機器上。配置template,在創建template的時候,需要你定義幾個常用的參數,然后增加一些實體(items、graphs):
Configuration->Templates->Create template
該頁含有三個表單:template、linked templates、macros
template表單包含了template的一般屬性,如下:
? ?template name ? ?一個唯一的template名稱
? ?visible name ? ?如果你設置該名稱,則在lists、maps中顯示該名稱
? ?groups ? ?哪個hosts/templates屬于該template
? ?new group ? ?可以在此新建一個group屬于該template,如果是空的,則忽略
? ?host/templates ? ?List of hosts/templates the template is applied to
linked templates表單允許你連接一個或者多個已經存在的templates到新建的template里面,連接過來的templates中的所有實體都會得到繼承
macros表單,允許你定義template-level,底下按鈕的意思:
? ?save ? 保存該template
? ?clone ? ?創建一個template基于目前的template
? ?full clone ? ?創建一個template基于當前的template,包括當前template繼承的其他template的實體
? ?delete ? ?刪除一個template,template的實體仍然會連接到hosts上
? ?delete and clear ? ?刪除一個template并且清除所有的實體
? ?cancel ? ?忽略
? ?linking/unlinking template通過linking應用到hosts,通過unlinking從hosts中脫離
? ?linking一個template:Configuration → Hosts-點擊hosts-切換到template表單-點擊add按鈕
? ?linking一個template到多個hosts:Configuration → Templates-點擊template表單, 從group中選擇hosts
Notifications upon events?
? ? 為了可以向zabbix發送消息,或者從zabbix收到通知信息,我們需要:
? ? ? ? 1 定義一些媒介?
? ? ? ??2 定義一些行為向我們定義的媒介上發送信息。
? ?行為由條件和操作構成,當條件達成的時候,操作開始執行,兩個重要的操作是發送信息和執行遠程命令
? ? 媒介類型包括多種:email、sms、jabber、Custom alertscripts等等,主要了解一下email、sms、alertscripts
配置email媒介:
Administration→Media-Create media type
該頁只包含一個表單:media
media屬性如下:
? ?description ? ?媒介類型的名稱
? ?type ? ?選擇一個媒介類型 email
? ?smtp server ? ?設置smtp server用來發送郵件
? ?smtp helo ? ?設置正確的smtp helo值,一般是domain name
? ?smtp email ? ?一個郵件地址,會顯示在郵件的from前面,表示從哪里發出來的郵件
? ?enable ? ?開啟emai
然后配置用戶媒介,給用戶分配指定的地址:Administration→Users-點擊具體用戶-選擇media表單-單機add按鈕增加媒介。在new media表單中包含以下屬性:
? ?type ? ?選擇email作為type類型
? ?send to ? ?定義給哪個郵件地址發郵件
? ?when active ? ?可以定義發送信息的時間段
? ?use if serverity ? ?選擇哪些級別的trigger信息將被發送
? ?status ? ?是否使用
Custom alertscripts
? ? 如果你不滿意現存的發送信息的媒介類型,你可以設置自己的腳本來發送信息,腳本存放在zabbix server配置文件指定的路徑中。
Actions ?
? ? 如果你希望值事件發生后執行某些動作,你就需要配置actions,可以在三個地方給相應的事件定義actions:triggers、discovery、auto registration。配置actions:
Configuration->Actions->Event source(選擇類型)->Create action 一般有三個表單:action、conditions、operations,以triggers類型為例action表單:
? ?name ? ?唯一的action名稱
? ?Default operation step duration ? ?默認的升級周期
? ?default subject ? ?默認的消息主題,可以包含macros
? ?default message ? ?默認的消息主體,可以包含acros
? ?recovery message ? ?如果開啟該選項,zabbix會發送恢復后的信息
? ?recovery subject ? ?恢復消息的主題
? ?recovery message ? ?恢復消息的主體
? ?enable ? ?是否開啟該action
Operations
? ? 1 你可以對所有的events定義以下兩個操作:發送信息,執行一個遠程命令
? ? 2 針對discovery events,你可以執行以下操作:add/remove/enable/disable host,add/delete group,link/unlink template
? ? 3 對于auto-registration事件,你可以執行以下操作:add/disable host,add/link template
可以在operation表單中配置operation details,有如下屬性:
? ?step ? ?執行計劃,from:從這一步開始執行計劃,to:直到執行到這一步,Step duration:執行的時間間隔
? ?operation type ? ?對于所有的events有兩種類型的操作:send message和remote command
? ?send message:
? ? ? ?conditions ? ?操作執行的條件,not ack 只有events未被確認時執行,ack 只有event被確認時執行
? ? ? ?send to user groups ? 選擇給那個用戶組發送信息
? ? ? ?send to user ? ?選擇給那個用戶發送信息
? ? ? ?send only to ? 發送消息到你所指定的媒介類型上,可以是全部媒介類型
? ? ? ?default message ? ?如果選擇該屬性,則會使用默認的消息內容,就是在定義action時定義的內容,如果沒有選擇該選項,則會讓你開始定義相關內容
? ?remote command:
? ? ? ?target list ? ?選擇執行目標,可以是當前機器,也可以是其他機器或者host group
? ? ? ?type ? ?選擇命令類型,ipmi、custom script、ssh、telnet、flobal script。
? ? ? ?commands ? ?輸入執行的命令
Remote Commands Configuration
? ? 首先確定zabbix_agentd.conf中EnableRemoteCommands被設置為1,remote commands在zabbix agent上執行(custom script):
Configuration->Actions->operations->operation type(remote command)-commands ? ? 對于一些特殊權限的命令,可以使用sudo命令執行,不過zabbix并不檢查命令是否執行成功,remote command在遠程機器執行并沒有超時時間, 不過可以在zabbix_server.conf中設置TrapperTimeout來設置超時時間。
? ? 可以在conditions表單中定義適當的條件,在災難發生時激活action,在new condition中可以增加新的判斷條件:
https://www.zabbix.com/documentation/2.0/manual/config/notifications/action/conditions
Escalations
? ? 使用escations你可以定制腳本發送信息或者執行遠程命令,在以下情況中可能用到:
? ? ? ?1 當問題發生時,用戶可以被立即通知到
? ? ? ?2 信息可以一直發送,直到問題解決
? ? ? ?3 發送的信息可以延遲
? ? ? ?4 信息可以升級到一個級別更高的用戶組
? ? ? ?5 遠程命令可以立刻執行當一個問題沒有被解決時
? ? ? ?6 恢復信息也可以被發送
? ? 你可以定義默認的持續時間和一個定制的持續時間對每一個步驟,最小的持續時間是60s,你也可以定一個初始行動,例如發送信息揮著執行遠程命令,對于任何步驟,第一步都是立刻執行,你如你想延后執行,你可以指示它在后面的步驟執行,在每一步驟中都可以定義多個actions,If different escalations follow in close succession and overlap, the execution of each new escalation supersedes the previous escalation, but for at least one escalation step that is always executed on the previous escalation. This behavior is relevant in actions upon events that are created with EVERY problem evaluation of the trigger.
https://www.zabbix.com/documentation/2.0/manual/config/notifications/action/escalations
Macros
? ? ? zabbix支持多種宏命令,特別是使用macros允許保存時間。zabbix支持的macros:
https://www.zabbix.com/documentation/2.0/manual/appendix/macros/supported_by_location
User macros
? ? ? 為了支持較大的靈活性,zabbix支持user macros,可以在全局template/host級別進行定義,macros可以用在item keys/description,trigger name/expression,other locations。
macros語法是{$MACRO},zabbix使用macros是有優先級的:
? ? 1 host級別的第一檢查
? ? 2 定義在host的templates中的macros
? ? 3 全局macros
? ??也就是先搜索host中的定義,如果沒有則在templates中深度搜索,如果還沒有,則搜索全局macros
全局macros的定義:Administration->General->Macros(右上角)
host/templates級別的定義:在host或者template屬性定制的地方會有macros表單
大多時候用的是全局和host級別的macros
User and User groups
? ? 所有的zabbix用戶通過web界面訪問zabbix應用,每個用戶有唯一的名稱,用戶密碼是加密過的,存放在數據庫,配置user:
Administration->Users->Create user
在該頁面有三個表單:user、user media、premissions
user表單屬性有:
? ?alias ? ?唯一的名稱,作為登陸用? ?name ? ?用戶的第一個名字
? ?last name ? ?用戶的第二個名字
? ?password ? ?用戶密碼
? ?groups ? ?用戶都屬于哪個用戶組中
? ?language ? ?zabbix的GUI語言
? ?theme ? ?設置GUI看起來是什么風格,有多種選擇
? ?auto-login ? ?是否讓zabbix記住你的登錄在30天內
? ?auto-logout ? ?是zabiix在多少秒后自動退出
? ?refresh ? ?刷新graphs、screens等等
? ?rows pre page ? ?一頁顯示多少行 數據
? ?url ? ?你可以設置zabbix登錄后跳轉到為你指定的url
user media表單: 這個主要設置用戶的收信息的方式及時間
premissions表單:
設置用戶對host group/hosts都有那些權限
IT services .....
Web monitoring
? ? 使用zabbix你可以檢查一些可用的web站點,為了在zabbix執行web monitoring,必須支持libcurl,主動檢查web站點的過程中,需要設置web場景腳本,一個web場景包含一個或者多個http請求/步驟,zabbix server定期的執行這些步驟,web場景會收集以下信息:在場景中所有步驟的每秒的平均下載速度,失敗的步驟,錯誤消息,在每個步驟中會收集以下信息:每秒的下載速度,響應時間,響應狀態。web monitoring支持http/https,通過執行web場景獲取的數據保存在數據庫中,這些數據會自動的應用在graphs、triggers中。
配置web場景:
? ?1 創建web scenario的第一步是創建一個合適application,web scenarios會link到application中
? ?2 開始配置web scenarios
Configuration->Web->Create scenario
包含兩個表單:scenario、steps
scenario表單允許你配置一些普通屬性:
? ?application ? ?選擇scenario屬于那個applicatin
? ?name ? ?scenario的唯一名稱
? ?Authentication ? ?認證選項:none 不認證,basic auth 基本認證,ntlm auth win 認證。只要選擇認證都需要輸入用戶名和密碼
? ?Update interval ? ?多久執行一次場景
? ?agent ? ?選擇一個模仿的客戶端,IE 火狐 oper
? ?variables ? ?列出一些在場景步驟中使用的變量,例如{xxx}=1
? ?active ? ?是否使用該web場景
steps表單允許你配置web場景中的步驟,可以添加刪除步驟,配置屬性如下:
? ?name ? ?唯一的名稱
? ?url ? ?連接到哪個url并獲取數據,get變量可以在url
? ?post ? ?http的post的變量,如果在web scenario中定義了macro,這時候可以使用
? ?timeout ? ?超時時間
? ?required string ? ?可以設置正則表達式的url,可以嘗試,直到失敗,如果是空,則表示不檢查該內容
? ?required status codes ? ?期望返回的http狀態碼,可以是多個,如果返回的狀態碼和期望的不一致,則表示這一步驟失敗,如果是空,表示不檢查該內容
可以在Monitoring->Web/Latest data 點擊相應的scenario查看已有的場景。
當創建一個web scenario的時候會自動的加入一些items,就是上面提到的監測的三項內容
Maintenance
? ? 你可能在某個使其要維護hosts或者host group,有兩種類型的維護,一種是有數據收集的,一種是沒有數據收集的。可以在維護期間停止信息的通知,需要修改action的配置,'Maintenance status = not in “maintenance”',如果在維護期間產生一個問題并且沒有恢復,則會在維護完成后發出信息。zabbix server在維護期間不能停止,它在維護期間要收集hosts狀態,一個zabbix proxy可能會一直收集數據而不管維護狀態是什么,如果設置的是不收集數據的,即使收集的數據也會被server忽略。配置維護周期:
Configuration->Maintenance->Create maintenance period 包含三個表單:maintenance、periods、hosts&&groups
Maintenance表單包含了一些普通的屬性:
? ?name ? ?維護周期名稱? ?maintenance type ? ?維護類型,收集數據或者不收集數據
? ?active since ? ?什么時候開始執行維護
? ?active till ? ?什么時候結束維護
? ?description ? ?對于維護的描述
periods表單允許你設置精確的天數和小時
hosts&&groups 表單允許你選擇哪些hosts host group在維護
在Monitoring->Dashboard可以顯示維護的機器,用個手鉗表示
Network discovery
? ? zabbix提供自動發現網絡的功能,當一個網絡建立好的時候,你可以加速zabbix的部署,簡化管理,而不需要過多的管理部門,zabbix的網絡發現功能依賴于以下信息:ip區域,外部服務的可用性,從zabbix agent收到的信息,從snmp agent收到的信息。但是它沒有提供網絡拓撲的發現功能。network discovery主要由兩部分組成:discovery和actions
? ? 先看discovery:zabbix定期的掃描在network discovery rules中定義的ip范圍,也可以針對每個單獨的規則定義掃描頻率,每個規則都有一個服務檢查范圍,discovery的各個檢查都是獨立的,一個check的失敗并不影響其他check。
? ? Every check of a service and a host (IP) performed by the network discovery module generates a discovery event.
service up:每次zabbix都檢查現在運行的服務
service down:每次zabbix都不檢查服務
host up:如果發現至少一個服務是正常的
host down:如果所有的服務都沒有相應
service discovered:如果服務是停機后回來或者第一次發現的
service lost:如果服務在主機啟動后丟失
host discoverd:如果主機是在停機時間之后或者第一次發現
host lost:如果主機在up之后丟失
? ? ? 再看actions:discovery事件可以基于一些actions,例如:發送信息,add/remove hosts,enable/disable hosts,把一個主機加入組中,在一個組中移除主機,連接一個主機到template中或者取消,執行遠程腳本,這些action都是可以配置的。
? ? ?配置網絡發現規則:可以通過網絡發現規則來發現hosts和services:
Configuration->Discovery->Create discovery rule
該頁面只包含一個表單:discovery rule
discovery rule屬性:
? ?name ? ?規則的唯一名稱
? ?discovery by proxy ? ?什么來執行發現,一個是no proxy 指zabbix server來發現,一個是proxy name指通過proxy來發現
? ?ip range ? ?發現哪個區間的ip,支持多種格式的IP段
? ?delay ? ?指定zabbix多久執行一次規則
? ?checks ? ?zabbix使用列表中的服務來執行發現過程
? ?device uniqueness criteria ? ?設備唯一性條件,可以是ip address也可以是type of discovery check,具體是干啥的還需深入了解
? ?enable ? ?active 該規則是活躍的并被zabbix server執行,disable 不被執行
例子:https://www.zabbix.com/documentation/2.0/manual/discovery/network_discovery/rule
Active agent auto-registration? ??
? ? zabbix允許活躍的zabbix agent自動注冊,當以前一個未知的agent要求檢查時,會發生自動注冊行為。這樣對于自動檢測新的節點來說很方便,在配置agent自動注冊時需要你針對agent設置一個action,還需要在agent的配置文件中進行一些參數設置。配置auto-registration:
Configuration->Actions->Auto registration->Create action 該頁有三個表單action、conditions、operstions
action表單設置action名稱,condition表單不需要設置,operations設置add host、add to host group等等 , 此外還需要配置agent file,zabbix_agentd.conf:server參數
low-level discovery
? ? low-level discovery提供了一個自動創建items、triggers、graphs針對不同的節點,在zabbix2.0中支持三種不通的item discovery:file system、network interfaces、snmp oid。
轉載于:https://my.oschina.net/guol/blog/109222
總結
以上是生活随笔為你收集整理的Zabbix配置详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 女孩子学电脑进入IT行业有什么优势?
- 下一篇: 陶哲轩实分析习题 12.1.3