日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

Zabbix配置详解

發(fā)布時間:2025/7/14 48 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Zabbix配置详解 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??

zabbix 配置了解

Hosts

?? ?zabbix中的hosts就是指你想監(jiān)控的設(shè)備,如服務(wù)器、工作站、交換機(jī)等等。如果你想監(jiān)控某個主機(jī)X的某個變量,你必須先創(chuàng)建一個主機(jī)X,然后再給該主機(jī)添加監(jiān)控items。hosts可以被有組織的安排進(jìn)host group中。

通過zabbix的前端web界面配置hosts:

Configuration->Hosts->Create Host

此頁面中有5個表單:Host、Template、IPMI、Macros、Host inventory。


Host表單中包含了一般的host屬性,先看看hosts表單可以設(shè)置哪些屬性:


? ?host name ? ?必須是一個唯一的名稱,在zabbix agent的配置文件中hostname參數(shù)的值必須和這里的一致 ? ?visible name ? ?這個名稱是該hosts顯示在lists、map中的名稱,支持utf8 ? ?groups ? ?該hosts屬于那個host group,一個hosts至少屬于一個host group ? ?new host group ? ?創(chuàng)建一個新的group,并把該hosts包含進(jìn)去,如果是空的,則被忽略 ? ?agent interfaces ? ?zabbix支持多種host接口,例如:agent、snmp、jmx、ipmi等,使用agent interface ? ? ? ?ip address ? ?hosts的ip地址 ? ? ? ?dns name ? ?hosts的dns名稱 ? ? ? ?connect to ? ?是一個單選的按鈕,這個告訴zabbix server使用那種方式檢索agent的數(shù)據(jù) ? ? ? ?port ? ?tcp方式,agent默認(rèn)是10050端口 ? ? ? ?default ? ?因為可以添加多個agent interfaces,該單選的default按鈕可以選擇默認(rèn)使用那個接口 ? ?monitored by proxy ? hosts可以被zabbix server或者zabbix proxy監(jiān)控,no proxy表示使用zabbix server監(jiān)控

? ?status ? monitored表示host已經(jīng)準(zhǔn)備好了被監(jiān)控,not monitored表示host還沒準(zhǔn)備好。

Templates表單允許你連接一個templates到該host上面,所有該templates的items、triggers、graphs等等都會得到繼承。點擊add可以鏈接一個templates過來,點擊unlink則會刪除該模版。


Ipmi表單包含一些ipmi的管理屬性,如認(rèn)證算法、特權(quán)級別、用戶名、密碼等。


macros表單 設(shè)置一些監(jiān)控用到的參數(shù)

host inventtory表單可以讓你手動的輸入一些host的信息,類似于資產(chǎn)信息

Host groups

通過zabbix的前端web界面設(shè)置host group:

Configuration->Host groups->Create host group

該頁面有一個表單:host group


? ?group name ? ?group的名稱,必須是唯一的

? ?hosts ? ?選擇哪些hosts屬于該group,一個host group可以有0個或者多個hosts

Items

? ? items表示從host中收集哪些數(shù)據(jù)項,一旦你配置了一個host,你就需要開始監(jiān)控一些items以獲取真實數(shù)據(jù),所有的item都是單獨的個體,你可以把很多items附加到一個templates上面,然后把該templates附加到一個hosts上面。在單個的item中你可以指定哪些數(shù)據(jù)是你想收集的,例如:一個item key名稱是system.cpu.load,它會收集cpu的負(fù)載,一個item key名稱是net.if.in,它會收集進(jìn)入網(wǎng)卡的信息。你可以給key指定更進(jìn)一步的參數(shù),就是使用方括號緊跟在key后面,例如:system.cpu.load[avg5],它會收集最近5分鐘的cpu負(fù)載。

通過zabbix的前端web界面創(chuàng)建一個item:

#需要在Hosts界面中選擇相應(yīng)的實例 Configuration->Hosts->items->create item

該頁面包含一個表單:Item


