Skip to content

Commit

Permalink
Merge pull request #898 from zzzhangqi/241125
Browse files Browse the repository at this point in the history
fix: update install docs
  • Loading branch information
zzzhangqi authored Nov 27, 2024
2 parents 759dd65 + cfc2fa9 commit a4bf998
Show file tree
Hide file tree
Showing 4 changed files with 93 additions and 2 deletions.
85 changes: 85 additions & 0 deletions changelog/6.0.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
---
title: v6.0.0-release
description: 描述 v6.0.0-release 版本变更信息
date: 2024-11-22
---

经过近一年的不懈努力和精心打磨,Rainbond v6.0 版本正式上线。这次升级不仅仅是一次版本迭代,更是一次全面的架构更新和用户体验的飞跃。新版本聚焦于极致的稳定性、灵活性和用户友好性,以简化的架构、全新的扩展体系、统一的安装方式、直观的升级流程为用户提供更加稳定和可扩展的平台体验。

<!--truncate-->

我们深知,作为云原生一体化应用管理平台,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 集群,并完成对接。如下图所示:

![](https://static.goodrain.com/wechat/6.0/1.PNG)

所有进度除了在终端可以查看,页面上也可以获取节点注册状态。这种方式使用户在面对新的集群环境时也能迅速完成对接并使用。

此外,v6.0 版本默认安装的集群采用 containerd 作为运行时,替代了原有的 Docker 运行时,且支持 Kubernetes 的版本默认升级至 1.30,通过这些优化,安装流程更加透明、快速、统一,既减少了平台多种安装方式的维护成本,也统一了排查问题的方式。

## 平台界面化升级体验,快速获取最新功能

在 Rainbond v6.0 中,我们着力优化了平台的升级流程,使得复杂的升级过程变得更加直观和简便。过去,用户往往因为繁琐的升级步骤望而却步,甚至担心升级可能带来的潜在风险。因此,为了降低升级成本并帮助用户及时修复产品中的 Bug,我们引入了全新的界面化升级功能,打造更高效、更安全的升级体验。

当新版本发布时,用户将在首页收到版本升级的提示,点击即可进入升级页面。在升级页面中,用户能够清晰地看到当前版本与新版本的详细更新信息,从而根据实际需求决定是否进行升级。且当前版本也支持了跨版本升级,允许用户从多个版本中直接升级到最新版本,减少了中间步骤,也降低了风险。

这也意味着,以后用户不再需要手动查找升级文档或操作复杂的命令,只需几次点击即可完成版本更新。

![](https://static.goodrain.com/wechat/6.0/2.PNG)

![](https://static.goodrain.com/wechat/6.0/3.PNG)

### 详细变更点

- 重构主机安装流程,升级默认安装的 K8s 版本至 1.30
- 支持通过界面在线升级平台
- 平台UI界面风格和样式统一升级和调整
- 升级平台级插件扩展体系
- 支持源码构建,手动选择语言,如 dockerfile 或直接选择源码构建 [#1426](https://github.com/goodrain/rainbond/issues/1426)
- 移除对共享存储的强依赖,使用 S3 存储部分共享文件
- 底层网关实现更换为apisix,提升网关稳定性,支持多种网关插件
- 精简底层组件,移除底层 node 模块,合并 eventlog 和 webcli模块
- 移除底层组件对 etcd 的依赖
- 优化接口响应速度
- 高并发性能优化
- 移除 ServiceMesh 治理模式
- 监控模块更换为 prometheus 官方镜像,支持配置文件定义规则
- 更改平台默认注入的环境变量,避免冲突
- 修复默认组件注入变量都以_起始,避免冲突 [#1719](https://github.com/goodrain/rainbond/issues/1719)

## 安装 Rainbond

您可以通过以下命令快速安装 Rainbond。

```bash
curl -o install.sh https://get.rainbond.com && bash ./install.sh
```

执行完上述脚本后,耐心等待 3-5 分钟,使用浏览器访问 `http://$EIP:7070` 即可进入 Rainbond。

注意!v5 版本不支持平滑升级到 v6 版本。
5 changes: 3 additions & 2 deletions docs/installation/install-with-helm/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@ keywords:
```bash
helm repo add rainbond https://chart.rainbond.com
helm repo update
helm install rainbond rainbond/rainbond --create-namespace -n rbd-system
```

2. 编辑 [values.yaml](./vaules-config.md) 文件,填写必须配置。
Expand Down Expand Up @@ -52,7 +51,7 @@ helm install rainbond rainbond/rainbond --create-namespace -n rbd-system -f valu
4. 执行完安装命令后,在集群中执行以下命令查看安装状态。

```bash
watch kubectl get po -n rbd-system
watch kubectl get pod -n rbd-system
```

5. 当名称包含 `rbd-app-ui` 的 Pod 为 Running 状态时即安装成功。如下所示,Pod `rbd-app-ui-5577b8ff88-fpnnv` 为 Running 状态时,表示 Rainbond 安装成功。
Expand Down Expand Up @@ -80,6 +79,8 @@ rbd-worker-7db9f9cccc-s9wml 1/1 Running 0 5m22s

6. 使用 `gatewayIngressIPs` 配置的 IP 地址访问 Rainbond,例如: `http://172.20.251.93:7070`

7. 如您采用默认的镜像仓库,则需要修改 Containerd 的配置,配置 [goodrain.me 私有镜像仓库](../../faq/#%E5%90%AF%E5%8A%A8%E6%97%A0%E6%B3%95%E8%8E%B7%E5%8F%96%E9%95%9C%E5%83%8F-x509-certificate-signed-by-unknown-authority)

## 下一步

参考[快速入门](/docs/quick-start/getting-started/)部署你的第一个应用。
4 changes: 4 additions & 0 deletions docs/installation/install-with-ui/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,10 @@ keywords:
* 如果主机内核支持 [AppArmor](https://apparmor.net/),则在安装之前还必须具有 AppArmor 工具(通常可通过 `apparmor-parser` 包获得)。
* 必须以`root`用户执行安装。

:::danger
如已执行[快速安装](/docs/quick-start/quick-install)则不能在同一主机上再次基于主机安装,这会造成冲突。
:::

## 从主机开始安装 Kubernetes 集群

1. 根据[快速安装](/docs/quick-start/quick-install)部署 Rainbond。
Expand Down
1 change: 1 addition & 0 deletions nginx.conf
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ http {
location / {
root /app;
index index.html index.htm;
try_files $uri $uri /index.html;
if ($http_accept_language !~* ^zh-CN){
rewrite ^/$ /en/ redirect;
}
Expand Down

0 comments on commit a4bf998

Please sign in to comment.