mirror of
https://gitee.com/rainbond/Rainbond.git
synced 2024-11-30 10:48:15 +08:00
.. | ||
appm | ||
client | ||
discover | ||
handle | ||
master | ||
monitor | ||
server | ||
README.md |
一期项目说明
设计说明:
- 支持可配置的资源模型选择,应用使用标签进行部署类型选择。本月支持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状态问题影响不大,已数据库一致性为主。 应用状态多实例间忽略数据不一致,会导致应用状态异常设置。