利用zabbix監控Vmware運行

效果圖

其實想監控Vmware已經不是一天兩天了,但一直因為沒有什么時間研究(其實是拖延癥)所以拖了快一年了也沒搞定。恰逢這次公司的VRO套件試用期到了,因為價格太貴的關系沒準備買正式版所以不得不找個方案來代替它。于是就花了一星期時間斷斷續續的搞了出來。
首先聊下我監控Vmware的幾個大類。

CPU 存儲 內存 設備信息 常規信息 網絡 VMS
總頻率 總容量 總容量 型號 OS版本 流量 OS版本
使用量 使用量 使用量 BIOS UUID Uptime 廣播 電源
使用% 使用% 使用% CPU參數 虛機數量 組播 vm state
IOPS 回收量 生產廠商 up/down MAC地址
I/O延時 Hostname 網絡錯誤
存儲可用性

還有些與系統運行關系不是太大的信息也有監控,但篇幅有限就不列舉了。
針對表格內會影響到系統運行的也都設置了觸發器閾值,方便發送郵件告警。
下面來聊下監控原理。
Vmware官方給出了一套python庫,允許開發者去讀寫Vmware系統。我們這里會用到的就是利用這個庫編寫的一個py腳本,一個shell腳本,以及一個xml監控模板。
這三個文件都不是我自己寫的,我也是抄的老外的-抄襲傳送門。不過這個腳本不太適用于我們不用proxy的用戶,下面簡書下使用方式。
1.搭建zabbix
這是常規操作,就不贅述了,需要教程的我這里給一個我寫的搭建教程鏈接-傳送門
2.導入xml模板
3.zabbix服務端安裝依賴

 # yum -y install sblim-wbemcli.x86_64 pywbem.noarch python2-pyvmomi.noarch python-setuptools jq python-setuptools zabbix-sender.x86_64
 # easy_install -U pysphere
 # easy_install -U docopt

4.zabbix服務端安裝JQ,如果不安裝的話shell腳本內一條變量類型轉換語句會無法執行。

wget http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -ivh epel-release-latest-7.noarch.rpm
yum repolist
yum install jq  #因為我的yum源里沒有JQ,所以還需要手動添加

如果不安裝JQ在執行自動發現時會收到如下報錯:

Item preprocessing step #1 failed: cannot apply multiplier "1048576" to value "/usr/lib/zabbix/externalscripts/agent_vsphere_wrapper:行281: jq: 未找到命令
cat: 寫入錯誤: 斷開的管道" of type "string": cannot convert value to numeric type
Item preprocessing step #1 failed: cannot apply multiplier "1048576" to value "/usr/lib/zabbix/externalscripts/agent_vsphere_wrapper:行281: jq: 未找到命令" of type "string": cannot convert value to numeric type

5.修改shell腳本
用文本編輯器打開agent_vsphere_wapper,將41和42行的grep "^Server=" /etc/zabbix/zabbix_proxy.conf改為grep "^Server=" /etc/zabbix/zabbix_server.conf。否則對于不用proxy的朋友會收到如下報錯。

value should be a JSON object  #原因為python腳本中使用了netstat -p參數,權限問題,zabbix_agentd是zabbix用戶啟動的,默認不能執行netstat -p等命令,導致從服務器取到的自動發現腳本為空。

6.將腳本放到服務器
將兩個腳本上傳到/usr/lib/zabbix/externalscripts/,并為兩個腳本授權后重啟zabbix server

chmod a+x agent_vsphere_wrapper agent_vsphere
service zabbix-server restart

7.在vmware上進行一些配置

  • 首先創建一個user權限的賬號,只讀權限即可。
  • 打開vmware ssh,因為后面開啟snmp和mob via都需要在命令行模式下進行。
  • 使用ssh終端連接vmware,執行如下命令:
vi /etc/vmware/snmp.xml  #用vi編輯器打開snmp配置文件并用以下內容替換原內容,保險起見請在修改器備份該文件。
<?xml version="1.0" encoding="ISO-8859-1"?>
<config>
    <snmpSettings>
        <enable>true</enable>
        <port>161</port>
        <syscontact></syscontact>
        <syslocation></syslocation>
        <EnvEventSource>indications</EnvEventSource>
        <communities>public</communities>
        <loglevel>info</loglevel>
        <authProtocol></authProtocol>
        <privProtocol></privProtocol>
    </snmpSettings>
</config>  
#保存退出后即可在esxi控制頁打開snmp,下面開啟mob via,命令如下
vi-cmd proxysvc/add_np_service "/mob" httpsWithRedirect /var/run/vmware/proxy-mob
#等你查到UUID后即可運行以下命令關閉
vi-cmd proxysvc/remove_service "/mob" "httpsWithRedirect"

8.用瀏覽器打開https://你的esxi服務器ip/mob/?moid=ha-host&doPath=hardware.systemInfo 輸入root賬號密碼即可查到系統UUID,記下此UUID以備后用。
9.下面就是常規操作了,添加主機,監控模板,此處需注意的是需要添加五條宏,具體如下:

{$USERNAME} zabbix  #這里是你創建的只讀用戶名
{$PASSWORD} YOUR_PASSWORD  #這里是你創建的只讀用戶名的密碼
{$URL}      https://你的esxi服務器ip/sdk
{$UUID}     你剛才查到的UUID
{$SNMP_COMMUNITY}     public

10.至此vmware的監控就完成了,在實施過程中就被上面提到的三個報錯坑了四天,原來沒想到是沒裝JQ,還想著自己去修改腳本把get到的字符串轉換成數值呢。
最后再聊聊我前面放的效果圖,這是利用Grafana讀zabbix數據做的Dashboard,是不是挺有逼格的,現在Grafana我玩得還不溜,等玩溜了再寫一篇分享給大家。
最后感謝大家的閱讀,下面我準備開始研究SQL的監控,軟件的同事對SQL性能還是挺關心的。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,825評論 6 546
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,814評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,980評論 0 384
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 64,064評論 1 319
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,779評論 6 414
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,109評論 1 330
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,099評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,287評論 0 291
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,799評論 1 338
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,515評論 3 361
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,750評論 1 375
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,221評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,933評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,327評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,667評論 1 296
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,492評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,703評論 2 380

推薦閱讀更多精彩內容

  • Zabbix簡介 Zabbix官方網站Zabbix中文文檔 本文系統環境是CentOS7x86_64, Zabbi...
    Zhang21閱讀 8,053評論 0 37
  • 1.寫在前面 本文主要介紹的是zabbix的編譯安裝過程,包含它的基礎環境LNMP,雖然zabbix官方一般推薦的...
    天之藍色閱讀 2,559評論 0 16
  • 一、監控系統介紹 硬件-->系統-->應用監控:1.發現故障2.監控業務系統業務流量監控的兩種方式:1.有agen...
    分享一些文檔閱讀 2,255評論 0 0
  • 一、架構設計及環境規劃: 架構設計圖: 架構設計說明: 1. 基礎架構為LAMP環境,采用keepalived實現...
    Bogon閱讀 10,623評論 0 10
  • 寫在前面 最近在做一些iOS啟動速度優化和App瘦身相關的工作,有時候需要橫向對比一下競品的數據,免不了要對一些商...
    pandora的技術博客閱讀 3,043評論 0 50