? ?host ? ?可以選擇一個host或者一個templates
? ?name ? ?這個顯示item的名稱,在下面的macros會用到
? ?type ? ?監(jiān)控客戶端的方式,主要分析zabbix agent和zabbix agent(active)兩種方式
? ?key ? ? item key,支持的item keys可以在單獨的item type中查看,在一個host中key必須是唯一的
? ?host interface ? ?選擇一個host inserface,可以在host level中編輯它
? ?type of information ? ?采集到的數(shù)據(jù)在數(shù)據(jù)庫中存儲的格式
? ? ? ? numeric(unsigned) 64位無符號整型
? ? ? ??numeric(float) 浮點數(shù)
? ? ? ? character ?字符型
? ? ? ? log ?log文件類型
? ? ? ??text ?text類型沒有限制大小
? ?date type ? ?用在整型的items中,用來指定確切的數(shù)據(jù)類型
? ? ? ? boolean ?0/1
? ? ? ??octal 八進(jìn)制
? ? ? ? decimal 十進(jìn)制
? ? ? ??hexadecimal 十六進(jìn)制
? ?units ? ?如果設(shè)置了units,zabbix會對收到的數(shù)據(jù)進(jìn)行處理,在顯示數(shù)據(jù)時會使用units后綴,默認(rèn)的原始數(shù)據(jù)是除以1000不是1024,如果使用B(byte)units,則會使用1024進(jìn)行分割,如果設(shè)置units為B,zabbix會這樣顯示:1 1B,1024 1KB,1536 1.5KB。如果是unmeric(unsigned)的則可以使用unixtime轉(zhuǎn)化為時間類型,uptime則會轉(zhuǎn)化為可讀的時間
? ?use custom multiplier ? ?如果使用了該參數(shù),則對于收到的數(shù)據(jù)會乘以一個整型或者浮點數(shù),可以用這個選項把KB MBps轉(zhuǎn)化為B Bps類型
? ?update interval ? ?多少秒刷新一次該item
? ?flexible intervals ? ?針對update interval你可以設(shè)置例外的情況,可以設(shè)置在某個時間段每隔幾秒刷新一次,而在其余時間則按照update的設(shè)置來刷新,如果有多個flexible設(shè)置,則以刷新時間最小的為準(zhǔn)。
? ?keep history ? 在數(shù)據(jù)庫中保存多少天的數(shù)據(jù),過期的數(shù)據(jù)會被清除,
? ?keep trends ? ?保存一些聚合的數(shù)據(jù)在數(shù)據(jù)庫中的天數(shù),過期數(shù)據(jù)會被清除,

? ?store value ? ?
? ? ? ? as is 不進(jìn)行預(yù)處理
? ? ? ? delta(speed per second) ?評估這些數(shù)據(jù)(value-prev_value)/(time-prev_time)
? ? ? ? delta(simple change) ?評估這些數(shù)據(jù)(value-prev_value)
? ?show value ? ?沒折騰明白...
? ?log time format ? ?log的時間格式
? ?new application ? ?設(shè)置該item屬于那個新的application中
? ?applications ? ?把該item連接到已存在的application中,可以是一個或者多個application中
? ?Populates host inventory field ? 你可以選擇一個host信息域存放該item的值,如果設(shè)置了automatic inventory population,則他會自動工作,未明白???
? ?description ? ?輸入該item的描述
? ?status ? ?
? ? ? ? ?enable ? ?該item會被執(zhí)行
? ? ? ? ?disable ? ?不會被執(zhí)行
? ? ? ? ?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來收集數(shù)據(jù),檢查又分為主動檢查和被動檢查,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收集來的數(shù)據(jù)的方法,history保存每一個收集來的數(shù)據(jù),trends保存一些基于小時的平均、最大、最小值信息。

Mass update ?

? ? 如果你有時候需要一次修改一個item的多個屬性值,不用打開每一個單獨的item去修改,可以使用mass update,可以選擇多個items,然后選擇mass update

Value mapping

? ? 為了使收到的數(shù)據(jù)更為人們可讀,我們可以使用value maps,它包含了numeric valus到string的映射,value map可以用在zabbix的前端和后端,以及例如email SMS的消息提醒上面,例如0可以表示false,1可以表示true,設(shè)置value map:

Administration->General->value mapping->create value map 該頁面有一個表單:Value mapping


? ?name 一個唯一的名稱。

? ?mapping ?中設(shè)置各個獨立的mappings,設(shè)置好value mapping后可以在item的配置界面的show value選項中選擇

Applications

? ? applications 用在本地group的group items中,在使用applications之前,你必須創(chuàng)建一個applications,并且link items過去。創(chuàng)建applications:

Configuration->Hosts->Applications->Create application Configuration->Templates->Applications->Create application 也可以在創(chuàng)建item的時候直接創(chuàng)建application
Queue

? ? queue顯示items還剩幾分鐘刷新,queue只是數(shù)據(jù)庫中數(shù)據(jù)的邏輯表現(xiàn),統(tǒng)計很好的顯示了zabbix server的性能。 Administration-Queue可以查看,如果有delay的可以通過右上角的details查看具體信息。

Triggers?

? ? Triggers是一個本地的邏輯表達(dá)式,用來評估items收集到的數(shù)據(jù)并表示當(dāng)前系統(tǒng)的狀態(tài)。當(dāng)items收集數(shù)據(jù)的時候,它會非常不切實際的遵循這些數(shù)據(jù)直到碰到一個報警狀態(tài),這個評估數(shù)據(jù)的任務(wù)就由trigger來處理。

