ConsulManager/README.md

152 lines
6.4 KiB
Markdown
Raw Normal View History

2022-06-04 10:02:07 +00:00
# 🚀概述
2022-05-08 16:26:52 +00:00
- **ConsulManager**是一个使用Flask+Vue开发的Consul WEB管理工具弥补了官方UI对Services管理的不足可以方便的对Consul Services进行增删改查支持批量操作并优化了对Tags、Meta、健康检查的配置管理与查询展示。
2022-04-10 04:02:08 +00:00
- 本工具基于Prometheus自动发现Consul实现了两个监控管理维护的应用
2022-04-12 13:04:00 +00:00
1. 基于云厂商ECS的自动同步到Consul并接入Prometheus监控。设计了一个关联的Grafana看板
2. 基于Blackbox实现站点与接口监控接入Consul通过Web界面方便管理。设计了一个关联的Grafana看板
2022-04-09 10:31:57 +00:00
- 本工具支持使用docker-compose快速部署。
2022-06-04 10:02:07 +00:00
## 💎实现功能
### 🏆Consul 管理
2022-04-09 10:31:57 +00:00
- 比官方自带的WEB UI实现了更多的功能。
- 包含Consul服务器的状态信息。
- 支持Consul Services的增删改查可以批量删除Service。
- 直观的查看每个Services实例的信息及整体Services的健康状态。
- 可以方便的对每个Services实例的Tags、Meta、健康检查进行配置。
2022-06-04 10:02:07 +00:00
### 🏆Node 主机监控
2022-04-09 10:31:57 +00:00
- 基于Consul实现Prometheus监控目标的自动发现。
2022-05-08 14:58:52 +00:00
- 支持同步阿里云腾讯云华为云的ECS主机信息到Consul。
2022-04-09 10:31:57 +00:00
- 支持同步各云厂商的分组信息到Consul用于关联ECS分组。
2022-05-08 14:58:52 +00:00
- 支持自建主机接入监控管理并提供脚本批量导入主机到Consul。
2022-04-09 10:31:57 +00:00
- 提供了可查询分组与ECS信息的页面指标中加入了ECS到期日等信息可直接监控。
- 提供了按需的Prometheus配置生成功能。
- 提供了一个匹配ECS Manager各字段的node_exporter Grafana展示看板。
2022-06-04 10:02:07 +00:00
### 🏆Blackbox 站点监控
2022-01-28 04:10:09 +00:00
- 基于Prometheus + Blackbox_Exporter实现站点与接口监控。
- 基于Consul实现Prometheus监控目标的自动发现。
2022-04-09 10:31:57 +00:00
- 使用Web操作即可简单的对监控目标增删改查支持批量删除以及方便的分类维护管理。
- 提供了Blackbox的配置Prometheus的配置以及Prometheus站点监控的告警规则。
- 提供了一个匹配Blackbox Manager各字段的Blackbox Exporter Grafana展示看板。
- 提供脚本可批量导入监控目标到Consul。
2022-06-12 17:39:33 +00:00
### 🏆高危漏洞采集与通知
2022-06-12 17:45:12 +00:00
- 增加了高危风险漏洞采集与告警通知功能。
2022-06-12 17:39:33 +00:00
- 功能开启即可采集最新30个漏洞列表。
2022-06-13 06:55:44 +00:00
- 每小时采集一次,发现新漏洞立即推送到群机器人。
2022-06-12 17:39:33 +00:00
- 支持企业微信与钉钉群机器人通知。
2022-01-29 04:23:10 +00:00
## [更新记录](https://github.com/starsliao/ConsulManager/releases)
2022-01-29 04:21:59 +00:00
2022-06-12 17:39:33 +00:00
## 🎨部分截图([点击查看完整截图](https://github.com/starsliao/ConsulManager/tree/main/screenshot#%E6%88%AA%E5%9B%BE)
2022-04-10 04:25:11 +00:00
### Consul Web Manager 界面
2022-04-29 04:59:13 +00:00
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/consul1.PNG)
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/consul3.PNG)
2022-04-10 05:02:50 +00:00
### ECS Manager 界面
2022-04-29 04:59:13 +00:00
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/ecs1.PNG)
2022-02-10 17:36:36 +00:00
### Blackbox Manager 界面
2022-04-29 04:59:13 +00:00
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/blackbox1.PNG)
2022-06-12 17:45:12 +00:00
### 高危漏洞采集与通知 界面
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/screenshot/bug.png)
2022-06-13 06:55:44 +00:00
##### 通知界面
2022-06-13 01:30:50 +00:00
![图片](https://user-images.githubusercontent.com/3349611/173263960-4d69fff9-82fe-42a1-ba18-4c78775cf35e.png)
2022-04-10 05:02:50 +00:00
### Node Exporter Dashboard 截图
2022-04-12 23:20:19 +00:00
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/vue-consul/public/node1.png)
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/vue-consul/public/node2.png)
2022-01-28 04:10:09 +00:00
### Blackbox Exporter Dashboard 截图
2022-04-10 06:21:12 +00:00
![](https://raw.githubusercontent.com/starsliao/ConsulManager/main/vue-consul/public/blackbox.png)
2022-01-28 04:10:09 +00:00
2022-06-04 09:59:56 +00:00
## 💾部署说明
2022-01-28 04:10:09 +00:00
2022-02-10 17:09:50 +00:00
### 1. 部署Consul
2022-01-28 04:10:09 +00:00
##### 安装
```bash
# 使用yum部署consul
yum install -y yum-utils
yum-config-manager --add-repo https://rpm.releases.hashicorp.com/RHEL/hashicorp.repo
yum -y install consul
# 或者直接下RPM包安装
2022-06-12 18:53:34 +00:00
wget https://rpm.releases.hashicorp.com/RHEL/7/x86_64/stable/consul-1.12.2-1.x86_64.rpm
rpm -ivh ./consul-1.12.2-1.x86_64.rpm
2022-01-28 04:10:09 +00:00
```
##### 配置
```bash
vi /etc/consul.d/consul.hcl
2022-04-15 08:48:40 +00:00
advertise_addr = "192.168.x.x" #可以先不加这行如果启动有问题再加上一般有多网卡需要配置这行填写你的网卡IP
2022-01-28 04:10:09 +00:00
data_dir = "/opt/consul"
client_addr = "0.0.0.0"
ui_config{
enabled = true
}
server = true
bootstrap = true
acl = {
enabled = true
default_policy = "deny"
enable_token_persistence = true
}
```
2022-01-28 07:07:17 +00:00
##### 启动与鉴权配置
2022-01-28 04:10:09 +00:00
```bash
2022-04-15 03:50:53 +00:00
chown -R consul:consul /opt/consul #注意下数据目录的权限。
2022-01-28 04:10:09 +00:00
systemctl enable consul.service
systemctl start consul.service
# 获取登录密码
consul acl bootstrap
2022-06-12 18:49:36 +00:00
2022-06-12 18:53:34 +00:00
# 记录 SecretID即为Consul登录的Token
2022-01-28 04:10:09 +00:00
```
2022-02-10 17:09:50 +00:00
### 2. 部署Consul Manager
2022-01-28 04:10:09 +00:00
2022-01-28 07:07:17 +00:00
##### 使用docker-compose来部署
2022-06-12 18:47:53 +00:00
- 下载:`wget https://raw.githubusercontent.com/starsliao/ConsulManager/main/docker-compose.yml`
- 国内下载:`wget https://starsl.cn/static/img/docker-compose.yml`
2022-04-10 09:57:42 +00:00
- 编辑:`docker-compose.yml`修改3个环境变量
2022-04-10 09:55:25 +00:00
- consul的token**`consul_token`**
- consul的URL(/v1要保留)**`consul_url`**
- 登录Consul Manager的密码**`admin_passwd`**
2022-02-10 18:31:03 +00:00
- 启动:`docker-compose pull && docker-compose up -d`
2022-01-28 08:24:42 +00:00
- 访问:`http://{IP}:1026`
2022-02-10 17:07:06 +00:00
---
2022-04-30 05:04:26 +00:00
## [项目GitHub仓库](https://github.com/starsliao/ConsulManager)
2022-04-10 09:46:37 +00:00
## [应用场景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)
2022-04-10 06:28:24 +00:00
## [应用场景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)
2022-04-09 10:31:57 +00:00
2022-06-04 09:59:56 +00:00
### 💯开发线路
2022-04-19 20:58:56 +00:00
![图片](https://github.com/starsliao/ConsulManager/blob/main/Roadmap.png)
2022-04-09 10:31:57 +00:00
2022-06-04 09:59:56 +00:00
# 💖特别鸣谢
2022-05-12 05:39:39 +00:00
## 赞赏与关注公众号【**云原生DevOps**】加入交流群注明consul获取更多...
2022-04-29 04:02:51 +00:00
![](https://starsl.cn/static/img/thanks.png)
2022-04-10 03:42:18 +00:00
---
2022-06-04 09:59:56 +00:00
### 💰赞赏
2022-06-13 07:14:39 +00:00
@南城阿宇 @mac🐬 🌈 @Stephen @蔡志昆 @风与尘的誓约 @Initᯤ⁶ᴳ @254209
2022-04-19 20:55:56 +00:00
2022-04-09 11:19:28 +00:00
---
2022-04-09 11:15:47 +00:00
2022-06-04 09:59:56 +00:00
### ✅提交代码
2022-04-10 03:42:18 +00:00
暂无
2022-04-09 11:19:28 +00:00
---
2022-04-09 11:11:00 +00:00
2022-06-04 09:59:56 +00:00
### 🎃提交bug
2022-06-12 17:39:33 +00:00
@会飞的鱼 [@奈](https://github.com/Wp516781950) @Swancavalier
2022-06-04 09:59:56 +00:00
2022-04-09 11:19:28 +00:00
---
2022-01-28 04:10:09 +00:00
2022-06-04 09:59:56 +00:00
### 📢提供建议
2022-06-12 17:39:33 +00:00
[@dong9205](https://github.com/dong9205) [@dissipator](https://github.com/dissipator)
2022-04-09 11:21:16 +00:00
2022-04-09 11:19:28 +00:00
---
2022-04-09 11:15:47 +00:00