閱讀目錄:
基本介紹
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是內存使用情況,重要。
slow command log 服務端接受的命令日志。
Opserver 算是個比較輕量級的監控系統,部署修改都非常方便,比如增加連接數或者內存報警功能。