Skip to main content

· 4 min read

Rainbond 5.9 同时兼容 docker 和 containerd 运行时,支持 Kubernetes 1.24 和 1.25。

新增功能解读

1. 支持 Containerd 运行时

由于 Rainbond 镜像构建、日志收集、导入导出等功能依赖于 Docker 的守护进程。随着 Kubernetes 在 1.24 版本中正式弃用 docker 作为容器运行时,这意味着在 Kubernetes 1.24 以上集群,将无法体验到 Rainbond 带来的便利。因此为了更好的在高版本集群中使用 Rainbond,Rainbond 现在支持了 containerd 容器运行时。对于低版本集群,用户仍可以参考升级文档使用 docker 作为容器运行时。

2. 支持 grctl 命令更换集群网关地址

在之前用户扩展或减少 Kubernetes 节点时,往往会遇到这样一个问题,当网关节点变更时,会直接影响到控制台与集群端的通信,在控制台上就会体现出集群端异常。这通常是由于更换网关节点时未更新证书所导致的。此时,用户需要手动编辑一些 CRD 文件,重启 rbd-api 等操作。这对用户的要求较高。因此,为了方便用户操作。现在支持使用 grctl 命令一键更换集群 API 地址。具体操作如下:

  1. 在控制台右上角->个人中心->访问令牌->新增一个访问令牌,复制其生成的 token

  2. 安装 grctl 命令

docker run -it --rm -v /:/rootfs  registry.cn-hangzhou.aliyuncs.com/goodrain/rbd-grctl:v5.9.0-release copy && mv /usr/local/bin/rainbond-grctl /usr/local/bin/grctl && grctl install
  1. 更换新的网关节点 IP
grctl replace ip --ip=192.168.1.2 --domain=http://192.168.1.2:7070 --token=<token值> --name=<集群id> --suffix=false

参数说明:

参数说明
ip需要更改的网关节点IP
domain控制台完整访问地址,如 http://192.168.1.2:7070
token第一步在控制台生成的 token
name集群唯一标识,在集群页面->编辑->集群ID
suffix域名后缀是否变更,默认false,指定该值为true时,会自动使用给出的IP生成新的域名后缀并替换

详细变更点

新增功能

  • 支持 Containerd 容器运行时 #1247
  • 支持使用 grctl 命令更换集群 API 地址
  • 支持 Kubernetes 1.24 和 1.25
  • 支持 MiniKube 部署

优化功能

  • 支持自定义监控规则
  • 优化 dind 版本内存占用
  • 优化团队视图和应用视图加载速度

BUG 修复

  • 修复添加证书失败的问题 #1317
  • 修复自动签发证书更新失败的问题 #1318
  • 修复英文版样式和翻译问题 #1320, #1322, #1326, #1328, #1356
  • 修复团队列表不展示问题 #1325
  • 修复应用配置组添加失败问题 #1357

感谢

感谢 dongasai、hanxinhisen、Aurorxa、wison1001、warjiang、draco1023、liuli01、runningbeanxl、maojunxyz、huzk8、srcio、anchyobi 等用户在社区中的参与与反馈,才能使产品变得更好,我们欢迎大家任何形式的参与和贡献。

· 2 min read

功能详细文档参考: https://www.rainbond.com/docs/use-manual/component-create/task-support/job-cronjob

详细变更点

新增功能

  • 【应用管理】 支持非容器环境一键部署应用
  • 【英文化】 产品支持中英文切换

优化功能

BUG 修复

· 10 min read

Rainbond 是“以应用为中心”的云原生应用管理平台。相比于其他容器管理平台,提供了更易用的应用管理体验。这是一个优点,但是另一方面,由于应用级抽象与实际 Kubernetes 资源有所差异,对于许多已经熟悉 Kubernetes 的用户而言,使用 Rainbond 又会面临以下三个问题:

  1. Rainbond 对 Kubernetes 资源支持有限。在某些场景下,如环境变量引用某个 Secret 的值、调整 Pod 的调度策略、亲和性配置等场景难以实现。

  2. 在 Kubernetes 集群中已经部署的应用。如何迁移到 Rainbond 上,许多配置需要再次手动调整部署。迁移成本高。

  3. 已有的 Kubernetes Yaml 文件,在 Rainbond 上无法直接部署。