? ? 觸發(fā)器允許設(shè)置一個閾值來決定什么數(shù)據(jù)是可以接收的,如果進(jìn)入的數(shù)據(jù)超過可接受的狀態(tài),觸發(fā)器則會被觸發(fā)。觸發(fā)器有兩種狀態(tài)OK/PROBLEM,如果該值是觸發(fā)器表達(dá)式的一部分,在zabbix server每次收到新的值,觸發(fā)器的狀態(tài)會被重復(fù)計算配置trigger:

Configuration->Hosts->Triggers->Create trigger

該頁面包含了兩個表單:trigger、dependencies


trigger表單屬性:
? ?name ?trigger name,這個名稱可能包含macros,$1..$9可以被用來關(guān)聯(lián)表達(dá)式的常量。
? ?expression ?邏輯表達(dá)式用來收集觸發(fā)器的狀態(tài)
? ?Multiple PROBLEM events generation ? 通過設(shè)置該選項,你可以在觸發(fā)器產(chǎn)生problem的時候觸發(fā)一個事件
? ?comments ? 關(guān)于該觸發(fā)器的信息
? ?url ? ?如果不為空,則該url被用到screen
? ?serverity ? 設(shè)置觸發(fā)器的嚴(yán)重程度
? ?enabled ? 選擇激活該觸發(fā)器

Trigger experssion

? ? 觸發(fā)器表達(dá)式在觸發(fā)器中是很靈活的,可以組合出各種復(fù)雜的表達(dá)式。簡單的表達(dá)式模式如下:{<server>:<key>.<function>(<parameter>)}<operator><constant>

function查看:

https://www.zabbix.com/documentation/2.0/manual/appendix/triggers/functions

parameter 許多數(shù)值型函數(shù)接收參數(shù),有些函數(shù)會返回多個值,可以通過在參數(shù)前加#,來獲取特定的值。

Trigger severity names and colours是可以修改的:

Administration->General->Trigger severities

Events

? ? events在zabbix有三個地方可以用到:triggers、discovery、auto registration。events可以是基于時間戳的,也可以是基于actions的,例如郵件報警。關(guān)于events的詳細(xì)信息可以在 Monitoring-Events中查看,可以通過點擊時間查看更詳細(xì)的信息。

Visualisation

? ? Graphs內(nèi)建有簡單的simple graphs和復(fù)雜的custom graphs兩種形式。

? ? Simple graphs提供items收集到的數(shù)據(jù)的可視化的數(shù)據(jù)圖,在simple graphs中不需要用戶進(jìn)行配置,他們都是由zabbix自動生成,可以通過Monitoring->Latest data進(jìn)行查看,點擊具體的item的graph link,就會顯示數(shù)據(jù)圖,在圖形上面有滑動按鈕可以選擇查看那個時間的數(shù)據(jù),還有右邊可以設(shè)置時間段來顯示數(shù)據(jù),左邊可以設(shè)置圖形中顯示幾個小時的數(shù)據(jù)量。


? ? Custom graphs 提供一些用戶定制的圖形。Simple graphs可以用來查看單個item的數(shù)據(jù),它沒有提供用戶定制的功能,如果你想改變圖形的風(fēng)格、線條顯示的樣式、或者想顯示多個items的數(shù)據(jù),這時就需要costom graphs,需要手動配置,可以創(chuàng)建針對一個主機(jī)、多個主機(jī)、或者一個templates的圖形。創(chuàng)建custom graphs:

Configuration->Hosts->graphs->create graph 該頁面包含兩個表單:graph、preview


graph表單:

? ?name ? ?數(shù)據(jù)圖的唯一名稱
? ?width ? ?數(shù)據(jù)圖的像素寬度
? ?height ? 數(shù)據(jù)圖的像素高度
? ?graph type ? ?圖像類型,normal 正常圖形,數(shù)據(jù)以線條顯示。stacked 疊加式圖形。pie 餅狀圖形。exploded 分解的餅狀圖形。
? ?show lengend ? ?顯示該圖利的說明
? ?show working time ? ?如果選擇該選項,則未工作的時間段會以灰色背景顯示,該選項不支持pie和exploded
? ?show triggers ? ?如果選擇該項,觸發(fā)器會以紅線顯示,不支持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的數(shù)據(jù)圖,點擊add按鈕增加items,graphs items可以配置以下屬性:
? ? ? name ? ?item的名稱,會被顯示出來
? ? ? function ? ?顯示哪些值,有all、min、max、avg
? ? ? draw style ? ?回吐的樣式,只支持normal graphs
? ? ? Y axis side ? ?元素值顯示在那個Y軸旁邊
? ? ? color ? ?顏色

Network maps

