⑴ zabbix 怎麼監控sqlserver
zabbix之MSSQL操作
http://waringid.blog.51cto.com/65148/1268454/
我大概看了一下,發現挺復雜的。你去看看吧。
⑵ zabbix怎麼監控上百台電腦
最近一直在研究Zabbix監控Windows機器,涉及到如何快速安裝agent,如何修改和完善windows監控模板等等。想把自己的經驗給大家分享一下,希望對大家有所幫助。
1)安裝agent客戶端
首先分享一下用bat寫的自動化安裝Windows機器的agentd安裝腳本。
@echo off
color fd
cd \
#IP from Zabbix Server or proxy where data should be send to.
Set zabbix_server_ip=IP
echo Creating zabbix install dir
mkdir c:\zabbix
mkdir c:\zabbix\conf
mkdir c:\zabbix\bin
mkdir c:\zabbix\log
mkdir c:\zabbix\install_file
echo Copying Zabbix install file
x \\共享伺服器IP\Share\zabbix_agents_2.2.1.win c:\zabbix\install_file /s
/y C:\zabbix\install_file\conf\zabbix_agentd.win.conf C:\zabbix\conf\
echo Modiy zabbix configuration files
echo LogFile=c:\zabbix\log\zabbix_agentd.log >> C:\zabbix\conf\zabbix_agentd.win.conf
echo Server=%zabbix_server_ip% >> C:\zabbix\conf\zabbix_agentd.win.conf
echo Hostname=%COMPUTERNAME% >> C:\zabbix\conf\zabbix_agentd.win.conf
echo StartAgents=10 >> C:\zabbix\conf\zabbix_agentd.win.conf
echo Timeout=30 >> C:\zabbix\conf\zabbix_agentd.win.conf
echo
echo Copy zabbix start-up file
if %processor_architecture% EQU x86 /y C:\zabbix\install_file\bin\win32 C:\zabbix\bin\
if %processor_architecture% EQU AMD64 /y C:\zabbix\install_file\bin\win64 C:\zabbix\bin\
echo start zabbix servic
C:\zabbix\bin\zabbix_agentd.exe -i -c C:\zabbix\conf\zabbix_agentd.win.conf
echo start zabbix services
net start "Zabbix Agent"
echo set zabbix service auto
sc config "Zabbix Agent" start= auto
echo Zabbix agentd Configuration and Install Successful
如果監控Winows機器有上百台,用上面的腳本安裝agent效率是提升了很多,但還是不夠理想,下面給大家分享一個小工具(http://technet.microsoft.com/en-us/Sysinternals/bb897553.aspx)。
PsExec工具類似於Telnet,並且不需要在遠程訪問伺服器上面安裝客戶端軟體即可執行安裝程序,批量執行安裝腳本,絕對不比Shell腳本遜色。下面看看其用法:
Usage: psexec [\\computer[,computer2[,...] | @file]][-u user [-p psswd][-n s][-r servicename][-h][-l][-s|-e][-x][-i [session]][-c [-f|-v]][-w directory][-d][-<priority>][-a n,n,...] cmd [arguments]
只需知道以下幾個參數即可:
@file PsExec遠程安裝agent主機列表,如IP地址,主機名。
-u 指定用於登錄遠程計算機的用戶名。
-p 指定用戶名的密碼。
-c 指定的程序復制到遠程系統來執行,即安裝腳本。
實例:
PsExec.exe @ComputerList.txt -u "sfzhang" �c zabbix_agentd_install_windows.bat
2)獲取監控性能指標
Zabbix監控windows常見的KEY可以參考官方文檔(https://www.zabbix.com/documentation/2.2/manual/config/items/itemtypes/zabbix_agent/win_keys):
其中最常用的KEY是perf_counter[counter,<interval>],可以獲取windows性能監視器的數據。Windows性能監視器的數據可以通過typeperf獲取
,
可以把所有的性能監視器里數據重定向到文本文件裡面查看typeperf -qx > win2003_Performance.txt。 下面是獲取windows CPU使用率。
定義監控項的Key:
定義觸發器trigger,5分鍾之內如果CPU使用率大於85%則報警。
3)性能指標的展示
CPU利用率,CPU和disk Idle time。
4)Zabbix監控windows網卡流量,zabbix 監控windows網卡流是監控所有介面的流量。
使用Zabbix Macro能解決監控本地網卡的需求。其中IPADDRESS就是Zabbix Macro,表示被監控機的IP地址,用下面Key即可取到進出流量。
net.if.in[{IPADDRESS},bytes]
net.if.out[{IPADDRESS},bytes]
5)其它性能指標:
物理磁碟的讀響應時間:perf_counter["\PhysicalDisk(_Total)\Avg. Disk sec/Read"]
物理磁碟的寫響應時間:perf_counter["\PhysicalDisk(_Total)\Avg. Disk sec/Write"]
內存的使用百分率:vm.memory.size[pused]
CPU負載:system.cpu.load[all,avg1]
總結:Zabbix自帶監控Windows機器模板裡面監控指標很少,很多指標需要優化,並且需要通過Windows性能監視器獲取數據,無論是系統層面(負載,內存利用率等)還是應用層面(IIS,SQLserver等)的指標都可以獲取到。
⑶ 請教zabbix如何監控mssql
監控mssql,需要利用zabbix_agentd.conf配置文件中的PerfCounter高級參數。
設置如下:
PerfCounter = db_pages,"\SQLServer:Buffer Manager()\Database pages",60
PerfCounter = db_free_pages,"\SQLServer:Buffer Manager()\Free pages",60
PerfCounter = db_data_file_size,"\SQLServer:Databases(DATABASE_NAME)\Data File(s) Size (KB)",60
PerfCounter = db_log_file_size,"\SQLServer:Databases(DATABASE_NAME)\Log File(s) Size (KB)",60
PerfCounter = db_userconns,"\SQLServer:General Statistics()\User Connections",60
PerfCounter = db_server_mem,"\SQLServer:Memory Manager()\Total Server Memory (KB)",60
PerfCounter = db_cpu_load,"\Process(sqlservr)\% Processor Time",60
可以實現對SQLServer部分性能的監控.其中數據文件和日誌文件監控中,要將實際監控的資料庫名字
替代"DATABASE_NAME"。
監控項的key分別指向上面定義的參數,如"db_pages""db_free_pages"等。
要想顯示windows主機可以監控的性能計數列表,可以在CMD中輸入typeperf-qx
獲取所有項。
⑷ linux入門先學什麼
先祝賀你選擇學習Linux,你可能即將踏上Linux的工作之旅,出發之前,讓我帶你來看一看關於Linux和Linux運維的一切。來源於——公眾號:馬哥linux運維
圖1-2 運維發展過程
手工管理階段:業務流量不大,伺服器數量相對較少,系統復雜度不高。對於日常的業務管理操作,大家更多的是逐台登錄伺服器進行手工操作,屬於各自為戰,每個人都有自己的操作方式,缺少必要的操作標准、流程機制,比如業務目錄環境都是各式各樣的。
工具批量操作階段:隨著伺服器規模、系統復雜度的增加,全人工的操作方式已經不能滿足業務的快速發展需要。因此,運維人員逐漸開始使用批量化的操作工具,針對不同操作類型出現了不同的腳本程序。但各團隊都有自己的工具,每次操作需求發生變化時都需要調整工具。這主要是因為對於環境、操作的規范不夠,導致可程序化處理能力較弱。此時,雖然效率提升了一部分,但很快又遇到了瓶頸。操作的質量並沒有太多的提升,甚至可能因為批量執行而導致更大規模的問題出現。我們開始建立大量的流程規范,比如復查機制,先上線一台伺服器觀察10分鍾後再繼續後面的操作,一次升級完成後至少要觀察20分鍾等。這些主要還是靠人來監督和執行,但在實際過程中執行往往不到位,反而降低了工作效率。
平台管理階段:在這個階段,對於運維效率和誤操作率有了更高的要求,我們決定開始建設運維平台,通過平台承載標准、流程,進而解放人力和提高質量。這個時候對服務的變更動作進行了抽象,形成了操作方法、服務目錄環境、服務運行方式等統一的標准,如程序的啟停介面必須包括啟動、停止、重載等。通過平台來約束操作流程,如上面提到的上線一台伺服器觀察10分鍾。在平台中強制設定暫停檢查點,在第一台伺服器操作完成後,需要運維人員填寫相應的檢查項,然後才可以繼續執行後續的部署動作。
系統自調度階段:更大規模的服務數量、更復雜的服務關聯關系、各個運維平台的林立,原有的將批量操作轉化成平台操作的方式已經不再適合,需要對服務變更進行更高一層的抽象。將每一台伺服器抽象成一個容器,由調度系統根據資源使用情況,將服務調度、部署到合適的伺服器上,自動化完成與周邊各個運維系統的聯動,比如監控系統、日誌系統、備份系統等。通過自調度系統,根據服務運行情況動態伸縮容量,能夠自動化處理常見的服務故障。運維人員的工作也會前置到產品設計階段,協助研發人員改造服務使其可以接入到自調度系統中。
在整個運維的發展過程中,希望所有的工作都自動化起來,減少人的重復工作,降低知識傳遞的成本,使我們的運維交付更高效、更安全,使產品運行更穩定。對於故障的處理,也希望由事後處理變成提前發現,由人工處理變成系統自動容災。
五、2018年Linux運維必須抓住的前沿技能
這是技術世界正在發生的深刻變革的冰山一角,那麼問題來了? 作為傳統的運維該如何轉型呢?
這里給出一點小的建議: 大致需要學習下這四個部分:
自動化運維(Ansible,Puppet,Saltstack等)
Devops(Docker,K8s,Jenkins,Jira等),
雲服務技術(虛擬化、OpenStack、AWS及阿里雲各種產品服務架構等)
python