Redis系列(五)-Opserver的监控
阅读目录:
基本介绍
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 算是个比较轻量级的监控系统,部署修改都非常方便,比如增加连接数或者内存报警功能。
如果您认为这篇文章还不错或者有所收获,可以点击右下角的【推荐】按钮,因为你的支持是我继续写作,分享的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~