You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
StarsL.cn
778b23d571
|
1 year ago | |
---|---|---|
docs | 1 year ago | |
flask-consul | 1 year ago | |
screenshot | 2 years ago | |
tools | 2 years ago | |
vue-consul | 1 year ago | |
LICENSE | 3 years ago | |
Makefile | 2 years ago | |
README.md | 1 year ago | |
docker-compose.yml | 2 years ago | |
k8s-deploy.yaml | 2 years ago | |
tensuns-arch.png | 1 year ago | |
thanks.png | 3 years ago |
README.md
🏷目录
🦄概述
ConsulManager是一个使用Flask+Vue开发,基于Consul的WEB运维平台,弥补了Consul官方UI对Services管理的不足;并且基于Consul的服务发现与键值存储:实现了各云厂商多种资源与Prometheus的无缝同步,以及对各类监控资源的优雅管理与展示。
🌈功能描述
🎡1. Consul管理(比官方更优雅的Consul Web UI)
- 支持Consul Services的增删改查,可以批量删除Service。
- 直观的查看每个Services实例的信息,及整体Services的健康状态。
- 可以便捷的对Services实例的Tags、Meta、健康检查配置管理与查询。
💎2. 自建与云资源监控管理(ECS/RDS/Redis)
基于Consul实现Prometheus监控目标的自动发现。
-
✔当前已支持对接阿里云、腾讯云、华为云。
- ⭐支持多云ECS/RDS/Redis的资源、分组、标签自动同步到Consul并接入到Prometheus自动发现!(并提供云资源信息查询与自定义页面)
- ⭐支持多云ECS信息自动同步到JumpServer。
- ⭐支持多云账户余额与云资源到期日设置阈值告警通知。
- ⭐支持作为Exporter接入Prometheus:Prometheus增加ConsulManager的JOB后可抓取云厂商的部分MySQL/Redis指标。(弥补原生Exporter无法获取部分云MySQL/Redis指标的问题)
-
✔支持自建主机/MySQL/Redis接入WEB管理,支持增删改查、批量导入导出,自动同步到Consul并接入到Prometheus监控!
-
✔提供了按需生成Prometheus配置与ECS/MySQL/Redis告警规则的功能。
-
✔设计了多个支持同步的各字段展示的Node_Exporter、Mysqld_Exporter、Redis_Exporter Grafana看板。
🚀3. 站点与接口监控管理
基于Consul + Prometheus + Blackbox_Exporter实现站点的自动发现与监控。
- 使用Web页面即可对监控目标增删改查,支持站点的分级分组查询管理。
- 支持对监控目标的批量删除与批量导入,数据实时同步到Consul。
- 提供了Blackbox的配置、Prometheus的配置以及Prometheus站点监控的告警规则。
- 设计了一个支持各分级分组字段展示的Blackbox_Exporter Grafana看板。
💫4. 高危漏洞采集与实时告警
- 增加了高危风险漏洞采集与实时告警通知功能。
- 功能开启即可采集最新30个漏洞列表。
- 每小时采集一次,发现新漏洞立即推送到群机器人。
- 支持企微、钉钉、飞书群机器人通知。
💾部署说明
1. ConsulManager需要依赖Consul
,请先完成Consul的部署。(docs/Consul部署说明.md)
2. 使用docker-compose
来部署ConsulManager
- 下载:
wget https://starsl.cn/static/img/docker-compose.yml
(仓库根目录下docker-compose.yml
) - 编辑:
docker-compose.yml
,修改3个环境变量:consul_token
:consul的登录token(安装consul时生成的UUID)consul_url
:consul的URL(http开头,/v1要保留)admin_passwd
:登录ConsulManager Web的admin密码
- 启动:
docker-compose pull && docker-compose up -d
- 访问:
http://{IP}:1026
,使用配置的变量admin_passwd
登录 - 安装使用中遇到问题,请参考:FAQ
3. 你也可以使用K8S来部署ConsulManager
# 编辑 k8s-deploy.yaml
1. 修改24、40行的x.x.x.x为Consul的IP。
2. 修改36行为Web登录admin账号的密码。
3. 修改38行为Consul的访问token。
4. 执行以下命令部署:
kubectl apply -n 命名空间 -f k8s-deploy.yaml
5. 浏览器访问Service:consulmanager(NodeIP+NodePort)。
📌更新记录
🎨截图预览(点击查看完整截图)
💥点击展开
Consul Web Manager 界面
多云ECS同步Consul界面
多云ECS同步JumpServer界面
Node Exporter Dashboard 截图
Blackbox Manager 界面
Blackbox Exporter Dashboard 截图
高危漏洞采集与通知 界面
钉钉告警通知
🥇最佳实践
-
ConsulManager:实践与FAQ
-
应用场景1:如何优雅的基于Consul自动同步ECS主机监控
-
应用场景2:如何优雅的使用Consul管理Blackbox站点监控
-
应用场景3:如何把云主机自动同步到JumpServer
-
应用场景4:使用1个mysqld_exporter监控所有的MySQL实例
-
应用场景5:使用1个redis_exporter监控所有的Redis实例
💖特别鸣谢
赞赏与关注公众号【云原生DevOps】加入交流群(请备注:consul),获取更多...
如果看不到图片请点击该链接:https://starsl.cn/static/img/thanks.png
💰赞赏
🥇榜一大哥:@浩哥
🥈榜二大哥:@南城阿宇 @weibw
🥉榜三大哥:@新的奇迹 @李宫俊 @锋 @小明SQLBOY @Swancavalier
🏆榜N大哥:
@老叶 @mac🐬 🌈 @Stephen @蔡志昆 @风与尘的誓约 @Initᯤ⁶ᴳ @254209 @Runner91 @烂泥 @ASL·D·阿威 @惊雷 @默读自我 @MiracleWong
✅提交代码
🎃提交bug与建议
@会飞的鱼 @奈 @Swancavalier @Show_Lo @郑不错 @init @weibw @Martin @MiracleWong @dong9205 @dissipator @烂泥
🏆开源推荐
🌉Go-Ldap-Admin: 基于Go+Vue实现的openLDAP后台管理项目