? ? ? 用來創(chuàng)建網(wǎng)絡(luò)拓?fù)鋱D,在創(chuàng)建網(wǎng)絡(luò)map之前,你必須先創(chuàng)建一個map,它包含了一些基礎(chǔ)的元素,然后才能制作maps。你可以用一個hosts、host group、trigger、image來填充一個map。icons代表map的元素,你可以定義一些icons顯示的信息,出問題的時候顯示的內(nèi)容,已有的maps可以在Monitoring->Maps上查看,創(chuàng)建一個map:

Configuration->Maps->create maps

該頁面只包含一個表單:map


map屬性如下:

? ?name ? ?map的名稱
? ?width ? ?map像素的寬度
? ?height ? ?map像素的高度
? ?background image ? ?背景圖,no image 沒有背景圖,image 可以選擇一個背景圖
? ?automatic icon mapping ? ????
? ?icon highlight ? ?圖標(biāo)高亮,如果element有個主動的trigger,則可以使用高亮圖標(biāo)表示,
? ?mark elements on trigger status ? ?
? ?expand single problem ? ?如果一個map元素有一個問題,這個選項控制是否顯示該問題的名稱,如果選擇,problem的名稱會被使用
? ?advanced labels ? ?可以讓你定義一個分開的標(biāo)題為分開的element type
? ?icon label type ? ?icons的標(biāo)題類型,label icon的label,ip address ip地址,element name element的名稱,status only 狀態(tài),nothing 不顯示labels
? ?icon label location ? ?label的位置,bottom 下方,left 左邊,right 右邊,top 頂部
? ?problem display ? ?顯示故障問題,full 所有的問題都會被顯示,separated 未被確認(rèn)的問題占左右問題的比重,unacknowledged only 只顯示未確認(rèn)的問題
? ?urls ? ?一個很NB的功能

Add elements

? ? 點擊建立好的初始map圖,進(jìn)入該map的配置界面,點擊icon的+則會產(chǎn)生一個icon,新的icon會顯示在map的左上方,你可以隨意的拖動icon,grid的shown會顯示map背景的方格子,點擊shown則會變成hidden,則不顯示方格子,on則表示elements總是會和方格子對齊,如果你想隨意拖動,則點擊on則會變成off。


? ? 生成新的elements后,你可以給該icon設(shè)置新的名稱,點擊該element即可,一個表單(edit map element)則會顯示出來,你可以設(shè)置關(guān)于該element的一些信息,如類型、名稱、不同的icon圖標(biāo)等等,因為默認(rèn)生成的都是同一個圖標(biāo),edit map element包含的屬性如下:


? ?type ? element的類型,host 代表該機(jī)器的所有的trigger的狀態(tài),map代表map中所有element的狀態(tài),trigger代表單獨的一個trigger的狀態(tài),image只代表一個icon,host group代表一個group中所有hosts的triggers狀態(tài)
? ?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默認(rèn)的圖標(biāo)
? ?icons ? ?自己決定使用那個icon
? ?coordinates ? ?X/Y coordinate of the map element
? ?urls

Select elements

? ? 選擇一個element之后,可以按住ctrl再選擇其他elements,或者通過鼠標(biāo)劃區(qū)來選擇區(qū)內(nèi)的elements,一旦選擇多個elements之后,所有的elements屬性都會顯示在一個表單中,這時你也可以修改他們的屬性。


Link elements

? ? 一旦你在maps中有多個elements,你就可以開始連接它們,先選中一個elements,然后按住ctrl再選擇一個elements,然后點擊link的+,這時候連接就被建立,有一個簡單的表單會出來,你可以針對該連接進(jìn)行簡單的設(shè)置,主要有以下屬性:

? ?label ? ?label會顯示在link上面
? ?type(ok) ? ?line 單線,bold line 粗線,dot 點線,dashed line 虛線
? ?color(ok) ? ?默認(rèn)的線條顏色
? ?Link indicators ? ?連接一個triggers到link上,如果trigger的狀態(tài)有變化,則link的樣式按照指定的顯示,也是就線條樣式及顏色


Screens

? ? 在zabbix中可以用screens把各種原始數(shù)據(jù)快速的顯示在一副screen上,從本質(zhì)上說screen是一個table,里面包含了多副圖,你可以設(shè)置一個tables中有多少cells,每個cell顯示什么樣的elements,以下的elements可以被顯示:simple graphs、custom graphs、maps、other screens、system status......很多。已有的screens可以在Monitoring->Screens中查看

Creat screens

? ? 先創(chuàng)建screens中的tables包含多少cells,然后再給cells中添加elements。創(chuàng)建screens:

Configuration->Screens->Create Screen 該頁面有一個表單:screen


? ?定義screens包含幾行幾列,screens都包含一個唯一的名稱


Add elements

? ? 點擊新創(chuàng)建的screens,你會看到一些名為change的links,點擊+標(biāo)識則會增加一行/一列cell,點擊-表示則會移除一行/一列cell


? ? 點擊change則會打開一個表單,讓你選擇在每個cell中顯示的內(nèi)容,在已有的screens中點擊change則會修改該cell,修改表單包含以下屬性:

? ?resource ? ?顯示在cell中的信息,可以是多種類型的,不同類型的資源,下面會有一些各自獨有的屬性。
? ?graph name ? ?
? ?width
? ?height
? ?horizontal align ? ?水平對齊
? ?vertical align ? ?垂直對齊
? ?column span ? ?列間距
? ?row span ? ?行間距
? ?dynamic item ? ?有些類型的資源會有這個屬性,具體的含義如下:如果你設(shè)置了該屬性,一旦你從Monitoring->Screens查看時,你就會發(fā)現(xiàn)在右上角你有一個額外的下拉菜單讓你選擇host,因此,你可以有一個screens,一些elements顯示相同的信息,其他的elements顯示的信息依賴域你所選擇的host

Templates

? ? 一個templates可以設(shè)置一個實體,讓這個實體方便的應(yīng)用到一組hosts上面,這個實體可以是items、triggers、graphs、applications、screens、low-level。
當(dāng)一個templates連接到一個host,則該templates包含的所有實體都會添加到該host,templates經(jīng)常被用到一組含有相同服務(wù)或者應(yīng)用的機(jī)器上。配置template,在創(chuàng)建template的時候,需要你定義幾個常用的參數(shù),然后增加一些實體(items、graphs):

Configuration->Templates->Create template

該頁含有三個表單:template、linked templates、macros


template表單包含了template的一般屬性,如下:


? ?template name ? ?一個唯一的template名稱
? ?visible name ? ?如果你設(shè)置該名稱,則在lists、maps中顯示該名稱
? ?groups ? ?哪個hosts/templates屬于該template
? ?new group ? ?可以在此新建一個group屬于該template,如果是空的,則忽略
? ?host/templates ? ?List of hosts/templates the template is applied to


linked templates表單允許你連接一個或者多個已經(jīng)存在的templates到新建的template里面,連接過來的templates中的所有實體都會得到繼承

macros表單,允許你定義template-level底下按鈕的意思:

? ?save ? 保存該template
? ?clone ? ?創(chuàng)建一個template基于目前的template
? ?full clone ? ?創(chuàng)建一個template基于當(dāng)前的template,包括當(dāng)前template繼承的其他template的實體
? ?delete ? ?刪除一個template,template的實體仍然會連接到hosts上
? ?delete and clear ? ?刪除一個template并且清除所有的實體
? ?cancel ? ?忽略

? ?linking/unlinking template通過linking應(yīng)用到hosts,通過unlinking從hosts中脫離
? ?linking一個template:Configuration → Hosts-點擊hosts-切換到template表單-點擊add按鈕
? ?linking一個template到多個hosts:Configuration → Templates-點擊template表單, 從group中選擇hosts

Notifications upon events?

? ? 為了可以向zabbix發(fā)送消息,或者從zabbix收到通知信息,我們需要:
? ? ? ? 1 定義一些媒介?
? ? ? ??2 定義一些行為向我們定義的媒介上發(fā)送信息。
? ?行為由條件和操作構(gòu)成,當(dāng)條件達(dá)成的時候,操作開始執(zhí)行,兩個重要的操作是發(fā)送信息和執(zhí)行遠(yuǎn)程命令

? ? 媒介類型包括多種:email、sms、jabber、Custom alertscripts等等,主要了解一下email、sms、alertscripts

配置email媒介:

Administration→Media-Create media type

該頁只包含一個表單:media

media屬性如下:


? ?description ? ?媒介類型的名稱
? ?type ? ?選擇一個媒介類型 email
? ?smtp server ? ?設(shè)置smtp server用來發(fā)送郵件
? ?smtp helo ? ?設(shè)置正確的smtp helo值,一般是domain name
? ?smtp email ? ?一個郵件地址,會顯示在郵件的from前面,表示從哪里發(fā)出來的郵件
? ?enable ? ?開啟emai
然后配置用戶媒介,給用戶分配指定的地址:Administration→Users-點擊具體用戶-選擇media表單-單機(jī)add按鈕增加媒介。在new media表單中包含以下屬性:
? ?type ? ?選擇email作為type類型
? ?send to ? ?定義給哪個郵件地址發(fā)郵件
? ?when active ? ?可以定義發(fā)送信息的時間段
? ?use if serverity ? ?選擇哪些級別的trigger信息將被發(fā)送
? ?status ? ?是否使用

Custom alertscripts

? ? 如果你不滿意現(xiàn)存的發(fā)送信息的媒介類型,你可以設(shè)置自己的腳本來發(fā)送信息,腳本存放在zabbix server配置文件指定的路徑中。


Actions ?

? ? 如果你希望值事件發(fā)生后執(zhí)行某些動作,你就需要配置actions,可以在三個地方給相應(yīng)的事件定義actions:triggers、discovery、auto registration配置actions:

