项目发布后,对于我们程序员来说,项目还不是真正的结束,保证项目的稳定运行也是非常重要的,而对于服务器的监控,就是保证稳定运行的手段之一。对数据库、Redis、ES 等一些中间件的监控,也都是非常重要。
所以,今天给大家推荐一个轻量级的开源监控解决方案。
项目简介
这是有 Stack Overflow 的开源监控产品,基于.Net Core 开发的监控解决方案。它可以独立监控多个系统,监控信息包含 CPU、内存、网络、硬件等有关信息,它为每个监控的系统提供一个总体监控信息,方便我们运维方便查看服务器情况与定位问题。
技术架构
1、跨平台:基于.NetCore 开发,支持 Windows、Mono、Liunx、Windows Azure、Docker。
2、技术栈 .Net Core 6.0 + Asp.Net Mvc。
可监控服务
- 服务器 / 交换机
- SQL Server 单例与集群
- Redis
- Elasticsearch
- HAProxy
- PagerDuty
- CloudFlare DNS
项目结构
Opserver.Core 为核心代码,Opserver.Web 为监控站点。
配置示例
安全配置
{
"provider": "EveryonesAnAdmin",
"apiKey": "<Global API Key>",
"internalNetworks": [
{
"name": "My Internal",
"cidr": "10.0.0.0/8"
}
],
"viewEverythingGroups": "Opserver-View",
"adminEverythingGroups": "Opserver-Admins;Opserver-MoreAdmins",
"scopes": [ "openid", "email" ],
"clientId": "<Client ID>",
"clientSecret": "<Client Secret>",
"authorizationUrl": "https://example.org/oauth2/authorize",
"accessTokenUrl": "https://example.org/oauth2/token",
"userInfoUrl": "https://example.org/oauth2/token",
"nameClaim": "nameIdentifier",
"groupsClaim": "groups"
}
SqlServer 监控配置
"Sql": {
"defaultConnectionString": "Data Source=127.0.0.1;Initial Catalog=master;User ID=sa;Password=123456",
"clusters": [
{
"name": "127.0.0.1",
"refreshIntervalSeconds": 20,
"nodes": [
{
"name": "127.0.0.1",
"connectionString": "Data Source=127.0.0.1;Initial Catalog=master;User ID=sa;Password=123456"
}
]
}
],
"instances": [
{
"name": "work",
"connectionString": "Data Source=127.0.0.1;Initial Catalog=master;User ID=sa;Password=123456"
}
]
},
监控截图
登录界面
监控主界面
任务列表
项目地址https://github.com/opserver/Opserver
© 版权声明
博主的文章没有高度、深度和广度,只是凑字数。利用读书、参考、引用、抄袭、复制和粘贴等多种方式打造成自己的纯镀 24k 文章!如若有侵权,请联系博主删除。
喜欢就点个赞吧