V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
anotherhub
V2EX  ›  分享创造

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

  •  2
     
  •   anotherhub · 2018-06-20 14:09:38 +08:00 · 2180 次点击
    这是一个创建于 2380 天前的主题,其中的信息可能已经有所发展或是发生改变。

    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,示例如下:

    • 安装服务网络治理插件

    servicemesh01

    • 在应用中启用插件

    servicemesh02

    • 配置插件

    servicemesh03

    更多信息参考相关文档:

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

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

    backup

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

    新特性 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

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

    快捷链接

    相关阅读

    2 条回复    2018-06-20 15:57:44 +08:00
    jisibencom
        1
    jisibencom  
       2018-06-20 15:27:42 +08:00 via Android   ❤️ 1
    看起来很牛逼的样子
    ysicing
        2
    ysicing  
       2018-06-20 15:57:44 +08:00 via Android
    欢迎大家体验一下,送一波币。😊😊
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3752 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:13 · PVG 08:13 · LAX 16:13 · JFK 19:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.