中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

zabbix-進階-3

發布時間:2020-09-15 04:43:37 來源:網絡 閱讀:2113 作者:名天520 欄目:數據庫

第三章;發現,自動注冊和web監控

報警實現:應該使用專用的郵箱服務實現,使用專用的賬號和密碼

:使用飛信機器人,使用腳本實現發信息

action動作:conditionoperationremotecommandsend message

item:數據項()-->mysql server保存在數據庫中-->web gui

key:是serveragent上獲取數據時所需要的標記,

//一個key可以生成多個item

//用戶參數,userParameter=<key[*]>,<command>

//key也可以接受參數

//keyitem并非是一一對應的

trigger:激發動作,action//trigger定義某個item的閾值,key

動作:condition條件,operation (remote command,send message)

完整的監控:添加主機(主機組)-->添加item(內置的簡單圖形)--->trigger(event)-->

action(發通知(通知信息中包括大量的宏)condition,operation(step)

Item:自己建立的,

trigger:定義一個合理的范圍,超出閾值,就產生event(OK--->problem)

action:可以是發信息,或者遠程命令,一旦恢復后,還需要problem-->OK

  :通知信息大量使用宏,需要條件和操作  

action:一個trigger未必就執行operation還要看條件,還需要滿足condition才可以

:在action.Operation中定義steps,定義step duratiion//報警升級的實現

:在action.Recovery中沒有steps

trigger可以引起事件,但是必須滿足action.condition才可以

Media typeemailExternal Script,Jabber,SMS, //最常用的就是前兩個,外部腳本可以實現調用外部的應用發送信息

Meidagoogle_mail,our_mail等,媒介是具體的實體

//itemtrigger是主機級別的,需要定義在主機或者木板上

//action:不是在主機級別因為,當多個主機監控同一個指標的時候,可以定義一個action讓多個主機上的同一個指標,同事報警,::可以定義多個主機監控同一個指標時的操作

//action.condition可以定義 host.group,trigger,hosts等同時監控

信息的發送目標:zabbix用戶,每個用戶的系方式,自定義發送的目標

Graph將同一類的item數據項,展示在同一個圖形中;

screen:將多個graph,放在一個大屏幕中

map:通過圖形定義各個節點間的拓撲關系,地圖

Template批量監控每一個主機

添加主機,直接把主機套用模板即可建議多做幾個模板,每個模板只關注幾個指標,然后

添加主機的時候,只要多關聯幾個指標就可以了

可以把一個主機關聯多個模板,模板可以嵌套,模板和主機是同一個級別

也可以定義itemapplicationtriggergraph

discovery

發現的方式:

agent

agentlesssshping//無代理方式

SNMP

JMX:專用于監控java虛擬機的環境,tomcat默認并不支持jmx,需要為toomcat添加特定的類,官網下載,安裝,重啟 //假如只監控tomcat的連接數,正在打開的網頁數,就不在需要JMX 腳本即可

zabbix的網絡發現功能可基于如下信息進行

IP range

根據服務(FTPSSHWEBPOP3IMAPTCP

zabbix agent發來的信息,agent可以

SNMP代理實現

Discovery過程階段discovery-->action

Discovery中的事件:

service upservice down

host up,host down

service discovered,service lost

host discovered,host lost

action{condition,operation}添加主機,關聯模板

sending notification:發送通知

adding/removing hosts:添加或者刪除主機

adding hosts to a group:添加主機到組

Enabling /disabled hosts:激活或者失效一個組

removing hosts from a group

linking hosts to/unlinking from a template

remote scripts

網絡發現中添加時會自動創建interface
1.the services detected //例如基于SNMP檢測成功,則會創建SNMP借口

2.如果某服務同時響應了agentsnmp則,會創建兩種接口

3.如果同一種發現機制(如agentd返回非唯一數據,第一個接口為默認,其他的額外接口

4.即便是某主機開始時只有agent接口,后來又通過SNMP發現了它,同樣會為其添加額外的SNMP借口

5.不同主機-返回相同的數據,則第一個主機將被添加,余下的主機會被當做第一個主機的額外借口


實驗:自動發現,環境:zabbix_server,另外一臺主機,新建立的主機,

//server200client101server指定為serverzabbix-agent啟用

1.新建模板

test template

Test  group //組名

//不在模板中定義,discovery,在其他地方定義

2.創建item--trigger--graph

//agentdagent.conf上有:UserParameter=memory.usage[*],/bin/cat /proc/meminfo | awk '/^$1:/{print $$2}' 這個記錄,建議在server上使用agent-get命令測試效果

//zabbix_get -s 10.0.0.101-k "agent.ping" //是一個key,對方的一個key

創建3item

//確保itemkey能夠使用

memory.usage[MemAvailable]  //*1024

memory.usage[MemFree]//*1024

memory.usage[Active]//*1024

memory.usage[Inactive]//*1024

創建trigger

Name : free memory too low

SeverityHigh //high級別的報警

Expression:

     Item:test-template: memory.usage[MemFree]

     FunctionAverage value of a period T is < N

     Last off(T) : 30 //最后30s的平均值,小于51M

     TIme shift:

     N:  51200 //51M小于51M為閾值,默認單位為k

OK event generationNone //不會附帶產生其他的問題

創建 graph

Namemem-usage-depaly

3.配置configuration->discovery--->create discovery //discovery創建

Namelinux_in localhost

DIscover by proxy No proxy

ip range : 10.0.0.100-10.0.0.101  //自己的ip也要包含在內

Delay (in sec) :120 //延遲

check New:

check type: zabbix agent

key:memory.usage[MemFree]//這里的key是作為輔助手段,添加主機

//這里的discovery只能發現,但是發現完以后,選喲action

Device uniqueness criteria:IP address設備的唯一標識符為IP

4.配置action //discovery只能發現,但是發現之后做什么,他們并不知道

configuration--action-event source{discovery}---create action

action:

name:auto discovery linux in localnet

conditionHost IP.:10.0.0.100-10.0.0.101 //當滿足條件的時候,才會添加到進來

Discovery status = Discovered //當狀態是發現的時候,才會添加

Discovery rule = linux_in_localhost //這個條件是discovery中定義的

operation

Add host

Link tooard templates test server/test template

//monitoring--dashboard上,可以看到有沒有主機發現

果:能夠發現主機,但是不能夠檢測其狀態

5.//創建tom,加入CTO組,tom可以接受,任何類別的郵件

Send totom@localhost //servertom這個系統用戶

創建mediaadministrator--media types-->創建新的media types

創建user groupadministrator-users-create users groups

創建user

user:加入剛創建的組

media

typelocal media find

send totom@localhost

//serveruseradd tom ,添加用戶tom

排錯:主要基于,configuration{hosts,actions,discovery}

注意:一定要查看是否configuration-hosts有自定義的itemriggers

//問題,只能在dashboard上看到有主機存活,但是不能添加到host

//最終新開啟了一臺主機后,自動發現成功

//解決方法:action中的conditionDiscovery status = Discovered刪除即可解決

//因為這個是已經發現很久了,然后狀態已經發生改變了,不是discovered的了

//重新啟動,

//錯誤zabbix_get [43432]: Get value error: cannot connect to [[10.0.0.101]:10050]: [113] No route to host

[root@localhost ~]# zabbix_get -s 10.0.0.101 -k "memory.usage[MemFree]"

方法:iptable -F //關掉防火墻即可

6.定義另外一個actionauto_remove

createa actions

name remove host

conditionshost ip 10.0.0.100-102

 Discovery status = Lost  

Operationsremove host

//agentsystemctl  zabbix-agent stop 停止該服務即可

 

步驟小結:

創建模板(item,trigger,graph)----創建discovery-----創建action

 

 

 

問題:

自動remove沒有

 

Agent自動注冊:

1.Zabbix支持active agent的自動注冊(auto-resistration)功能,通常用于此前agent失效后的重新上線

2.也可基于active  agent的自動注冊機制添加被動檢測,這會通過active agent注冊時提供的“listen IP

listen port進行

3.Server端在收到自動注冊請求以后以接受到的IPPort為接口屬性

網絡發現:配置active agent自動注冊

Configuration--actions--Event sourceatuo registration--create action

Actionadd host/link to template   

Condition

Operation:只用定義operation,無需定義condition

此外:配置agent的工作屬性,并重啟agent

Zabbix-agentd..conf

ServerActive=172.16.100.15 //指向server

//以后

//然后在這里service agent stop

 

 

Web監控:

1.創建步驟的web監控需要先定義一個web方案(scenarios

Web方案包括一個或多個HTTP請求或“步驟{step}}

步驟{step}的執行過程按照預先定義的順序進行執行

2.通過web監控可以獲取一下信息

整個web方案中,所有step的平均下載速度

失敗的step

失敗的報錯信息

3.web方案的具體step中,可以按需使用如下信息

step的下載速度

回應時間

回應狀態碼

4.zabbix可以檢測 獲取到的HTML頁面中是否包含預設的字符串,也可以實現登錄和頁面點擊

實現:

1.創建兩個頁面 1.html,cp /var/log/message /var/log/www/html/2.html
chmod  644 /var/ww/html/*.html

2.創建一個新的applicationname web-test

Configuration---hosts--web:選中web

Scenario

Steps:  //URL寫對,required codes200即可

Authentication

//monitoring中可以看到

//Scenario自動創建的item

web.test.in[Scenario,,bps],下載速度

web.test.fail[Scenario],失敗步數

web.test.error[Scenario],最后一次錯誤碼

但是假如需要自定義的話,調用的話,需要替換Scenario為自己定義的web名字

例如:創建觸發器:

{host.web.test.fail[www.magedu.com].last(0)}#0 //最后一個錯誤碼不為0#不等于0,證明失敗了

{host:web.test.in[www.magedu.com].last(0)}<10000 //

//step 自動創建的items

web.test.in[Scenario,Step,bps],下載速度

web.test.time[Scenario,Step] 響應時間

web.test.error[Scenario,Step],返回碼,第幾個頁面的返回碼

{zabbix:web.test.time[www.magedu.com,Home].last(0)}>3

//configuration-host--trigger自定義trigger的的時候:Expression中可以看到web自動創建的item

舉例:

Item10.0.0.101: Response code for step "1.html" of scenario "web-test

FunctionLast most recentT value is > N

N3//響應的時間的閾值為3s

 

第四章:

Zabbix分布式監控

上千臺主機,多個proxy匯總消息,然后匯總到server

Zabbix的三種架構

Server--agent

Serer-node-agent //早期的了

Server-proxy--agent //zabbix1.8之后使用了proxy

Proxy or Node?

代理proxy用于本區域數據收集,并將數據發送給server//不分析,不監控,也不展示

節點node提供完整的Zabbix server用以建立分布式監控中的層級

//node是一個完整的監控平臺,可以直接在node上直接web



zabbix-進階-3


Maintenance:維護 //centralised集中化,//embedded嵌入式

Proxy不提供GUI,但是node

Node需要手動創建DB,但是proxy是在server

//proxy的數據采集,是從server拿到以后自行創建的

Centralised configuration:集中化管理,proxy可以實現,Node需要單獨配置每一個node需要單獨監控的對象

Proxy node對比

1.node本身是一臺server,它有完整的web頁面,完整的數據庫,它將數據源源不斷傳送給Master

2.Proxy只有一個proxydaemon進程,Proxy也有自己的數據庫,但它的數據庫只會保存一定的時間的數據,它與Master通信是將一批信息打包后發送到MasterMaster講這些數據mergeMaster數據庫

3.Mater-Proxy相比Master-Node的優點,

1.Proxy壓力小,數據庫之存儲一定時間的數據

2.Master壓力變小,數據不是源源不斷獲取,減小IO壓力

3.架構更清晰,易維護

//DB,web,master壓力,發送數據:{不斷發送|打包發送}

//proxy的話:只需要導入schema.sq,而不需要導入data.sql,p_w_picpath.sql

:不需要自己配置,從server上復制配置,只負責保存一段時間的數據,過一陣把數據打包發過去即可

//node的話,三個數據庫都要導入,需要安裝web界面,還需要自己配置自己安裝哪些界面

Frontend:前端,用戶通過前段查看數據

Server-Proxy-CLient模型

 

//node:獨立配置,獨立DB,獨立frontendmaster只負責把其匯總即可


zabbix-進階-3


Server:也需要收集node的配置信息,在node上修改的configuration必須要同步到server

Server-Node-client特性:

1.解決host過多時單臺Server面臨性能瓶頸,使用多個instance(每個node),每個instance都是一個獨立的zabbix

2.支持熱插拔,nodeserver的連接可以隨時斷開,但不影響node的正常運行

3.Node定時給Server發送configurationhistoryevent

4.Server定時給Node發送configuration //Nodeserver需要定時同步配置等信息

5.所有配置變更只有在Node節點操作,不能再Server操作

6.支持樹狀結構,Node又可以是個Server

//6.意思是,node可以繼續分封,自己的子child,然后自己成為server,但是自己又是一個node

Server-Proxy-Client模型:輕量級

Proxy沒有獨立的配置文件,需要從server上,獲取server指定給自己監控的hostitem

周期性的定期發送給server,由server保存在server.DB

Proxy不會向Server同步configuration,只會接受

Proxy的數據庫定時會將數據傳送給ServerProxy本地數據庫只保存最近沒有發送的數據

//已經發送的數據不再保存

zabbix-進階-3

 

Zabbix Proxy的功能:

1.監控遠程區域

2.監控那些具有非可靠通信的位置

3.減輕server的壓力

4.分布式維護

注意:

1.zabbix proxy必須使用一個單獨的數據庫,就算是放在同一個主機上,也已定不能喝server使用同一個數據庫

2.proxy指向zabbix server的數據庫會破快配置信息

Zabbix的特性:

ProxyLocalBufferProxyOfflineBuffer//負責配置數據保存多長時間

Proxy僅僅是一個數據收集器,不分析,不處理事件,活著發送報警信息

zabbix-進階-3

 

實驗:zabbix-proxy實現

//ntpdate 10.0.0.1時間一定要一致

Server200 proxy100agent:141//53監控141

 Proxy:只需要安裝:zabbix-proxyzabbix-proxy-MySQLzabbix-agentzabbix

1.Proxy:proxy暫時不安裝agent

安裝mysql,創建database:庫名,隨便起,例如:zabbix_proxy,

 create database zabbix_proxy default character set utf8;

Grant all  on zabbix_proxy.*  to zbproxy@10.0.0.% identifide by zbproxy

 insert into mysql.user(host,password,user) value ('10.0.0.*',password('zbproxy'),'zbproxy');

mysql -uzbproxy -pzbproxy -h20.0.0.53 //測試結果

Flush privileges

//yum install http://mirrors.163.com/centos/7/extras/x86_64/Packages/epel-release-7-5.noarch.rpm

Yum install zabbix-proxy zabbix-proxy-mysql //安裝zabbix-proxy,會有依賴,使用yum安裝

//rpm -ql zabbix-proxy-mysql,需要導入數據庫

Mysql :只需要導入schema.sql即可

mysql -uzbproxy -pzbproxy -h20.0.0.53 zabbix_proxy < /usr/share/doc/zabbix-proxy-mysql-2.4.8/create/schema.sql

//導入數據庫

2..proxyvim /etc/zabbix/zabbix_proxy.conf

[root@localhost yum.repos.d]# grep -v  "^#" /etc/zabbix/zabbix_proxy.conf | grep -v "^$"

Server=10.0.0.200,172.16.1.1 //允許來拉取數據的主機的IP地址

ServerActive=127.0.0.1,172.16.1.1

//主動通知來拉取數據的主機的IP地址(只有serveragent在同一主機時才有127.0.0.1

Hostname=server.zhou.com  //需與主機名保持一致

這個配置和該機器實際的主機名沒有關系,但必須和zabbix server中添加該機器的時候的主機名一致,否則zabbix server獲取不到信息

Hostname=10.0.0.53 //這個將會被server識別

DBHost=10.0.0.53

DBName=zabbix_proxy

DBUser=zbproxy

DBPassword=zbproxy

ConfigFrequency=1  //zabbix proxy服務器檢索配置數據信息的頻率,

DataSenderFrequency=60 //zabbix proxy發送收集的數據給zabbix server的頻率tart zabbix-proxy

netstat -tunlp | grep zabbix  //它也監控在server上,因為他自己也相當于server端,在被動模式下,該參數將來被忽略

3agent.

Yum -y install zabbix-agent //安裝agent

 vim /etc/zabbix/zabbix_agentd.conf

Server 指向proxyip,而不是server

ServerActive指向proxyip,而不是server

Hostname

UserParameter=test.Mem[*],/usr/bin/cat /proc/meminfo | awk '/$1:/{print $$2}' //提供測試用

systemctl enable zabbix-agent

 systemctl start zabbix-agent

 

4.server 上添加被監控主機,

首先得讓server知道有一個proxy

Administration--proxy--create proxy

Proxy name: 盡量使用ip,除非能夠解析到主機

Proxy mode:

Active:proxy主動到server拉取配置文件 ,一般使用

Passive:等到server想自己發發送配置文件

Host:不要添加其他主機

proxy上測試agent錯誤:

[root@localhost yum.repos.d]# zabbix_get -s 10.0.0.141 -k "test.if"

zabbix_get [21365]: Get value error: cannot connect to [[10.0.0.141]:10050]: [113] No route to host

解決方式: //很有可能是虛擬機的問題

1.iptables -Fiptables-save

2.Setenforce 0

3.Shutdown -h now

4.Pkill zabbix-agent ;systemctl restart zabbix-agent

 

然后,添加被監控主機:create hosts

Host name:10.0.0.141

Visible name:agent-141

New group:proxy-discovery:1

Agent interfaces:10.0.0.141

Monitored by proxy:10.0.0.53 //53代為監控

//monitoring--Dashboard上的Hosts tatus上看結果,就能發現已經能夠檢測得到

創建一個item進行測試:

 

 

注意事項:

//tail /var/log/zabbix/zabbix_proxy.log    //隨時查看日志

1.proxy的配置文件的Hostname=   //必須和Administrator--proxy中定義的主機名一致

2.通過agentserverserver active都需要指定為proxyip

3.加快serverproxy的同步
zabbix-proxy.conf //配置文件

ConfigFrequency=1 //拉取配置文件,默認是3600s

DataSenFrequency=1 //默認是1s

ProxyLocalBuffer=0  //本地數據保存多長時間,0:不保存

ProxyOfflineBuffer=1 //proxy聯系不到server后數據保存多長時間,1:1小時

//agent上有自定義監控mysqlUserParameter

///etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

項目案例:

zabbix-進階-3

 

ConfigFrequency=300  DataSenderFrequency=60  //只需要在proxy上配置

Zabbix-server上需要的操作:添加proxy,添加host.proxy為主動模式,

Agent上修改配置后,需要重啟agent服務

關鍵是在zabbix server的前端創建代理節點的名字時,該名字應和zabbix代理配置文件中指定的Hostname值相同 .配置zabbixproxy的配置文件zabbix_proxy.conf

該文件中有兩個重要的參數:

ConfigFrequency=60      #zabbix proxy 向服務器檢索配置數據信息的頻率,在被動模式下該參數將被忽略

DataSenderFrequency=60  #zabbix proxy發送收集的數據給zabbix server的頻率

 

配置完畢

現在server上,建立proxy,然后建立host.proxy

 

問題:serverproxy上獲取不到agent的數據

1.server端與proxy端時間不同步  //ntpdate 120.25.108.11

    2.server端分配的緩存不夠

    3.server端分配的線程不夠

    4.server端負載比較大{CPU,IO,MEM}

1.查看zabbix_server有沒有出現 Zabbix poller processes more than 75% busy 告警

2.htop iotop iostat  //查看服務器的負載情況

3.  vim /usr/local/zabbix/etc/zabbix_server.conf

        StartPollers=500

        StartPollersUnreachable=50

        StartTrappers=30

        StartDiscoverers=6

        CacheSize=1G

        CacheUpdateFrequency=300

        StartDBSyncers=20

        HistoryCacheSize=512M

        TrendCacheSize=256M

        HistoryTextCacheSize=80M

        ValueCacheSize=1G

4.  crontab -e

        */3 */1 * * * /usr/sbin/ntpdate -u 202.120.2.101 &> /dev/null

重啟server端和proxy服務

 


兩個問題:

1.Too many processes on Zabbix server

2.Serverproxy上獲取不到數據  //agentserver指向proxy

3.報警機制的實現

4.Zabbix-node-agent實現

Proxy常見問題:

     1.proxyHostnameserverweb里面配置的名稱不一樣。這樣一定要注意了無論是proxyserver  還是agentserver  Hostname都要相同的

 

附件:zabbix_proxy.conf文件詳解

1.ProxyMode=0  //0位默認,主動,1位被動

2.Server=IP地址  #說明:此參數用于設置zabbix ServerIP地址。在主動模式下,二級代理將采集到的數據傳送到此IP所在服務端。#但被模式下,此參數被忽略

3.#說明:system.hostnameZABBIX內置的一個自動獲取主機名的方法,為了方便配置,建議打開此參數而關閉Hostname參數#

4. HostnameItem=system.hostname //system.hostnameZABBIX內置的一個自動獲取主機名的方法,為了方便配置,建議打開此參數而關 閉Hostname參數#

5.LogFileSize=1 //當日志文件達到多少M時便輪轉并自動覆蓋

6. StartPollersUnreachable=1 //說明:用于設置諸如SNMP STRAPPER場景提交來的數據的接收進程數,若客戶機SNMP TRAPPER技術較多,建議加大此參數值

7.//http://www.bkjia.com/xtzh/926118.html   地址

 

//serverproxy上接受不到信息的解決

注:在server上添加proxy后,server才能收到配置信息

//tail /var/log/zabbix/zabbix_proxy.log  這樣才能收到 消息

然后會自動建立一條

zabbix-進階-3

 

Agent

Server:為proxy

Serveractive:為proxy

Proxyserverzabbix.server

/etc/zabbix/proxy/zabbix_proxy.conf

Server:zabbix-serverip

/etc/zabbix/proxy/zabbix_agent.conf

Server

Server.active  //都是zabbix--serverip地址

//需要說明的是,理論沒有問題,只是虛擬機的問題

 


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

多伦县| 巴青县| 宁安市| 景宁| 新蔡县| 巨鹿县| 金湖县| 扎鲁特旗| 高雄市| 肃北| 汽车| 贞丰县| 湘阴县| 开封县| 南投县| 罗山县| 乡宁县| 宜州市| 西贡区| 休宁县| 淮阳县| 丽江市| 德令哈市| 原平市| 明光市| 黑河市| 青岛市| 孝昌县| 濮阳县| 永新县| 桃源县| 松溪县| 库尔勒市| 安康市| 廉江市| 张家界市| 贵溪市| 阿拉善左旗| 星座| 汨罗市| 锡林浩特市|