文章目錄
如何使用 Opserver 來監控 Redis
之前參加 twmvc 活動,由阿砮介紹 Stack Overflow open source 的監控專案 - OpServer,不僅是 open source 專案又是 .net MVC 寫的,實在非常有親切感,之前因為專案需要曾經嘗試安裝,最近為團隊安裝時發現又忘得差不多了XD 所以筆記一下
文章大綱
- 安裝 Opserver
- Opserver 安全性設定
- 監控 Redis
安裝 Opserver
- clone
- 從 GitHub 下載(clone)
- 解壓縮檔案
開啟專案並設定啟始專案
預設為
Opserver.Core
Opserver
專案,按右鍵,選Set as StartUp Project
編譯 (Build)
Opserver 安全性設定
沒找到
SecuritySettings.config
的錯誤加入
SecuritySettings.config
Opserver
專案,Config
資料夾下有SecuritySettings.config.example
rename
SecuritySettings.config.example
為SecuritySettings.config
依需求設定權限(在預設網址後面加上
/about
可以顯示現行安全設定)AD (default)
>`<SecuritySettings provider="AD" />` ![5AD](https://cloud.githubusercontent.com/assets/3851540/21705716/89100170-d3fc-11e6-9dc7-8b3576ba93b4.png)
alladmin
>`<SecuritySettings provider="alladmin" />` ![6alladmin](https://cloud.githubusercontent.com/assets/3851540/21705715/88f40ab0-d3fc-11e6-96bf-c8d44582fac3.png)
View All >
<SecuritySettings provider="" />
![7viewall](https://cloud.githubusercontent.com/assets/3851540/21705717/89103334-d3fc-11e6-8a9b-b024b7c8e224.png)
如果不是使用
AD
,畫面需要帳號密碼,請使用admin
/admin
監控 Redis
加入
RedisSettings.json
![9redisconfig](https://cloud.githubusercontent.com/assets/3851540/21705709/88ccacfe-d3fc-11e6-877a-c12845224bb6.png)
- rename
RedisSettings.json.example
為RedisSettings.json
- rename
RedisSettings.json
連線資訊有兩種設定方式只設定
Servers
- 外層
name
為 ip or host name 內層
name
為顯示名稱; port 為 redis port 號{ "Servers": [{ "name": "127.0.0.1", "instances": [ { "name": "local", "port": "6379" } ] } ] }
- 外層
allServers
與Servers
搭配allServers
instances name 表示顯示名稱;port 為 redis port 號Servers
name 填 host ip or name{ "allServers": { "name": "test", "instances": [ { "name": "local", "port": "6379" } ] } , "Servers": [{ "name": "127.0.0.1" } ] }
connection 邏輯可以參考
\Opserver.Core\Data\Redis\RedisModule.cs
預設值可以參考
\Opserver.Core\Settings\RedisSettings.cs
- 更新頻率(RefreshIntervalSeconds) 預設
30 秒
- redis instance 預設 port
6379
- 更新頻率(RefreshIntervalSeconds) 預設
20170324 補充:需要密碼連線 (requirepass)
如果 redis 需使用密碼才能連線,請參加以下設定方式
只設定
Servers
在
Servers
的instances
object 中加上password
設定"Servers": [ { "name": "127.0.0.1", "instances": [ { "name": "local", "port": "6379","password":"password" } ] } ]
allServers
與Servers
搭配在
allServers
的instances
object 中加上password
設定"allServers": { "name": "test", "instances": [ { "name": "local", "port": "6379", "password":"password" } ] }, "Servers": [{ "name": "127.0.0.1" } ]
監控結果
列表頁
詳細頁
心得
設定的工不多,只是文件稍嫌不足,屬性名稱也多有重複,不是很好理解,但整體架設還是很方便
參考資料
文章作者 Yowko Tsai
上次更新 2021-10-29
授權合約
本部落格 (Yowko's Notes) 所有的文章內容(包含圖片),任何轉載行為,必須通知並獲本部落格作者 (Yowko Tsai) 的同意始得轉載,且轉載皆須註明出處與作者。
Yowko's Notes 由 Yowko Tsai 製作,以創用CC 姓名標示-非商業性-相同方式分享 3.0 台灣 授權條款 釋出。