Configuration->Actions->Event source(選擇類型)->Create action 一般有三個表單:action、conditions、operations,以triggers類型為例

action表單:


? ?name ? ?唯一的action名稱
? ?Default operation step duration ? ?默認(rèn)的升級周期
? ?default subject ? ?默認(rèn)的消息主題,可以包含macros
? ?default message ? ?默認(rèn)的消息主體,可以包含acros
? ?recovery message ? ?如果開啟該選項,zabbix會發(fā)送恢復(fù)后的信息
? ?recovery subject ? ?恢復(fù)消息的主題
? ?recovery message ? ?恢復(fù)消息的主體
? ?enable ? ?是否開啟該action

Operations

? ? 1 你可以對所有的events定義以下兩個操作:發(fā)送信息,執(zhí)行一個遠(yuǎn)程命令
? ? 2 針對discovery events,你可以執(zhí)行以下操作:add/remove/enable/disable host,add/delete group,link/unlink template
? ? 3 對于auto-registration事件,你可以執(zhí)行以下操作:add/disable host,add/link template

可以在operation表單中配置operation details,有如下屬性:


? ?step ? ?執(zhí)行計劃,from:從這一步開始執(zhí)行計劃,to:直到執(zhí)行到這一步,Step duration:執(zhí)行的時間間隔
? ?operation type ? ?對于所有的events有兩種類型的操作:send message和remote command
? ?send message:
? ? ? ?conditions ? ?操作執(zhí)行的條件,not ack 只有events未被確認(rèn)時執(zhí)行,ack 只有event被確認(rèn)時執(zhí)行
? ? ? ?send to user groups ? 選擇給那個用戶組發(fā)送信息
? ? ? ?send to user ? ?選擇給那個用戶發(fā)送信息
? ? ? ?send only to ? 發(fā)送消息到你所指定的媒介類型上,可以是全部媒介類型
? ? ? ?default message ? ?如果選擇該屬性,則會使用默認(rèn)的消息內(nèi)容,就是在定義action時定義的內(nèi)容,如果沒有選擇該選項,則會讓你開始定義相關(guān)內(nèi)容
? ?remote command:
? ? ? ?target list ? ?選擇執(zhí)行目標(biāo),可以是當(dāng)前機(jī)器,也可以是其他機(jī)器或者h(yuǎn)ost group
? ? ? ?type ? ?選擇命令類型,ipmi、custom script、ssh、telnet、flobal script。
? ? ? ?commands ? ?輸入執(zhí)行的命令



Remote Commands Configuration

? ? 首先確定zabbix_agentd.conf中EnableRemoteCommands被設(shè)置為1,remote commands在zabbix agent上執(zhí)行(custom script):

Configuration->Actions->operations->operation type(remote command)-commands ? ? 對于一些特殊權(quán)限的命令,可以使用sudo命令執(zhí)行,不過zabbix并不檢查命令是否執(zhí)行成功,remote command在遠(yuǎn)程機(jī)器執(zhí)行并沒有超時時間, 不過可以在zabbix_server.conf中設(shè)置TrapperTimeout來設(shè)置超時時間。

? ? 可以在conditions表單中定義適當(dāng)?shù)臈l件,在災(zāi)難發(fā)生時激活action,在new condition中可以增加新的判斷條件:

https://www.zabbix.com/documentation/2.0/manual/config/notifications/action/conditions


Escalations

? ? 使用escations你可以定制腳本發(fā)送信息或者執(zhí)行遠(yuǎn)程命令,在以下情況中可能用到:
? ? ? ?1 當(dāng)問題發(fā)生時,用戶可以被立即通知到
? ? ? ?2 信息可以一直發(fā)送,直到問題解決
? ? ? ?3 發(fā)送的信息可以延遲
? ? ? ?4 信息可以升級到一個級別更高的用戶組
? ? ? ?5 遠(yuǎn)程命令可以立刻執(zhí)行當(dāng)一個問題沒有被解決時
? ? ? ?6 恢復(fù)信息也可以被發(fā)送


? ? 你可以定義默認(rèn)的持續(xù)時間和一個定制的持續(xù)時間對每一個步驟,最小的持續(xù)時間是60s,你也可以定一個初始行動,例如發(fā)送信息揮著執(zhí)行遠(yuǎn)程命令,對于任何步驟,第一步都是立刻執(zhí)行,你如你想延后執(zhí)行,你可以指示它在后面的步驟執(zhí)行,在每一步驟中都可以定義多個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級別進(jìn)行定義,macros可以用在item keys/description,trigger name/expression,other locations。

macros語法是{$MACRO},zabbix使用macros是有優(yōu)先級的:
? ? 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應(yīng)用,每個用戶有唯一的名稱,用戶密碼是加密過的,存放在數(shù)據(jù)庫,配置user:

