Rainbond是以应用为中心的开源 PaaS,由好雨基于 Docker、Kubernetes 等容器技术自主研发,可作为公有云或私有云环境下的应用交付平台、DevOps 平台、自动化运维平台和行业云平台,或作为企业级的混合云多云管理工具、kubernetes 容器管理工具或 Service Mesh 微服务架构治理工具。
Service Mesh 微服务架构是开源 PaaS Rainbond 在v3.6.0版本中的重点新增特性,可以开箱即用。
这种微服务架构经过过去一年多的发展,已然成为云原生技术堆栈中不容忽视的关键组件。它允许我们在开发应用时,只关注业务代码,而不需要关心技术底层逻辑,服务拆分带来的复杂性问题也迎刃而解。
Rainbond 的 Service Mesh 微服务架构以透明代理的形式提供服务间通信,不会与业务代码耦合,换句话说,Service Mesh 对于业务是无侵入的。
其次,Rainbond 通过插件式扩展来实现治理功能,例如服务发现和注册、弹性伸缩与负载均衡、容错处理(断路器与限流)、监控与报警、数据存储与共享、日志分析等等。
另外值得一提的是,Rainbond 的 Service Mesh 微服务架构对spring cloud、api gateway、dubbo 等框架有良好支持。
除了以上特性,Rainbond v3.6.0 还新增了应用的备份与恢复以及快数据中心的应用迁移功能(详见下文)。同时,Rainbond 经过本次更新,在稳定性方面得到了大幅度提升,解决了 2 个生产环境中可能会造成严重影响的 bug:
- 解决了 docker 进程由于默认 xfs 文件系统 io 阻塞导致卡死的问题
- 解决了由于 etcd 服务连接异常导致各组件 cpu 泄漏的问题
本次版本升级详细介绍如下:
新特性 1:ServiceMesh 开箱即用
Rainbond 利用容器的sidecar 模式,抽象出应用插件层,根据不同的插件类型提供不同的控制策略,例如可根据应用容器的启动顺序、运行环境等,并在全局应用运行时提供标准的服务发现接口、配置发现接口,相当于 Rainbond 通过插件的方式提供了envoy的运行环境。
ServiceMesh 功能在 Rainbond 中通过服务网络治理插件来实现,在“我的插件”中安装该插件,并在需要使用的应用中启用该插件,即在该应用上启用了 Service Mesh,示例如下:
- 安装服务网络治理插件

- 在应用中启用插件

- 配置插件

更多信息参考相关文档:
新特性 2:应用组备份与恢复
无论是测试还是生产环境,业务系统的备份、迁移与恢复都是比较复杂和耗时的工作。Rainbond 收集多家企业级用户和公有云用户的反馈,经过 2 个月的开发,推出了应用组的备份、迁移与恢复功能,用户仅需轻松点击就可以解决复杂业务组的备份、迁移与恢复。

详细文档请参考:应用备份和恢复
新特性 3:内部应用市场管理
针对内部应用市场,Rainbond 过往版本可以将应用发布到内部应用市场,供其他团队安装使用。本次升级支持将云市同步或者内部分享的应用打包下载,这样用户可以将应用迁移到离线 Rainbond,或其他 Docker 环境下运行,目前支持好雨应用打包格式和docker-compose.yaml格式。

Rainbond v3.6.0 详细更新日志
应用控制台
-
支持应用组的完整备份和恢复
对运行的业务系统状态进行整体、全面快照,一旦出现无法解决的问题可快速回滚到备份时刻
-
支持应用组跨数据中心、跨租户迁移
-
支持内部应用市场管理
- 应用和插件的同步、删除与卸载
- 内部应用市场应用的导出,可导出兼容 docker-compose 或可导入 Rainbond 平台的 rainbondApp 应用包
- 支持离线导入 RainbondApp 到内部市场
-
支持基于 Github、Gitlab 的 Webhook 自动部署源码创建的应用
-
支持站内信公告
-
监控模块支持自动发现监控服务,自动配置监控项目
-
控制台支持用户自定义角色的权限控制
底层服务
- Rainbond 组件全面高可用支持,RegionDB 可使用 CockroachDB,UI DB 可使用 TiDB
- 集群 DNS 升级,提供更高的查询性能,支持自定义普通域名和泛域名解析
- 重构 rbd-monitor 组件( Prometheus ),支持服务高可用与分布式部署,并增加服务自动注册 /发现机制
插件
-
服务网络治理插件插件
开箱即用的支持 ServiceMesh 架构,并可根据需要自定义扩展
- 支持应用的灰度发布和,A/B 测试( HTTP )
- 支持服务到服务的限流和熔断机制( HTTP )
- 支持服务到服务的智能路由( HTTP )
- 支持服务到服务的性能分析和错误跟踪,基于应用拓扑图展示完整流量拓扑
-
支持从云市场或内部市场分享和安装应用插件
- MySQL 数据库热备份插件 (基于 Percona XtraBackup 实现)
- PostgreSQL 数据库备份插件 (基于 pg_dump 实现)
- MongoDB 数据库备份插件 (基于 mongodump 实现)
- 日志收集对接 ES 插件
-
rbd-lb 增加 vrrpd 功能,支持 VIP (测试阶段,默认不启用)
Rainbond 安装程序
- 支持一键扩容管理节点
- 重构安装流程,支持全局配置文件
- 增加升级与维护模块,方便后续执行升级维护操作
- 增加 CockroachDB 支持(需要手动修改配置)
- 增加 Rainbond 组件最大内存限制功能
解决的 BUG
- 修复了自定义域名不生效的问题
- 修复了自定义 https 不生效的问题
- 解决了某些情况下重新部署应用负载均衡不更新问题
- 解决了插件重新构建后,应用重启插件新版不生效问题
- 解决了应用性能分析数据历史查询问题
- 解决了性能监控数据有负数的问题
- 解决了源码创建应用高级设置页面显示 BUG,支持定义 php、java 等源码类型的中间件版本和依赖库
- 解决了 docker 进程由于 xfs 文件系统 io 阻塞导致卡死的问题
- 解决了由于 etcd server 退出导致各组件 cpu 泄漏问题

快捷链接
- Rainbond 项目网站
- 试用 Rainbond 公有云
- Github
- 码云
- 文档
- 微信群: 添加微信“ zqg5258423 ”并接受邀请入群
相关阅读
技术解读 Rainbond ServiceMesh 微服务架构_开源 PaaS Rainbond2018/05/15技术Pinpoint-java 性能分析最佳实践_开源 PaaS Rainbond2018/05/08技术通过 Minio 搭建私有化对象存储服务_开源 PaaS Rainbond2018/04/26技术揭秘高可用负载均衡组件 Rainbond-Entrance_开源 PaaS Rainbond2018/04/25技术Rainbond 插件体系设计简介_开源 PaaS Rainbond2018/02/24技术Rainbond 如何对接外部 Maven 仓库_开源 PaaS Rainbond2018/01/18技术Spring Boot 框架配置 MySQL_开源 PaaS Rainbond2018/01/10技术基于 Midonet 的多租户网络设计_开源 PaaS Rainbond2018/01/09