为了解决以上问题,我们在 5.8 版本中主要做了如下改进:

  1. 支持一键导入Kubernetes集群中已存在的应用。我们可以将集群中已有应用直接导入到 Rainbond 进行管理。

  2. 兼容Kubernetes的资源和属性,支持在应用下通过 Yaml 文件创建各类资源,如 PVC、PV、Secret等。在应用下创建的资源,可以在组件里进行引用。同时支持了发布到应用模版。

  3. 支持通过 Yaml 文件部署组件,我们会将 Yaml 文件中识别到的资源转化为 Rainbond 的内置组件,实现 Yaml 文件的一键部署。

总体来说,在本次版本中,Rainbond 在与 Kubernetes 底层的资源兼容性上又进了一步,许多之前不支持的资源也可以直接创建和使用。下面简单介绍下本次版本的主要功能。

版本变更(5.7.1-5.8.0)

主要功能点解读:

1. 支持一键导入已有集群应用

对于在Kubernetes集群中已经运行的应用,我们支持了一键导入命名空间下的所有应用。当选择好要导入的命名空间时,我们可以看到该命名空间下的资源。我们会根据 Kubernetes 推荐标签来区分应用,将资源按应用区分出来。如下图所示: import-region-resource.png

这些资源中,Deployment/Statefulset/Job/CronJob 将会转化为内置组件,其他资源如果无法与 Rainbond 抽象模型对应,则会转化为应用下的 K8s 资源。在点击下一步后,你可以看到之前的资源与 Rainbond 模型的关系。如下图所示

advanced_resources.jpg

最终导入后,你就可以在 Rainbond 的团队中管理你的应用了。

功能详细文档参考: https://www.rainbond.com/docs/use-manual/team-manage/ns-to-team/

2. 支持通过Yaml文件部署组件

许多用户自己编写 Yaml 部署应用,为了便于用户使用,我们同样支持了通过 Yaml 部署应用。与其他容器管理平台不同的是,在使用 Yaml 文件部署应用时,我们不是直接让 Yaml 文件在集群中生效,而是转化为我们的组件类型。以便于用户在部署后,还能使用到我们应用级的管理功能,如组件的全生命周期、组件编排、发布安装等。

在添加组件时,选择 Yaml 部署后,上传你的文件。我们会在识别后转化为对应的组件模型和应用资源,如下图所示

yaml_team_handle.jpg

功能详细文档参考: https://www.rainbond.com/docs/use-manual/component-create/package-support/yaml

3. 兼容 Kubernetes 资源和属性

为了扩展应用和组件的能力,以及更好的兼容 Kubernetes 的资源。我们在应用下,新增了 K8s 资源 的入口,在这里可以通过 Yaml 部署集群中的各类资源。如 PV、PVC、Service、Ingress 等。在这里部署的资源均会直接被部署到集群中。这里我们定义的是,它应该是你应用运行所需要的基础环境。即这里提供的资源,应该是供当前应用下的组件进行使用的。在发布时,这里的资源也会和组件一起发布。

k8s_resources_add.jpg

同样在组件的其他设置下,有 Kubernetes 属性这一项。我们可以在这里定义该组件使用到的一些属性,如 volumes、volumeMounts 等。这里可以挂载应用下创建的 K8s 资源,用于扩展组件能力。

k8s_attr.jpg

应用下 K8s 资源详细文档参考: https://www.rainbond.com/docs/use-manual/app-manage/k8s-resource/ 组件 Kubernetes 属性文档参考: https://www.rainbond.com/docs/use-manual/component-manage/other/#kubernetes属性

4. 支持直接上传 Jar/War 包构建组件

在之前的版本中,当用户使用 Jar 包进行交付时,我们需要先创建一个 git 仓库,并将 Jar 包推上去才可以构建。这会带来几个问题:

  • 创建新仓库操作繁琐,离线环境难以部署
  • git 仓库会限制单个文件大小,Jar 包过大时,无法上传

因此为了解决以上问题,我们支持直接上传 Jar/War 包构建组件。如下图所示,我们可以在组件总览页查看到文件名,以及文件的 MD5 值。以便于在反复上传文件时区分版本。

Pasted%20Graphic%204.pn

