本文主要介紹Windows的WMI與PowerShell實現實時告警,如若覺得麻煩,可用MSSQL的WMI alerts,相對更為簡單。
為什么考慮MSSQL與WMI、PowerShell三者結合?它們可以做什么?
WMI/PowerShell都是Windows的插件及功能,用它們來實現MSSQL監控、自動化作業等等,無疑是最簡單方便的。
為什么不考慮用監控工具?
免費的工具不能滿足需求,強大的工具(SCOM)太貴,中小公司很少考慮購買。
一、實時告警方式
何為實時告警?也就是一旦發現告警信息,能立即通知到相應的人員。針對實時告警信息的接收方式,通過比較短信/郵件/QQ/微信,在PowerShell下以微信最為方便、實時性最高。
二、WMI事件
首先確保WMI服務是啟動的
1) EventFilter
事件過濾器,主要用于篩選WMI的事件信息
2) Consumer
事件消費者,主要用于觸發動作:如調用腳本、記錄日志、執行命令等
3) Binding
事件綁定,主要用于將EventFilter與Consumer進行綁定,即可實現實時動作
對于EventFilter、Consumer與Binding的結合,且稱為WMI Monitor,PowerShell為PS,方便下文引用
三、實時告警實現原理
大致的原理如下:
WMI Monitor—>數據庫服務器(內網)—>PowerShell—>監控服務器(內外網)—>發送微信
在MSSQL服務器注冊WMI Monitor,通過PowerShell遠程調用監控服務器上的發送微信腳本。PowerShell與WMI均可實現遠程訪問,至于為什么使用PowerShell,是由于相對簡單,較為安全。
四、監控類別
MSSQL+WMI+PS
1) 數據庫DDL操作
2) 數據庫鏡像狀態變化
3) 死鎖
4) update/delete語句(由SQL Server采集數據,WMI觸發實時告警)
.....
五、自動化作業類別
MSSQL+PS
1) 備份文件定期刪除
2) 備份文件可用性驗證
3) 備份文件定期還原校驗
.....
后續篇章將一一展開介紹各功能及類別。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。