這幾天一直在折騰虛擬機的監測,順便記錄下一些心得:
使用zabbix監測微軟雲上的虛擬機
1. 在ms azure管理界面創建一台ubuntu 12.04的虛機, 並添加端口udp 161(snmp 訪問需要)
2. 安裝SNMP到這台機器上(linux)。
1. sudo apt-get install snmp
2. sudo apt-get install snmpd
3. sudo vi /etc/snmp/snmpd.conf
將這一行agentAddress udp:127.0.0.1:161注釋掉,即 #agentAddress udp:127.0.0.1:161
然后將原來的這一行#agentAddress udp:161,udp6:[::1]:161去掉注釋,即agentAddress udp:161,udp6:[::1]:161這樣便可以實現snmp的遠程監 聽了。
4. snmpwalk -v 1 -c public *******(虛機的私有IP或dns名稱) .1.3.6.1.2.1.2.2.1.2 檢查結果有信息則成功
3. Zabbix 2.2 for Ubuntu 12.04 LTS
1.敲如下命令開始安裝ZABBIX.(www.zabbix.com官網)
1.wget http://repo.zabbix.com/zabbix/2.2/ubuntu/pool/main/z/zabbix-release/zabbix-release_2.2-1+precise_all.deb
2.sudo dpkg -i zabbix-release_2.2-1+precise_all.deb
3.sudo apt-get update
2.安裝zabbix包
sudo apt-get install zabbix-server-mysql zabbix-frontend-php
3.*安裝代理*(可選,如果你想用ZABBIX的監控代理必須要裝。本人沒有安裝代理,用snmp實施監控)
apt-get install zabbix-agent
4.編輯/etc/apache2/conf.d/zabbix文件
sudo vi /etc/apache2/conf.d/zabbix
# php_value date.timezone Europe/Riga 這行去掉#號即取消注釋。
php_value date.timezone Europe/Riga 改成這樣
5. 重啟服務service apache2 restart
如此,ZABBIX服務器算是安裝完畢了,接着就需要登入到ZABBIX上,去創建你需要的監控目標和內容了。
4.創建host和item及其配置
1.打開瀏覽器訪問:http://***.chinacloudapp.cn/zabbix < http://***.chinacloudapp.cn為你創建的虛擬機的dns名稱>/
2.輸入默認的賬號admin 密碼zabbix 登入。
3.想要修改密碼或者添加用戶就如圖選擇,點擊admin進去后點擊change password即可。
4. 創建Host.(想監測就必須創建)
1. 安裝如圖點擊,創建一台新的host。(默認有一台zabbix server,不用管,它只監測你安裝ZABBIX的機器,而且監測狀態是關閉的。)
2. 輸入信息如下圖,保存。
3. 創建item,點擊host右邊的item,再點右上角的create item。(創建你想監測的信息項)
只需要填寫如上必要信息就可以了,其他行可以不管。點保存。
4. 完成后就可以到如圖位置去查看目前監測情況了。
到此,算是成功的監測到了,雲上的虛擬器的狀態。
5.注意/錯誤排查:
新建的host開始工作后右邊方塊snmp會變綠,如果變紅色說明沒有連通你的監測機器,試着在本地調用snmpwalk -v 1 -c public *******(虛機的私有IP) .1.3.6.1.2.1.2.2.1.2來看snmp服務運行狀況.或者登入到ms azure管理界面查看虛擬機是否開啟了161端口(私有)。
檢查snmpd.conf文件是否配置正確,檢查sump community等信息
item成功起來后,右邊方塊會變綠色enable,如果變成紅色,把鼠標移動到那,看看錯誤信息,然后逐一排查。
6. 安裝配置zabbix agent on windows
詳見官網:https://www.zabbix.com/documentation/2.2/manual/appendix/install/windows_agent
https://www.zabbix.com/documentation/2.2/manual/concepts/agent
1.下載agent
2. 下載完解壓后有2個文件夾,bin and conf,把conf里的文件復制到c:盤下。然后編輯zabbix_agentd.win.conf如下:
Server=ss.ss.ss.ss(你部署zabbix server機器的dns名稱,最好寫私有ip)
Hostname=xx.xx.xx.xx (一般都用本機的ip地址,由於雲上ip不穩定,建議使用機器名,注意需要保持與監控添加的host保持一致)
LogFile=c:\zabbix\log\zabbix_agentd.log
Timeout=3
3. 修改完成之后運行cmd命令c:\zabbix\zabbix_agentd.exe –i 成功后提示installed successfully.
4. 啟動agent:c:\zabbix\zabbix_agentd.exe –s 成功后提示started successfully。
5. 參數:
Options:
-c --config <file> Specify alternate configuration file (default is c:\zabbix_agentd.conf).
-h --help Display help information.
-V --version Display version number.
-p --print Print known items and exit.
-t --test <item key> Test single item and exit.
Functions:
-i --install Install Zabbix agent as a service.
-d --uninstall Uninstall Zabbix agent service.
-s --start Start Zabbix agent service.
-x --stop Stop Zabbix agent service.
7. snmp oid附錄:
http://tools.cisco.com/Support/SNMP/do/BrowseOID.do?local=en這個網址可以吧snmp oid和object name互換。
常用的oid (Linux)
CPU Statistics
Load ## 機器負載
1 minute Load: .1.3.6.1.4.1.2021.10.1.3.1
5 minute Load: .1.3.6.1.4.1.2021.10.1.3.2
15 minute Load: .1.3.6.1.4.1.2021.10.1.3.3
CPU
percentage of user CPU time: .1.3.6.1.4.1.2021.11.9.0
raw user cpu time: .1.3.6.1.4.1.2021.11.50.0
percentages of system CPU time: .1.3.6.1.4.1.2021.11.10.0
raw system cpu time: .1.3.6.1.4.1.2021.11.52.0
percentages of idle CPU time: .1.3.6.1.4.1.2021.11.11.0
raw idle cpu time: .1.3.6.1.4.1.2021.11.53.0
raw nice cpu time: .1.3.6.1.4.1.2021.11.51.0
Memory Statistics
Total Swap Size snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.3.0
UCD-SNMP-MIB::memTotalSwap.0 = INTEGER: 489940 kB
Available Swap Space snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.4.0
UCD-SNMP-MIB::memAvailSwap.0 = INTEGER: 284752 kB
Total RAM in machine snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.5.0
UCD-SNMP-MIB::memTotalReal.0 = INTEGER: 255672 kB
The available real memory snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.6.0
UCD-SNMP-MIB::memAvailReal.0 = INTEGER: 14456 kB
the Total free memory in the machine (free Swap memory + free RAM memory)
snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.11.0
UCD-SNMP-MIB::memTotalFree.0 = INTEGER: 298804 kB
Total RAM Shared snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.13.0
UCD-SNMP-MIB::memShared.0 = INTEGER: 0 kB
Total RAM Buffered snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.14.0
UCD-SNMP-MIB::memBuffer.0 = INTEGER: 2888 kB
Total Cached Memory snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.4.15.0
UCD-SNMP-MIB::memCached.0 = INTEGER: 47816 kB
Disk Statistics
The snmpd.conf needs to be edited. Add the following (assuming a machine with a single ‘/’ partition):
disk / 100000 (or)
includeAllDisks 10% for all partitions and disks
The OIDs are as follows
Path where the disk is mounted: .1.3.6.1.4.1.2021.9.1.2.1
Path of the device for the partition: .1.3.6.1.4.1.2021.9.1.3.1
Total size of the disk/partion (kBytes): .1.3.6.1.4.1.2021.9.1.6.1
Available space on the disk: .1.3.6.1.4.1.2021.9.1.7.1
Used space on the disk: .1.3.6.1.4.1.2021.9.1.8.1
Percentage of space used on disk: .1.3.6.1.4.1.2021.9.1.9.1
Percentage of inodes used on disk: .1.3.6.1.4.1.2021.9.1.10.1
System Uptime: .1.3.6.1.2.1.1.3.0
Network
ifInOctets .1.3.6.1.2.1.2.2.1.10
ifOutOctets . 1.3.6.1.2.1.2.2.1.16
監測網速的話,可以這樣做:取2個時間點的值,相減后除以時間間隔就行了,如:
下載:12:00:00 時間點調用.1.3.6.1.2.1.2.2.1.10取值,得到a。
12:00:10時間點調用.1.3.6.1.2.1.2.2.1.10取值,得到b。
則下載網速為|b-a|/(12:00:10 – 12:00:00)。上傳雷同,調用. 1.3.6.1.2.1.2.2.1.16取值就可以了。
Windows
Cpu: .1.3.6.1.2.1.25.3.3.1.2
(.iso.org.dod.internet.mgmt.mib-2.host.hrDevice.hrProcessorTable.hrProcessorEntry.hrProcessorLoad) in HOST-RESOURCES-MIB.
Disk and memory
Net: 同linux