Administration->Users->Create user

在該頁面有三個表單:user、user media、premissions

user表單屬性有:

? ?alias ? ?唯一的名稱,作為登陸用
? ?name ? ?用戶的第一個名字
? ?last name ? ?用戶的第二個名字
? ?password ? ?用戶密碼
? ?groups ? ?用戶都屬于哪個用戶組中
? ?language ? ?zabbix的GUI語言
? ?theme ? ?設(shè)置GUI看起來是什么風(fēng)格,有多種選擇
? ?auto-login ? ?是否讓zabbix記住你的登錄在30天內(nèi)
? ?auto-logout ? ?是zabiix在多少秒后自動退出
? ?refresh ? ?刷新graphs、screens等等
? ?rows pre page ? ?一頁顯示多少行 數(shù)據(jù)
? ?url ? ?你可以設(shè)置zabbix登錄后跳轉(zhuǎn)到為你指定的url


user media表單: 這個主要設(shè)置用戶的收信息的方式及時間

premissions表單:
設(shè)置用戶對host group/hosts都有那些權(quán)限


IT services .....

Web monitoring

? ? 使用zabbix你可以檢查一些可用的web站點,為了在zabbix執(zhí)行web monitoring,必須支持libcurl,主動檢查web站點的過程中,需要設(shè)置web場景腳本,一個web場景包含一個或者多個http請求/步驟,zabbix server定期的執(zhí)行這些步驟,web場景會收集以下信息:在場景中所有步驟的每秒的平均下載速度,失敗的步驟,錯誤消息,在每個步驟中會收集以下信息:每秒的下載速度,響應(yīng)時間,響應(yīng)狀態(tài)。web monitoring支持http/https,通過執(zhí)行web場景獲取的數(shù)據(jù)保存在數(shù)據(jù)庫中,這些數(shù)據(jù)會自動的應(yīng)用在graphs、triggers中。


配置web場景:
? ?1 創(chuàng)建web scenario的第一步是創(chuàng)建一個合適application,web scenarios會link到application中
? ?2 開始配置web scenarios

Configuration->Web->Create scenario

包含兩個表單:scenario、steps

scenario表單允許你配置一些普通屬性:


? ?application ? ?選擇scenario屬于那個applicatin
? ?name ? ?scenario的唯一名稱
? ?Authentication ? ?認(rèn)證選項:none 不認(rèn)證,basic auth 基本認(rèn)證,ntlm auth win 認(rèn)證。只要選擇認(rèn)證都需要輸入用戶名和密碼
? ?Update interval ? ?多久執(zhí)行一次場景
? ?agent ? ?選擇一個模仿的客戶端,IE 火狐 oper
? ?variables ? ?列出一些在場景步驟中使用的變量,例如{xxx}=1
? ?active ? ?是否使用該web場景


steps表單允許你配置web場景中的步驟,可以添加刪除步驟,配置屬性如下:


? ?name ? ?唯一的名稱
? ?url ? ?連接到哪個url并獲取數(shù)據(jù),get變量可以在url
? ?post ? ?http的post的變量,如果在web scenario中定義了macro,這時候可以使用
? ?timeout ? ?超時時間
? ?required string ? ?可以設(shè)置正則表達(dá)式的url,可以嘗試,直到失敗,如果是空,則表示不檢查該內(nèi)容
? ?required status codes ? ?期望返回的http狀態(tài)碼,可以是多個,如果返回的狀態(tài)碼和期望的不一致,則表示這一步驟失敗,如果是空,表示不檢查該內(nèi)容


可以在Monitoring->Web/Latest data 點擊相應(yīng)的scenario查看已有的場景。
當(dāng)創(chuàng)建一個web scenario的時候會自動的加入一些items,就是上面提到的監(jiān)測的三項內(nèi)容


Maintenance

? ? 你可能在某個使其要維護(hù)hosts或者h(yuǎn)ost group,有兩種類型的維護(hù),一種是有數(shù)據(jù)收集的,一種是沒有數(shù)據(jù)收集的。可以在維護(hù)期間停止信息的通知,需要修改action的配置,'Maintenance status = not in “maintenance”',如果在維護(hù)期間產(chǎn)生一個問題并且沒有恢復(fù),則會在維護(hù)完成后發(fā)出信息。zabbix server在維護(hù)期間不能停止,它在維護(hù)期間要收集hosts狀態(tài),一個zabbix proxy可能會一直收集數(shù)據(jù)而不管維護(hù)狀態(tài)是什么,如果設(shè)置的是不收集數(shù)據(jù)的,即使收集的數(shù)據(jù)也會被server忽略。配置維護(hù)周期:

Configuration->Maintenance->Create maintenance period 包含三個表單:maintenance、periods、hosts&&groups

Maintenance表單包含了一些普通的屬性:

