標籤:
閱讀目錄:
- 基本介紹
- 使用配置
- 部署執行個體
- 面板屬性
- 總結
基本介紹
Opserver是Stack Exchange的一個開源監控系統,基於Net、MVC開發,所以Net程式員可以輕鬆基於它二次開發。它主要監控:
- servers
- SQL clusters/instances
- redis
- elastic search
- exception logs
- haproxy
Opserver提供詳細的面板,用來快速展示被監控系統的總體情況。 下面Opserver的監控UI介面樣本,非常詳細:
使用配置
項目地址:https://github.com/opserver/Opserver
下載後用VS開啟或IIS直接部署即可,下面是它的支援監控系統的view目錄,結構比較清晰。
安全配置
Opserver系統本身後登陸驗證,支援3種安全認證方式:
<?xml version="1.0" encoding="utf-8"?><SecuritySettings provider="AD"> <!-- 可選, 下面的網路可以不用驗證直接存取 --> <InternalNetworks> <Network name="SE Internal" cidr="10.0.0.0/8" /> </InternalNetworks></SecuritySettings><!-- 每個人都是管理都可訪問<SecuritySettings provider="alladmin" />-->
如果使用活動目錄驗證,可以直接在web.config配置ViewGroups、AdminGroups,也可以單獨在每個系統監控json設定檔裡面添加ViewGroups、AdminGroups:
"viewGroups": "*","adminGroups": "SysAdmins","user": "user","password": "pass","adminUser": "adminuser","adminPassword": "adminpass",
監控配置
配置監控的地方在/Config/目錄,Stack Exchange提供對應系統的配置樣本, 如果沒有配置任何系統監控檔案,瀏覽OpServer頁面時,會報‘No Configuration‘的警告提示。 這裡以Redis為例,監控配置如下:
{ "allServers": { "name": "All", "instances": [ { "name": "本地master", "port": "6379" }, { "name": "本地slave1", "port": "6380" }, { "name": "本地master2", "port": "6382" } ] }, "Servers": [ { "name": "127.0.0.1" } ]}部署執行個體
認證配置<SecuritySettings provider="alladmin">所有人都是管理員,開啟瀏覽器訪問,輸入帳號admin,密碼admin:
可以看到有2組執行個體,其中6380是slave,6379是master,從圖表上可以清晰看到層架關係。
執行個體列表:
點擊單個Redis執行個體進去看到。
面板屬性
面板展示的屬性都是可以通過redis info命令擷取到,opserver做了更清晰的展示。
Ops(/sec) 每秒處理量
memory(used)即used_memory_rss(used_memory)
used_memory_rss : 從作業系統的角度,返回 Redis 已指派的記憶體總量(俗稱常駐集大小)。這個值和 top 、 ps等命令的輸出一致。
used_memory_peak : Redis 的記憶體消耗峰值(以位元組為單位)
used_memory : 由 Redis 分配器分配的記憶體總量,以位元組(byte)為單位
Summary是總體概覽部分。
Memory是記憶體使用量情況,重要。
persistence 是RDB和AOF的狀態。 keyspace key儲存的情況,analyze進去可以查看詳細分布。 stats 用戶端命令的key命中率和處理量 clients 查看有哪個ip(或機器名)過來的串連數多,很方便的定位到那台應用端機器長時間沒有釋放串連,重要。
slow command log 服務端接受的命令日誌。
總結
Opserver 算是個比較輕量級的監控系統,部署修改都非常方便,比如增加串連數或者記憶體警示功能。
Redis系列(五)-Opserver的監控