mirror of
https://gitee.com/rainbond/Rainbond.git
synced 2024-12-05 05:07:38 +08:00
65 lines
2.8 KiB
Markdown
65 lines
2.8 KiB
Markdown
## 一期项目说明
|
||
### 设计说明:
|
||
* 支持可配置的资源模型选择,应用使用标签进行部署类型选择。本月支持StatefulSets。
|
||
* 支持两种数据持久化源etcd and mysql,本月支持mysql。
|
||
* 支持单实例启停,重启操作,多实例滚动升级操作,水平伸缩,垂直伸缩操作,应用组启动策略操作。
|
||
* 支持基于应用标签的高级调度
|
||
|
||
### 功能点和时间点规划
|
||
|
||
* [*] 消息队列HTTP API @8.1
|
||
* [*] 消息队列gRPC完成,golang,python客户端完成 @8.18
|
||
* [*] 各种操作类型模型确定 @8.2
|
||
* [*] 数据持久层接口,实现mysql插件 @8.3-8.4
|
||
* [*] 使用zmq进行日志服务客户端封装 @8.3-8.4
|
||
* [*] 任务发现器 @8.7-8.8 @崔斌
|
||
* [ ] podname dns解析服务 @8.12-8.15 @崔斌
|
||
* [*] 任务分析模块 @8.9-8.11 @崔斌
|
||
1. 任务截流
|
||
2. 数据库相关操作
|
||
3. 任务分析
|
||
4. logger创建
|
||
5. 测试 @8.17
|
||
* [ ] 任务执行器 @8.7-8.18
|
||
* [*]无状态单应用启动停止,重启,伸缩。
|
||
* [*]有状态单应用启动停止,重启,伸缩。
|
||
* [*]应用滚动升级。
|
||
* [ ]应用组启动停止。
|
||
* [ ] 控制台支持应用标签,指定应用使用v2 API @8.16-8.18
|
||
* [*] region api v2版API @8.14-8.17 @崔斌
|
||
1. 兼容API已完成
|
||
* [*] region api 端口分配修改。原接口使用podname获取服务数据。新接口podname 与服务数据难对应。思考调整 @崔斌
|
||
* [*] 应用运行状态控制器status_manager @8.17 @崔斌
|
||
* [ ] 原数据库数据校验与清理
|
||
[*] 应用部署信息表:service_deploy_record,(同步部署信息,集群同步回来)
|
||
[ ] 应用与Pod信息表:tenant_service_pod
|
||
### 模块说明
|
||
|
||
* 任务发现器
|
||
任务发现器持续从消息队列中获取任务信息,并发往任务分析器进行分析。任务分析器需要控制当前节点任务等候数量,如果超过配置值,任务发现器需要将任务重新放回任务队列。
|
||
* 任务分析器
|
||
任务分析器接收到任务以后分析任务类型,需要的任务数据,封装成执行任务添加到任务执行器中。
|
||
高级功能:维护任务的状态。
|
||
* 任务执行器
|
||
|
||
### gRPC
|
||
```
|
||
cd pkg/api/grpc
|
||
protoc --go_out=plugins=grpc:./ message.proto
|
||
```
|
||
|
||
### 部署说明
|
||
#### 环境变量
|
||
* EX_DOMAIN 数据中心对应域名 例如 `ali-sh.goodrain.net:10080`
|
||
* CUR_NET 网络类型 例如 `midonet`
|
||
|
||
## 二期项目说明
|
||
### 设计说明:
|
||
* 支持任务执行过程可中断,可恢复,可回滚。
|
||
|
||
|
||
## 无状态说明
|
||
本组件设计目标无状态,目前POD状态维护具有有状态性,应用状态维护具有有状态性.
|
||
POD状态问题影响不大,已数据库一致性为主。
|
||
应用状态多实例间忽略数据不一致,会导致应用状态异常设置。
|