功能详细文档参考: https://www.rainbond.com/docs/use-manual/component-create/package-support/jar-war

5. 支持切换组件构建源

当我们从应用市场安装一个完整应用,但应用中的部分组件需要从源码和镜像替换,这时就需要修改构建源。也就是说,如果我安装下来一个应用,想要替换其中的某个组件时,往往只能新建一个组件,重新编排依赖关系。操作较繁琐。尤其是在离线环境,发现安装的组件有问题时,调整后再发布,往往还需要再次刻盘。因此为了解决这种问题。在新版本中,我们支持直接将应用商店的组件构建源更改为镜像或者源码。以便于快速自测和交付。

change_build_source.png

6. 支持创建任务类型(Job/CronJob)的组件

在新版本中,我们的组件部署类型,在无状态组件和有状态组件的基础上,又扩展了两种类型,任务(Job)和周期性任务(CronJob), 现在如果需要创建一次性任务,可以通过更改组件部署类型修改。

功能详细文档参考: https://www.rainbond.com/docs/use-manual/component-create/task-support/job-cronjob

详细变更点

新增功能

  • 【集群管理】 支持一键导入已有集群应用
  • 【团队管理】 支持直接通过 Jar、War 包或 Yaml 文件部署组件
  • 【组件管理】 支持创建 Job/CronJob 类型任务
  • 【组件管理】 支持应用商店安装的组件修改构建源
  • 【应用管理】 支持扩展应用和组件支持的属性
  • 【组件管理】 支持 Dockerfile 使用私有镜像构建(https://github.com/goodrain/rainbond/issues/1172)

优化功能

BUG 修复

· 3 min read

版本变更(5.7.0-5.7.1)

主要功能点解读:

1. 支持快速对接多家公有云

在之前的版本中,仅支持对接阿里云 ACK 集群,对于使用其他云厂商的用户不够友好。为了方便用户快速对接不同公有云厂商的集群。我们优化了安装流程。现在支持通过 helm 方式对接阿里云、华为云、腾讯云等多家云厂商提供的集群。 用户选择不同的云厂商,可以自己提供相关资源的配置,最终生成完整的安装命令,在云厂商管理的集群中执行。当 Rainbond 的数据中心端安装完成后,将会自动对接上该控制台。即可在控制台管理多家云服务商集群。

img img

2. 支持集群异常报警

结合用户的使用反馈,我们发现用户在使用中,在控制台经常会遇到集群通信异常的问题。虽然并不一定直接影响到上面跑的业务组件。但对于使用者来说,无法直接管理自己的业务也是很严重的问题。 此时往往需要用户手动去 Kubernetes 集群中排查问题。比如当集群中资源使用过度导致 Pod 被驱逐或节点出现异常都有可能导致这种情况的发生。 在之前,我们也提供了 Rainbond 监控报警系统,但使用用户较少。因此为了方便用户提前了解可能会出现的问题。我们基于之前的报警规则,将报警信息在页面上进行展示。以便平台管理员及时处理相关问题。

img

详细变更点

新增功能

  • 【安装】支持通过 helm 快速对接多家公有云(ACK、TKE、CCE)

  • 【报警管理】支持将集群异常信息在页面直接展示

BUG 修复

  • 【团队管理】集群失去响应时团队列表无法展示的问题

  • 【插件管理】插件存储类型错误的问题

· 6 min read

版本变更(5.6.0-5.7.0)

主要功能点解读:

1. 插件分享和一键安装

为了业务容器的运维和管理能力,Rainbond 通过pod中的sidecar实现了插件机制。开发者可以自己开发插件,并根据业务需要按需开启和配置插件,当前插件已经可以实现:

  • 在不更改现有业务代码的情况下扩展组件的功能
  • 在业务运行前完成一些数据初始化的操作
  • 将业务的日志发送到外部服务器用于分析处理
  • 拦截清洗业务的流量,用作防火墙
  • 监控业务的性能指标等

但是,在之前的版本中,用户在某个团队下创建出插件后,需要给另一个团队使用时,还需要再次手动创建,设置对应的配置项。这在一定程度上增加了用户使用的门槛。 现在和应用一样,我们在支持应用的分享和一键安装后,也可以支持插件的分享和一键安装。当你在某个团队下制作好了可用的插件,你可以通过 Rainbond 的本地组件库或开源应用商店分享出去。其他用户可以通过组件库和开源应用商店安装使用。这样的好处是插件也可以像应用一样积累和复用,社区用户开发的插件也可以分享给其他用户使用。

img

2. 扩展插件的配置能力

当插件本身运行时需要相应配置文件或存储时,用户需要手动去组件里添加存储。这是因为插件与组件之间共享存储,但是当一个插件用于多个组件时,那么需要去每个组件下配置存储,这造成了配置的复杂性。 现在用户可以直接在插件里配置插件运行时所需的存储和配置文件。如下图所示:

img

这样当用户为组件开通插件以后,就可以自动为组件创建出对应的存储和配置文件。减少了配置的复杂性。

3. 支持对接 Ceph

稳定可靠的存储是在生产环境中使用 Kubernetes 最重要的一环。Kubernetes 默认提供了主流的存储卷接入方案(In-Tree),同时也提供了插件机制(Out-Of-Tree),允许接入实现了 CSI 接口的第三方存储,当前版本中,通过扩展CSI能力可以完美对接Ceph。

详细变更点

新增功能

  • 【插件管理】支持插件分享和安装

  • 【插件管理】支持插件单独定义存储和配置文件

  • 【组件管理】源码构建支持 nodejs16 版本

  • 【应用管理】支持应用按更新时间和运行状态排序

  • 【存储】支持通过 CSI 对接 ceph 存储

优化功能

  • 【组件管理】优化 web 终端默认容器为组件容器

  • 【安装】优化 dind 版本安装时环境检测和提示

  • 【安装】优化 helm 安装时环境检查与提示

  • 【团队视图】优化团队视图响应速度

  • 【组件管理】优化组件日志过大时导致占用磁盘过大的问题

  • 【企业管理】企业视图下增加团队资源展示

  • 【组件管理】优化内置 mesh 插件资源限制导致的性能问题

BUG 修复

  • 【网关】修复网关策略过多时,新增策略不生效的问题

  • 【组件管理】修复组件资源监控不生效的问题

  • 【组件管理】修复网关路径策略导致的服务端异常问题

  • 【团队管理】修复团队创建者被删除导致团队列表无法展示的问题

  • 【企业管理】修复Oauth授权自动过期的问题

  • 【组件管理】修复第三方组件出现空实例的问题

  • 【应用管理】修复发布应用不展示日志的问题

  • 【插件管理】修复初始化类型插件卸载后,组件更新后插件不会被清除的问题

  • 【插件管理】修复插件的启动命令中配置环境变量不生效问题

感谢

感谢以下用户在社区中的参与与反馈,才能使产品变得更好,我们欢迎大家任何形式的参与和贡献。

@pescox
@briannadev
@wjn1992
@gobaiy
@hcxjava
@AlfredMiss
@pytomtoto
@wison1001
@haohao722
@huihui-hb
@superjackwong
@meijianxin110
@lokywang
@vicemiami
@yeshusheng1234

· 6 min read

版本变更(5.5.0-5.6.0)

主要功能点解读:

1. 支持单机快速体验

为了方便在单机电脑上快速安装体验Rainbond,当前版本支持通过一条命令安装和体验,现在支持的平台包括:

  • Linux
  • Linux(ARM)
  • Mac(Intel)
  • Mac(M1)
  • Windows

https://www.rainbond.com/docs/quick-start/quick-install/

2. 支持Helm安装方式

Helm 提供了一套简单易用的命令行,借助开发者制作好的 Charts 包完成应用的安装、更新、升级、回滚等操作。当前版本通过 Helm 作为包管理工具适配了市面可见的大多数 Kubernetes 类型,这些类型包括:

  • 使用不同安装工具(如kubeadm、sealos)部署的各种版本的标准 Kubernetes 集群;

  • 各大云服务商推出的 Kubernetes 即服务的云产品,如阿里云ACK、腾讯云TKE、华为云CCE;

  • 基于 Kubernetes 规范实现的其它容器基础设施,如Rancher、 K3s 、Kubedge;

https://www.rainbond.com/docs/user-operations/deploy/install-with-helm/k8s-install-with-helm/

3. 优化拓扑图操作体验

在之前的版本中,由于 Rainbond 展示层级较多,用户操作单个组件时,往往需要切换到组件视图,这使得用户操作层级变多,也无法第一时间获取需要的信息。这次我们针对拓扑图的展示信息做了优化,使其能在应用层级给出更多的信息,并进行操作。降低进入组件视图的操作负担。

新版本展示信息如下:

img

在新版本中,拓扑图展示信息处给出了一排组件操作按钮,分别是访问组件、进入Web终端、更新组件、关闭组件、删除组件。用户可以根据这些按钮快速操作组件,同时下方展示出了组件内的容器信息。极大的提升了用户的操作效率。

4. 增加拓扑图聚合模式

在企业实际使用中,一个应用下的组件,往往会依赖其他应用下的组件,此时用户看到的拓扑图信息会大且比较杂乱,无法快速分辨其他组件所属的应用。这时对于用户而言,多个应用之间的依赖关系不明确。为了解决此问题,我们新增了拓扑图聚合模式。在这种情况下,可以更清晰的展示多个应用间的依赖关系。

在普通模式下,可以看到该应用依赖了多个组件,但是我们对于这些组件之间的关系并不清楚。

img

我们切换到聚合模式,可以看到,组件与其他应用之间的关系清晰明了。

img

点开 Gitlab 这个应用的拓扑图,我们可以知道这个应用的运行状态,以及依赖的组件信息。

img

5. 支持网关路径重写

之前 Rainbond 网关只实现了简单的location代理,并未提供路由重写相关的功能。当有这样的需求:

要在目标服务 http://{upstream}/index.html 的path多加一层虚拟目录去访问:http://example/abc/index.html 。达到 http://example/abc/index.html => http://{upstream-1}/index.html 的效果。对应的网关配置如下。

location / {
rewrite /abc(/|$)(.*) /$2 last;
proxy_pass http://127.0.0.1;
}

如今需要实现这种复杂的rewrite配置,只需在UI上填写对应字段即可,如下图所示:

img

详细变更点

新增功能

  • 【应用管理】提升拓扑图展示信息;

  • 【应用管理】支持拓扑图聚合模式;

  • 【网关管理】支持网关路径重写;@pescox

优化功能

  • 【组件管理】优化添加组件流程;

  • 【安装】支持arm64版本;

  • 【安装】支持helm安装;

  • 【安装】支持docker in docker方式启动测试环境;

BUG 修复

  • 【组件管理】修复组件构建后网关策略无法访问的问题

  • 【组件管理】修复有状态组件(如Mysql集群)无法启动的问题

  • 【性能】修复rbd-worker存在的内存泄漏问题 @pescox

  • 【安装】修复安装时错误信息展示不全的问题

  • 【组件管理】修复helm应用关联的第三方组件信息错误的问题

感谢 @pescox#1125#1139#1143 所做的贡献

感谢 @xixinlove#1141 所做的贡献

· 5 min read

版本变更(5.4.0-5.5.0)

主要功能点解读:

1. 支持 Istio,并支持扩展第三方 ServiceMesh 框架

Rainbond 专注于无侵入,松耦合的设计理念。在当前版本中,Rainbond 引入了应用级治理模式的切换功能,实现了服务治理能力的动态切换,无需业务逻辑变更,为业务提供了不同的治理能力。可以通过应用级插件的形式扩展第三方 ServcieMesh 框架,比如 Istio、Linkerd、Dapr 等,本次我们优先支持了Istio,用户可以通过 helm 安装 Istio 相关组件,实现应用治理模式的切换。从而享受到Istio相关的治理能力。如下图所示:

image image

我们希望用户最终使用时,服务治理能力与业务逻辑是完全解耦的,用户可以根据不同的业务使用不同的治理能力。可以根据自己的需要扩展不同的治理模式,后续我们会有专门的文章来详细介绍如何扩展第三方 ServiceMesh 框架。

2. 兼容 kubernetes 管理命令和第三方管理平台

在之前的版本中,我们以应用为中心,使用户可以便捷的管理自己的业务。但通过Rainbond生成的名字空间、应用名和服务名使用 UUID,对熟悉 Kubernetes 的人非常不友好,在 Kubernetes 展示的 ID 无法跟业务关联,就无法使用 Kubernetes 命令或 Kubernetes 的第三方工具管理。因此我们现在支持了集群内各类资源的重命名。用户可以自定义团队、应用、服务、组件、镜像的英文名,在Kubernetes 中会以英文名展示。

用户设置了应用的英文名为 rbd,分别设置了组件的英文名后,在集群生成的资源如下图所示。

images

images

详细变更点:

新增功能

  • 【应用管理】支持Istio治理模式的切换;
  • 【应用管理】支持修改应用和组件的集群资源名;

优化功能

  • 【组件管理】优化组件构建的镜像名称;
  • 【数据库】新版本集群数据库使用utf8mb4编码;
  • 【升级】优化应用升级时无变更组件不进行更新操作
  • 【组件管理】优化组件首次设置健康检测的提示

BUG 修复

  • 【组件管理】修复实例运行内存为0的问题;
  • 【网关】修复网关策略跳转页面错误的问题;
  • 【应用管理】修复应用运行组件数展示错误的问题;
  • 【应用管理】修复应用无法正常回滚的问题;
  • 【插件管理】修复默认插件构建失败的问题;
  • 【应用管理】修复发布应用时,插件分享事件同步发生错误的问题;
  • 【插件管理】修复安装插件不生效的问题;
  • 【组件管理】修复域名创建的第三方组件无法通过内部依赖访问的问题;
  • 【应用管理】修复TCP策略网关端口可以随意设置的问题;
  • 【升级】修复应用升级失败重试无响应的问题
  • 【应用管理】修复helm应用状态展示错误的问题;
  • 【升级】修复回滚功能不可用的问题;
  • 【组件管理】修复内部域名可以重复的问题;
  • 【插件】修复插件内存不限制时报错的问题;
  • 【升级】修复配置文件升级后无法修改的问题;
  • 【组件管理】修复创建中组件无法继续部署的问题;

· 2 min read

版本变更(5.3.3-5.4.0)

新增功能

  • 【兼容性】支持 1.20-1.22 的Kubernetes对接并使用;
  • 【团队管理】优化团队视图展示信息;
  • 【应用管理】支持应用设置logo;
  • 【组件管理】支持从对象存储获取压缩包进行源码构建;

优化功能

  • 【性能】优化团队页面展示速度;
  • 【安装】优化离线安装的新手引导策略;
  • 【安装】优化集群检测脚本;

BUG 修复

  • 【兼容性】修复不兼容k8s 1.16-1.18版本的问题;
  • 【安全性】升级网关的nginx版本,防止CVE-2019-9511,CVE-2019-9513,CVE-2021-23017安全漏洞;
  • 【组件库管理】修复helm应用安装提示应用商店不存在的问题;
  • 【应用管理】修复应用无法正常回滚的问题;
  • 【应用管理】修复安装部分应用服务端异常的问题;
  • 【团队管理】修复团队列表分页问题;
  • 【组件管理】修复组件多个网关策略无法同时生效的问题;
  • 【应用管理】修复部分应用安装服务端异常的问题;

· 3 min read

版本变更(5.3.2-5.3.3)

新增功能

  • 【安装】支持查询 Ranbond 组件的状态信息和安装进度;

  • 【应用管理】支持网关访问策略的发布与安装;

  • 【组件管理】支持配置文件设置文件权限;

  • 【组件管理】支持设置组件和插件的 CPU;

  • 【组件管理】支持查看组件内各容器的日志;

  • 【组件库管理】支持导入导出应用模版的 logo 和版本信息;

  • 【第三方组件】支持第三方组件添加多个端口;

  • 【第三方组件】支持单端口映射到不同端口的 endpoints;

优化功能

  • 【性能】缓存企业级统计数据,提升首页展示速度;

  • 【存储】自动清理备份恢复和导入时产生的缓存数据;

  • 【稳定性】升级底层 ingress 版本;

  • 【日志】优化 allinone 部署的控制台日志持续输出无法连接 redis 的问题;

  • 【日志】优化导入大体积模版时 rbd-chaos 的日志提示

BUG 修复

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

· 3 min read

版本变更(5.3.1-5.3.2)

优化功能

  • 【交付】应用发布记录信息完善,本地记录发布应用商店名称和应用模版名称。
  • 【交付】升级过程中增加了组件健康检测属性的变更展示。
  • 【交付】DockerCompose 导出的应用模版正确处理连接信息变量。
  • 【性能】优化企业视图统计数据 API 性能,加快组件数量较多时的页面加载速度。
  • 【管理】优化了离线环境下组件库列表加载速度问题。
  • 【安装】增加了对 Kubernetes 版本的检测和不合规提示。
  • 【安装】增加了集群安装出错后提示用户查询详细日志。
  • 【安装】突出了集群安装时对用户必要环境的提示。

BUG 修复

  • 【交付】修复应用升级导致无变更组件进行了滚动更新的缺陷;
  • 【管理】修复应用列表页面与应用详情页对应用占用资源统计不一致的缺陷;
  • 【管理】修复团队资源限额后的提示错误缺陷;
  • 【管理】修复了 Helm 应用配置参数不生效的缺陷;
  • 【管理】修复了 Helm 应用升级页面加载不了数据的缺陷;
  • 【管理】修复了安装应用市场应用连接信息变量初始化错误的缺陷;
  • 【管理】修复了安装部分应用市场应用失败的缺陷;
  • 【管理】修复了网关策略设置为 websocket 不生效的缺陷;
  • 【管理】修复了应用切换治理模式后分配内存错误的缺陷;
  • 【安装】修复了集群初始化进度与实际状态不一致的缺陷;
  • 【用户】修复了单点登录模式下无法单点退出的缺陷;
  • 【CI】修复了对接 Gitee 私有化版本代码仓库无法列出项目列表的缺陷;
  • 【稳定性】修复了 rbd-worker 在进行主从切换时异常退出的缺陷;

· 4 min read

版本变更(5.3.0-5.3.1)

新增功能

  • 【应用商店】支持 Helm 应用仓库对接;
  • 【应用管理】支持 Helm 应用安装和配置;
  • 【微服务治理】支持通过网关或内部组件依赖两种方式访问 Helm 安装的应用;
  • 【微服务治理】新增 GRPC 协议的服务治理能力;
  • 【微服务治理】新增对组件下容器启动顺序控制,实现 mesh 容器先于业务容器启动;
  • 【组件管理】新增基于 kubernetes service 服务发现类型的第三方组件;
  • 【源码构建】Go 语言新增对 Go 1.14、1.15、1.16 版本 Runtime 的支持;
  • 【源码构建】Go 语言新增对构建模块和启动命令的配置;
  • 【源码构建】Java、Go、PHP 等语言新增 pre_build、post_build 构建时 shell hook 的支持;
  • 【企业管理】用户管理中新增对用户所在团队及角色的批量管理能力;
  • 【企业管理】团队管理中新增开通集群的功能入口;
  • 【集群安装】支持 RKE 集群配置,实现集群节点配置的灵活调整;

优化功能

  • 【性能】应用升级体系优化,支持 100+组件批量升级;
  • 【性能】从应用商店安装组件实现优化,支持 100+组件批量安装;
  • 【性能】改进拓扑图加载逻辑,加速大应用下拓扑图加载速度;
  • 【性能】优化在大量组件情况下的应用级生命周期操作 API 的性能;
  • 【稳定性】应用网关优化,解决异常应用访问导致网关内存泄露的故障;
  • 【组件管理】支持空值的环境变量和配置组变量;
  • 【监控报警】移除错误的节点健康检测报警策略;
  • 【组件管理】重构组件本地存储类型的实现,支持使用本地存储组件复用集群的调度策略;
  • 【内部组件库】新增应用模型版本管理,支持在发布页展示版本介绍;
  • 【组件管理】支持组件设置自定义主机名解析记录;

BUG 修复

  • 【源码构建】修复 .netcore 源码构建任务无法结束的故障;
  • 【控制台】修复网关策略搜索功能不可用故障;
  • 【源码构建】修复 Maven 配置删除后源码构建无法执行的故障;
  • 【稳定性】修复错误的网关策略参数导致网关故障;
  • 【组件管理】修复组件实例数不一致的故障;
  • 【稳定性】修复 rbd-worker 系统组件由于 etcd 不稳定异常重启的故障;
  • 【应用管理】修复对接非 HTTPS 镜像仓库时应用备份不可用的故障;
  • 【集群安装】修复集群镜像仓库证书不一致的故障;