37

开源PaaS Rainbond v3.6.0正式发布,Service Mesh开箱即用

 5 years ago
source link: http://dockone.io/article/6008?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

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 cloudapi gateway 、dubbo等框架有良好支持。

除了以上特性,Rainbond v3.6.0还新增了应用的备份与恢复以及快数据中心的应用迁移功能(详见下文)。同时,Rainbond经过本次更新,在稳定性方面得到了大幅度提升,解决了2个生产环境中可能会造成严重影响的bug:

  • 解决了docker进程由于默认xfs文件系统io阻塞导致卡死的问题
  • 解决了由于etcd服务连接异常导致各组件cpu泄漏的问题

本次版本升级详细介绍如下:

新特性1:ServiceMesh开箱即用

Rainbond利用容器的 sidecar模式 ,抽象出应用插件层,根据不同的插件类型提供不同的控制策略,例如可根据应用容器的启动顺序、运行环境等,并在全局应用运行时提供标准的服务发现接口、配置发现接口,相当于Rainbond通过插件的方式提供了 envoy 的运行环境。

ServiceMesh功能在Rainbond中通过 服务网络治理插件 来实现,在“我的插件”中安装该插件,并在需要使用的应用中启用该插件,即在该应用上启用了Service Mesh,示例如下:

  • 安装 服务网络治理插件
aYjuQji.gif
  • 在应用中启用插件
7Z3Afuf.gif
  • 配置插件
Rr26Vbz.png!web

更多信息参考相关文档:

新特性2:应用组备份与恢复

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

iYf6za6.gif

详细文档请参考: 应用备份和恢复

新特性3:内部应用市场管理

针对内部应用市场,Rainbond过往版本可以将应用发布到内部应用市场,供其他团队安装使用。本次升级支持将云市同步或者内部分享的应用打包下载,这样用户可以将应用迁移到离线Rainbond,或其他Docker环境下运行,目前支持好雨应用打包格式和 docker-compose.yaml 格式。

qmyuuqA.png!web

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

  1. 修复了自定义域名不生效的问题
  2. 修复了自定义https不生效的问题
  3. 解决了某些情况下重新部署应用负载均衡不更新问题
  4. 解决了插件重新构建后,应用重启插件新版不生效问题
  5. 解决了应用性能分析数据历史查询问题
  6. 解决了性能监控数据有负数的问题
  7. 解决了源码创建应用高级设置页面显示BUG,支持定义php、java等源码类型的中间件版本和依赖库
  8. 解决了docker进程由于xfs文件系统io阻塞导致卡死的问题
  9. 解决了由于etcd server退出导致各组件cpu泄漏问题
c2c173006f4956dfff2cc5c9dfad45ca24a040e8.png

快捷链接

相关阅读


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK