採用Opserver來監控你的ASP.NET專案系列(三、監控你的伺服器狀態)
之前有過2篇關於如何監控ASP.NET core專案的文章,有興趣的也可以看看.
今天我們主要來介紹一下,如何使用Opserver監控我們的伺服器狀態.
Opserver的功能其實很強大,他可以用於連線任何支援Bosun, Orion, or direct WMI監控資料。
大概效果如下:
正文
1.通過Windows自帶的WMI監控伺服器
首先,我們找到相關的配置檔案,修改配置檔案的名稱 DashboardSettings.json.example
DashboardSettings.json
然後修改DashboardSettings.json設定連線地址
providers,這裡我們以WMI為例,如下:
{ "providers": { "wmi": { "nodes": [ "USER-20170316IW" ], // List of nodes to monitor "staticDataTimeoutSeconds": 300, // (Optional) How long to cache static data (node name, hardware, etc.) - defaults to 5 minutes"dynamicDataTimeoutSeconds": 5, // (Optional) How long to cache dynamic data (utilizations, etc.) - defaults to 30 seconds "historyHours": 2, // (Optional) How long to retain data (in memory) - defaults to 24 hours "username": "Administrator" } }
解釋一下引數說明:
nodes
StaticDataTimeoutSeconds
快取靜態資料(節點名稱、硬體等)要多長時間-預設為5分鐘DynamicDataTimeoutSeconds
快取動態資料(CPU,載入時間等)要多長時間-預設為30秒HistoryHours
保留記錄的時長,預設為 2 小時Username
遠端伺服器的賬戶名Password
遠端伺服器的密碼(PS,我這裡因為連線的是本機 所以就不需要了.)
設定完連線之後,我們可以設定我們的警戒值,如下:
設定警戒值
key | 說明 |
---|---|
cpuWarningPercent |
cpu 用量警戒(黃色) |
cpuCriticalPercent |
cpu 用量危險(紅色) |
memoryWarningPercent |
記憶體用量警戒(黃色) |
memoryCriticalPercent |
記憶體用量危險(紅色) |
diskWarningPercent |
磁碟空間 用量警戒(黃色) |
diskCriticalPercent |
磁碟空間 用量危險(紅色) |
JSON配置直接新增在providers節點下即可.
如下:
{ "providers":{ "cpuWarningPercent": 50, "cpuCriticalPercent": 60, "memoryWarningPercent": 90, "memoryCriticalPercent": 95, "diskWarningPercent": 85, "diskCriticalPercent": 95 } }
多臺伺服器的情況下,伺服器的配置不一定相同,所以需要根據伺服器配置 單獨設定報警值,我們可以新增categories節點,並配置如下:
"categories": [ { "name": "第一臺", // Name for this group of servers "pattern": "-sql", "cpuWarningPercent": 20, "cpuCriticalPercent": 60, "memoryWarningPercent": 98, "memoryCriticalPercent": 99.2 }, "name": "第二臺", "pattern": "-sql", "cpuWarningPercent": 20, "cpuCriticalPercent": 60, "memoryWarningPercent": 98, "memoryCriticalPercent": 99.2 } ]
這樣,我們就完成了我們使用WMI採集資訊,並展示在OpServer上的全部工作.
當然,官方推薦的是使用bosun +scollector+OpServer的形式來採集和顯示
所以,我們下面就來講講(不過我本人並沒有實踐..資源實在有限)
2.通過bosun +scollector監控伺服器
1、bosun 快速安裝(當然,也有不使用Docker的..不過說實話..太複雜了..也許就是因為太複雜了,才放到容器裡簡化安裝了吧)
- 安裝docker
..具體我就不說了,直接移步安裝步驟官網:https://docs.docker.com/engine/installation/
- 在docker中安裝bosun
使用命令“docker run -d -p 4242:4242 -p 8070:8070 stackexchange/bosun
”,安裝bosun,檔案大概200多M,等待完成即可。
- 檢查是否安裝成功
訪問網站http://docker-server-ip:8070,顯示bosun介面,即安裝成功。此時,本機監控資料已經被採集,可以檢視相應資料。
2、伺服器agent資料採集器(scollector)
可以到 http://bosun.org/scollector/ 下載scollector.
以windows 為例,下載“scollector-windows-amd64.exe"後,用管理員身份執行”cmd.exe"。cd 到檔案目錄,在命令視窗輸入“scollector-windows-amd64 -h docker-server-ip:8070"
顯示如下資訊,表示與bosun服務建立連線。命令如下:
C:\>scollector-windows-amd64 -h 192.168.1.101:8070 2016/11/18 15:59:19 info: main.go:213: OpenTSDB host: http://192.168.1.101:8070
然後可在bosun items 介面看到此伺服器資訊。
寫在最後至此我們就完成了監控伺服器的所有操作.喜歡的請關注一下,~覺得不錯的可以點個推薦,當然也歡迎大神批評指正.~