Rainbond 5.3.3 发布,新增多项实用功能,应用模型新增多项属性

Rainbond 是云原生且易用的应用管理平台。云原生应用交付的最佳实践。专注于以应用为中心的理念,赋能企业搭建云原生开发云、云原生交付云。

对于企业: Rainbond 是开箱即用的云原生平台,借助 Rainbond 可以快速完成企业研发和交付体系的云原生转型。

对于开发者: 基于 Rainbond 开发、测试和运维企业业务应用,开箱即用的获得全方位的云原生技术能力。包括但不仅限于持续集成、服务治理、架构支撑、多维度应用观测、流量管理。

对于项目交付: 基于 Rainbond 搭建产品版本化管理体系,搭建标准化客户交付环境,使传统的交付流程可以自动化、简单化和可管理。

Rainbond 5.3.3 版本来了,本次发布的版本我们主要以用户实际需求为导向进行优化,在过去的一些实践中,我们发现,对于复杂的业务组件,部分资源的配置需要个性化配置,这就对我们平台使用的灵活性提出了更高的要求。因此 5.3.3 版本我们主要以配置的灵活性为主要迭代方向。

在一些开发场景中,用户机器可能是高内存型或高 CPU 型,此时用户机器资源往往得不到充分利用,因此现在我们提供了组件 CPU 设置的能力,用户可以根据自己需求个性化配置资源。其次,对于一些配置文件,用户除了配置文件相关内容外,也有配置其权限的需求,现在这些需求都可以得到满足。

主要功能点解读:

1. 支持实时查看 Rainbond 自身组件的状态和初始化进度

在该版本以前,我们在初始化 Rainbond 集群时,整体对用户是不可见的,相当于一个黑盒,用户出现问题,很难及时定位。现在我们在初始化 Rainbond 集群时,给出了集群的 pod 信息,用户可以通过可视化界面,直接了解到初始化集群需要多少组件,目前已经完成的组件数。还可点击组件,查看组件的事件信息。使用户能更直观的了解整个过程和快速定位问题。效果如下图所示:
Rainbond 5.3.3 发布,新增多项实用功能,应用模型新增多项属性

2. 支持组件配置文件的权限设置

在之前的版本中,为某个组件挂载配置文件时,默认的权限为 0777 ,但是有些配置文件有权限要求,比如my.cnf,0777 会被忽略,因此在 5.3.3 版本中,支持为挂载的配置文件设置一个权限,用于解决该类问题。

Rainbond 5.3.3 发布,新增多项实用功能,应用模型新增多项属性

3. 支持组件的CPU设置

在之前,我们只支持了组件的内存设置,CPU 通过算法得出。但这样有以下几个问题:

  • 部分业务由于CPU资源分配过少,运行缓慢。出现问题甚至难以排查。
  • 在部分开发环境中,用户想自己手动指定相应的 CPU ,也难以操作。

因此我们现在支持了自己手动设置组件的 CPU 和内存,且 CPU 和内存资源都可设置为不限制,给用户提供更灵活的使用方式。
Rainbond 5.3.3 发布,新增多项实用功能,应用模型新增多项属性

4. 第三方组件的重构

为了逐步适配 OAM 应用规范,提升 Rainbond 的可扩展性。在之前发布的 5.3.1 版本中我们基于 OAM规范,重新实现了第三方组件类型,定义了 ThirdComponent 作为第一个 ComponentDefinition,并在产品中实现对ComponentDefinition 的基础管理机制。此次我们基于 ComponentDefinition 定义重新实现了第三方组件的静态配置和 API 配置实例类型。现在第三方组件已支持添加多个端口,并支持对应端口进行绑定。下面我对此次第三方组件的功能点做个简要说明。

假如现在你的第三方组件只开启了 80 端口,此时该组件有以下两个实例 10.10.10.10:80 ,10.10.10.11:5000

  • 支持单端口映射到不同端口的endpoints

    对于第三方组件,只开通一个端口,添加多个实例且多个实例端口不同时,那么可以通过开通的端口轮询访问到该组件下的所有实例。

    参考上述前提,那么此时你访问第三方组件的 80 端口,实际是会轮询访问这两个实例 10.10.10.10:80 ,10.10.10.11:5000

  • 添加多个端口,多个端口的绑定关系

    此时为第三方组件新建端口 5000 ,那么对应的端口将会与实例进行绑定,此时访问第三方组件的 80 端口,将只会访问到实例 10.10.10.10:80 ,访问 5000 端口,也只会访问到实例 10.10.10.11:5000。

Rainbond 5.3.3 发布,新增多项实用功能,应用模型新增多项属性

5. 应用模版的变更

在 5.3.3 版本中,我们更改了应用模版的元数据模型,支持了更多组件属性的发布。如组件的 CPU 设置、组件特性、组件网关策略、配置文件权限的发布与安装等。其次,基于元数据模型的变更,我们在导出 RAM 规范的应用时,也支持了应用 logo 和版本信息的导出,现在,你可以更好的导入应用并获得该应用的版本信息。

6. 支持组件的容器日志可以单独查看

在以往的版本中,一个组件下有多个容器时,多个容器的日志均输出到日志页面,难以区分。在 5.3.3 版本中,这不再是问题,5.3.3 版本中支持单独查看各容器的日志,你只需在组件日志页面选择你需要查看的容器,即可快速获取到你关心的信息。

详细变更点:

新增功能

  • 【安装】支持查询Ranbond组件的状态信息和安装进度;
  • 【应用管理】支持网关访问策略的发布与安装;
  • 【组件管理】支持配置文件设置文件权限;
  • 【组件管理】支持设置组件和插件的CPU;
  • 【组件管理】支持查看组件内各容器的日志;
  • 【组件库管理】支持导入导出应用模版的logo和版本信息;
  • 【第三方组件】支持第三方组件添加多个端口;
  • 【第三方组件】支持单端口映射到不同端口的endpoints;

优化功能

  • 【性能】缓存企业级统计数据,提升首页展示速度;
  • 【存储】自动清理备份恢复和导入时产生的缓存数据;
  • 【稳定性】升级底层ingress版本;
  • 【日志】优化allinone部署的控制台日志持续输出无法连接redis的问题;
  • 【日志】优化导入大体积模版时rbd-chaos的日志提示

BUG 修复

  • 【安装】修复集群安装驱动服务崩溃的问题;
  • 【安装】修复同名称集群,重新安装失败的问题;
  • 【安装】修复初始化Rainbond集群操作未实现幂等的问题;
  • 【网关】修复两条相同网关策略导致网关报错的问题;
  • 【组件库管理】修复应用模版release状态展示错误的问题;
  • 【资源统计】修复团队使用资源统计中磁盘使用量统计错误的问题;
  • 【应用管理】修复应用治理模式切换错误提示的问题;
  • 【应用管理】修复恢复时删除原应用下组件导致恢复失败的问题;
  • 【应用管理】修复升级时未变更组件仍然进行了滚动更新的问题;
  • 【应用管理】修复升级时只发布部分组件,导致升级后依赖丢失的问题;
  • 【组件管理】修复组件配置文件名称校验错误的问题;
  • 【组件管理】修复第三方组件实例数与初始化状态错误的问题;

Rainbond 5.3.3 发布,新增多项实用功能,应用模型新增多项属性

上一篇:百胜中国使用Rainbond实现云原生落地的实践


下一篇:让你提前认识软件开发(51):VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改