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.
ConsulManager/README.md

118 lines
6.5 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<div align="center">
[![StarsL.cn](https://img.shields.io/badge/website-StarsL.cn-orange)](https://starsl.cn)
[![Commits](https://img.shields.io/github/commit-activity/m/starsliao/ConsulManager?color=ffff00)](https://github.com/starsliao/ConsulManager/commits/main)
[![open issues](http://isitmaintained.com/badge/open/starsliao/ConsulManager.svg)](https://github.com/starsliao/ConsulManager/issues)
[![GitHub Stargazers](https://img.shields.io/github/stars/starsliao/ConsulManager?color=ff69b4)](https://github.com/starsliao/ConsulManager/stargazers)
[![Python](https://img.shields.io/badge/python-%3E=v3.6.8-3776ab)](https://nodejs.org)
[![Node.js](https://img.shields.io/badge/node.js-%3E=v14-229954)](https://nodejs.org)
[![GitHub license](https://img.shields.io/badge/license-MIT-blueviolet)](https://github.com/starsliao/ConsulManager/blob/main/LICENSE)
[![OSCS Status](https://www.oscs1024.com/platform/badge/starsliao/ConsulManager.svg?size=small)](https://www.murphysec.com/dr/Zoyt5g0huRavAtItj2)
</div>
# 🏷目录
* [🚀概述](#概述)
* [🌈实现功能](#实现功能)
* [📌更新记录](#更新记录)
* [🎨截图预览](#截图预览点击查看完整截图)
* [💾部署说明](#部署说明)
* [🥇最佳实践](#最佳实践)
* [💖特别鸣谢](#特别鸣谢)
## 🦄概述
>**ConsulManager**是一个使用Flask+Vue开发的WEB运维平台弥补了Consul官方UI对Services管理的不足并且基于Consul的自动发现与键值存储实现了各云厂商资源与Prometheus的无缝同步以及对各类监控资源的优雅管理与展示。
## 🌈实现功能
### 🎡Consul 管理
- 支持Consul Services的增删改查可以批量删除Service。
- 直观的查看每个Services实例的信息及整体Services的健康状态。
- 可以便捷的对Services实例的Tags、Meta、健康检查配置管理与查询展示。
### 💎云资源监控管理
>**基于Consul实现Prometheus监控目标的自动发现。**
- 支持阿里云、腾讯云、华为云的ECS主机、分组、标签自动同步到Consul。
- 支持自建主机接入WEB管理并支持WEB批量导入自建主机到Consul。
- 支持阿里云、腾讯云、华为云账户余额与云资源到期日设置阈值告警通知。
- 提供了可查询分组与ECS信息的页面指标中加入了ECS到期日等信息。
- 提供了按需生成Prometheus配置与ECS告警规则的功能。
- 设计了一个支持同步的各字段展示的Node_Exporter Grafana看板。
### 🚀站点与接口监控管理
>**基于Consul + Prometheus + Blackbox_Exporter实现站点的自动发现与监控。**
- 使用Web页面即可对监控目标增删改查支持站点的分级分组查询管理。
- 支持对监控目标的批量删除与批量导入数据实时同步到Consul。
- 提供了Blackbox的配置、Prometheus的配置以及Prometheus站点监控的告警规则。
- 设计了一个支持各分级分组字段展示的Blackbox_Exporter Grafana看板。
### 💫高危漏洞采集与实时告警
- 增加了高危风险漏洞采集与实时告警通知功能。
- 功能开启即可采集最新30个漏洞列表。
- 每小时采集一次,发现新漏洞立即推送到群机器人。
- 支持企微、钉钉、飞书群机器人通知。
## 📌[更新记录](https://github.com/starsliao/ConsulManager/releases)
## 🎨截图预览([点击查看完整截图](https://github.com/starsliao/ConsulManager/tree/main/screenshot#%E6%88%AA%E5%9B%BE)
### Consul Web Manager 界面
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/consul3.PNG)
### ECS Manager 界面
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/ecs1.PNG)
### Node Exporter Dashboard 截图
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/vue-consul/public/node1.png)
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/vue-consul/public/node2.png)
### Blackbox Manager 界面
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/blackbox1.PNG)
### Blackbox Exporter Dashboard 截图
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/vue-consul/public/blackbox.png)
### 高危漏洞采集与通知 界面
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/bug.png)
##### 钉钉告警通知
![图片](https://user-images.githubusercontent.com/3349611/173263960-4d69fff9-82fe-42a1-ba18-4c78775cf35e.png)
## 💾部署说明
##### 1. Consul Manager需要依赖`Consul`请先完成Consul的部署。[Consul部署文档](docs/Consul部署说明.md)
##### 2. 使用`docker-compose`来部署Consul Manager
- 下载:`wget https://raw.githubusercontent.com/starsliao/ConsulManager/main/docker-compose.yml`
- 国内下载:`wget https://starsl.cn/static/img/docker-compose.yml`
- 编辑:`docker-compose.yml`修改3个环境变量
- **`consul_token`**consul的登录token
- **`consul_url`**consul的URL(http开头/v1要保留)
- **`admin_passwd`**登录Consul Manager的admin密码
- 启动:`docker-compose pull && docker-compose up -d`
- 访问:`http://{IP}:1026`使用配置的Consul Manager密码登录
---
## 🥇最佳实践
- ### [ConsulManager实践与FAQ](https://github.com/starsliao/ConsulManager/tree/main/docs)
- ### [应用场景1如何优雅的基于Consul自动同步ECS主机监控](https://github.com/starsliao/ConsulManager/blob/main/docs/ECS%E4%B8%BB%E6%9C%BA%E7%9B%91%E6%8E%A7.md)
- ### [应用场景2如何优雅的使用Consul管理Blackbox站点监控](https://github.com/starsliao/ConsulManager/blob/main/docs/blackbox%E7%AB%99%E7%82%B9%E7%9B%91%E6%8E%A7.md)
## 💖特别鸣谢
### 赞赏与关注公众号【**云原生DevOps**】加入交流群请备注consul获取更多...
![](https://starsl.cn/static/img/thanks.png)
---
### 💰赞赏
@南城阿宇 @mac🐬 🌈 @Stephen @蔡志昆 @风与尘的誓约 @Initᯤ⁶ᴳ @254209 @Runner91 @烂泥
---
### ✅提交代码
[@dbdocker](https://github.com/dbdocker)
---
### 🎃提交bug
@会飞的鱼 [@奈](https://github.com/Wp516781950) @Swancavalier @Show Lo
---
### 📢提供建议
[@dong9205](https://github.com/dong9205) [@dissipator](https://github.com/dissipator)
---
# 💖感谢伟大的[Flask](https://github.com/pallets/flask)、[VUE](https://github.com/vuejs/vue)、[vue-admin-template](https://github.com/PanJiaChen/vue-admin-template)