1. 程式人生 > >採用Opserver來監控你的ASP.NET專案系列(三、監控你的伺服器狀態)

採用Opserver來監控你的ASP.NET專案系列(三、監控你的伺服器狀態)

原文: 採用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
     可以有多臺,可以填 伺服器名稱 或是 IP地址
  • 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 介面看到此伺服器資訊。

寫在最後

至此我們就完成了監控伺服器的所有操作.喜歡的請關注一下,~覺得不錯的可以點個推薦,當然也歡迎大神批評指正.~