经过近一年的不懈努力和精心打磨,Rainbond v6.0 版本正式上线。这次升级不仅仅是一次版本迭代,更是一次全面的架构更新和用户体验的飞跃。新版本聚焦于极致的稳定性、灵活性和用户友好性,以简化的架构、全新的扩展体系、统一的安装方式、直观的升级流程为用户提供更加稳定和可扩展的平台体验。
我们深知,作为云原生一体化应用管理平台,Rainbond 的稳定性和灵活性是支撑业务运转的核心。因此,在 v6.0 版本中,我们对底层架构进行了全面的精简和优化,移除了历史遗留的强依赖组件,并大幅提升了系统的响应速度和稳定性。
正文将会从架构、扩展、安装和在线升级四个方面详细阐述。
架构精简,打造极致稳定体验
首先,为了解决过去版本中可能困扰用户的稳定性和灵活性问题,确保平台在各种场景下都能流畅运行,减少资源占用。我们在新版本中对底层组件进行了全面的优化和整合,从根本上提升了平台的稳定性。
在 v5 版本中,Rainbond 底层的组件数量过多,且它们之间存在着强耦合关系,导致系统在运行过程中常常面临性能瓶颈和维护成本高的问题。为此,v6.0 通过对组件的依赖关系进行剖析与优化,移除了不必要的强依赖项,同时合并了部分功能冗余的组件,使整个系统更加简洁高效。我们移除了底层的 eventlog、node 和 webcli 组件,并将关键日志收集、web终端等业务逻辑迁移至 api 组件,从而确保重要的日志信息能够实时获取,减少系统复杂性。
为了进一步提升稳定性,我们还对存储方案进行了优化,移除了对 NFS 存储的依赖。过去的版本在对接 NFS 时常会遇到不稳定性问题,而在 v6.0 中,我们替换为 S3 存储,大幅度提升了存储的兼容性和系统稳定性。即使存储不可用,平台上的功能依然可以降级提供服务,而不会像之前使用 NFS 存储时,平台完全无法使用。这一举措解决了存储层的潜在问题,也为用户提供了更高效稳定的底层支持。
全新扩展体系,释放无限可能
在 Rainbond v6.0 版本中,我们对平台的扩展体系进行了全面革新,旨在为用户提供更加灵活和可定制的能力。过去的扩展体系主要依赖于 Iframe 技术,与平台的整体结合相对松散,导致用户在体验上不够流畅,且在调用平台数据时受限较多。为了解决这些痛点,v6.0 重新设计了扩展系统,用户现在可以通过编写对应的 JavaScript 代码,动态地添加和配置各种功能模块,并直接调用平台的核心数据接口,从而实现更深层次的功能集成。
这一体系的另一个重要特性是其独立性。扩展模块的开发、升级和维护不再受到主版本更新的制约。即使某个扩展模块存在 Bug,用户也可以独立进行修复与升级,而不会影响平台核心功能的运行。这种设计大大降低了系统的更新维护成本,确保了平台的稳定性和业务的连续性。
用户可以根据自己的实际需求灵活调整扩展模块,使其与平台页面紧密结合,实现高度个性化的定制体验。这一变革将扩展能力从“简单添加”提升到“深度融合”,使用户能够轻松打造符合自己业务场景的高效云平台。
后续我们会逐步开放扩展的开发文档,并提供各类扩展到开源应用商店。
简化部署,快速对接新集群
复杂的安装步骤会极大影响用户体验和部署效率。因此,v6.0 对原有的安装体系进行了重构,确保用户在最短的时间内完成部署并对接新环境。
首先,得益于平台底层组件的精简,6.0 默认安装版本自带一个K3s集群,用户一个容器部署完平台即可正常使用。当需要生产部署时,为了提升用户体验,Rainbond v6.0 对安装 K8s 的流程进行了重构,简化了安装操作,可以利用控制台直接创建 K8s 集群,并完成对接。如下图所示:
所有进度除了在终端可以查看,页面上也可以获取节点注册状态。这种方式使用户在面对新的集群环境时也能迅速完成对接并使用。
此外,v6.0 版本默认安装的集群采用 containerd 作为运行时,替代了原有的 Docker 运行时,且支持 Kubernetes 的版本默认升级至 1.30,通过这些优化,安装流程更加透明、快速、统一,既减少了平台多种安装方式的维护成本,也统一了排查问题的方式。
平台界面化升级体验,快速获取最新功能
在 Rainbond v6.0 中,我们着力优化了平台的升级流程,使得复杂的升级过程变得更加直观和简便。过去,用户往往因为繁琐的升级步骤望而却步,甚至担心升级可能带来的潜在风险。因此,为了降低升级成本并帮助用户及时修复产品中的 Bug,我们引入了全新的界面化升级功能,打造更高效、更安全的升级体验。
当新版本发布时,用户将在首页收到版本升级的提示,点击即可进入升级页面。在升级页面中,用户能够清晰地看到当前版本与新版本的详细更新信息,从而根据实际需求决定是否进行升级。且当前版本也支持了跨版本升级,允许用户从多个版本中直接升级到最新版本,减少了中间步骤,也降低了风险。
这也意味着,以后用户不再需要手动查找升级文档或操作复杂的命令,只需几次点击即可完成版本更新。
详细变更点
- 重构主机安装流程,升级默认安装的 K8s 版本至 1.30
- 支持通过界面在线升级平台
- 平台UI界面风格和样式统一升级和调整
- 升级平台级插件扩展体系
- 支持源码构建,手动选择语言,如 dockerfile 或直接选择源码构建 #1426
- 移除对共享存储的强依赖,使用 S3 存储部分共享文件
- 底层网关实现更换为apisix,提升网关稳定性,支持多种网关插件
- 精简底层组件,移除底层 node 模块,合并 eventlog 和 webcli模块
- 移除底层组件对 etcd 的依赖
- 优化接口响应速度
- 高并发性能优化
- 移除 ServiceMesh 治理模式
- 监控模块更换为 prometheus 官方镜像,支持配置文件定义规则
- 更改平台默认注入的环境变量,避免冲突
- 修复默认组件注入变量都以_起始,避免冲突 #1719
安装 Rainbond
您可以通过以下命令快速安装 Rainbond。
curl -o install.sh https://get.rainbond.com && bash ./install.sh
执行完上述脚本后,耐心等待 3-5 分钟,使用浏览器访问 http://$EIP:7070
即可进入 Rainbond。
注意!v5 版本不支持平滑升级到 v6 版本。