? ?name ? ?維護(hù)周期名稱
? ?maintenance type ? ?維護(hù)類型,收集數(shù)據(jù)或者不收集數(shù)據(jù)
? ?active since ? ?什么時候開始執(zhí)行維護(hù)
? ?active till ? ?什么時候結(jié)束維護(hù)
? ?description ? ?對于維護(hù)的描述


periods表單允許你設(shè)置精確的天數(shù)和小時



hosts&&groups 表單允許你選擇哪些hosts host group在維護(hù)



在Monitoring->Dashboard可以顯示維護(hù)的機(jī)器,用個手鉗表示




Network discovery

? ? zabbix提供自動發(fā)現(xiàn)網(wǎng)絡(luò)的功能,當(dāng)一個網(wǎng)絡(luò)建立好的時候,你可以加速zabbix的部署,簡化管理,而不需要過多的管理部門,zabbix的網(wǎng)絡(luò)發(fā)現(xiàn)功能依賴于以下信息:ip區(qū)域,外部服務(wù)的可用性,從zabbix agent收到的信息,從snmp agent收到的信息。但是它沒有提供網(wǎng)絡(luò)拓?fù)涞陌l(fā)現(xiàn)功能。network discovery主要由兩部分組成:discovery和actions

? ? 先看discovery:zabbix定期的掃描在network discovery rules中定義的ip范圍,也可以針對每個單獨的規(guī)則定義掃描頻率,每個規(guī)則都有一個服務(wù)檢查范圍,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都檢查現(xiàn)在運行的服務(wù)
service down:每次zabbix都不檢查服務(wù)
host up:如果發(fā)現(xiàn)至少一個服務(wù)是正常的
host down:如果所有的服務(wù)都沒有相應(yīng)
service discovered:如果服務(wù)是停機(jī)后回來或者第一次發(fā)現(xiàn)的
service lost:如果服務(wù)在主機(jī)啟動后丟失
host discoverd:如果主機(jī)是在停機(jī)時間之后或者第一次發(fā)現(xiàn)
host lost:如果主機(jī)在up之后丟失


? ? ? 再看actions:discovery事件可以基于一些actions,例如:發(fā)送信息,add/remove hosts,enable/disable hosts,把一個主機(jī)加入組中,在一個組中移除主機(jī),連接一個主機(jī)到template中或者取消,執(zhí)行遠(yuǎn)程腳本這些action都是可以配置的。


? ? ?配置網(wǎng)絡(luò)發(fā)現(xiàn)規(guī)則:可以通過網(wǎng)絡(luò)發(fā)現(xiàn)規(guī)則來發(fā)現(xiàn)hosts和services:

Configuration->Discovery->Create discovery rule

該頁面只包含一個表單:discovery rule

discovery rule屬性:


? ?name ? ?規(guī)則的唯一名稱
? ?discovery by proxy ? ?什么來執(zhí)行發(fā)現(xiàn),一個是no proxy 指zabbix server來發(fā)現(xiàn),一個是proxy name指通過proxy來發(fā)現(xiàn)
? ?ip range ? ?發(fā)現(xiàn)哪個區(qū)間的ip,支持多種格式的IP段
? ?delay ? ?指定zabbix多久執(zhí)行一次規(guī)則
? ?checks ? ?zabbix使用列表中的服務(wù)來執(zhí)行發(fā)現(xiàn)過程
? ?device uniqueness criteria ? ?設(shè)備唯一性條件,可以是ip address也可以是type of discovery check,具體是干啥的還需深入了解
? ?enable ? ?active 該規(guī)則是活躍的并被zabbix server執(zhí)行,disable 不被執(zhí)行


例子:https://www.zabbix.com/documentation/2.0/manual/discovery/network_discovery/rule

Active agent auto-registration? ??

? ? zabbix允許活躍的zabbix agent自動注冊,當(dāng)以前一個未知的agent要求檢查時,會發(fā)生自動注冊行為。這樣對于自動檢測新的節(jié)點來說很方便,在配置agent自動注冊時需要你針對agent設(shè)置一個action,還需要在agent的配置文件中進(jìn)行一些參數(shù)設(shè)置。配置auto-registration:

Configuration->Actions->Auto registration->Create action 該頁有三個表單action、conditions、operstions
action表單設(shè)置action名稱,condition表單不需要設(shè)置,operations設(shè)置add host、add to host group等等 此外還需要配置agent file,zabbix_agentd.conf:server參數(shù)



low-level discovery

? ? low-level discovery提供了一個自動創(chuàng)建items、triggers、graphs針對不同的節(jié)點,在zabbix2.0中支持三種不通的item discovery:file system、network interfaces、snmp oid。




轉(zhuǎn)載于:https://my.oschina.net/guol/blog/109222

總結(jié)

以上是生活随笔為你收集整理的Zabbix配置详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。