发版日志

4.0.11

发布于:2026-07-01

已修复问题

  • frontend 组件长时间运行时会持续泄露 HTTP 连接,可能耗尽本地临时 TCP 端口,导致前端页面无法访问。该问题已在 v4.0.11 修复。
  • 在五个控制平面节点的场景下扩容业务集群控制平面节点时,部分请求会偶发返回 401,导致集群节点列表获取失败。该问题已在 v4.0.11 修复。
  • worker 节点的 chassis UUID 发生变化后(例如节点删除后重新加入,或 OVS system-id 变更),VPC BFD port 对应的 HA Chassis 未自动更新到新的 chassis、仍引用旧的 chassis UUID,导致 egress gateway 的 BFD 高可用路径异常。该问题已在 v4.0.11 修复,chassis UUID 变化后 HA Chassis 会自动更新到新的 chassis。

已知问题

  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.10

发布于:2026-05-27

已修复问题

  • 在长期运行或创建超过一年的集群中,kubeconfig 客户端证书过期后可能导致平台页面返回 500、kubectl 命令执行异常,以及 Apollo 等组件访问异常。该问题已在 v4.0.10 修复,控制器会检测并自动续期即将过期的 <cluster>-kubeconfig Secret 客户端证书,控制平面节点的 /root/.kube/config 也改为使用有效期约 10 年的客户端证书。
  • 当某个镜像预热后的处理失败时,image-loader 会中断后续镜像的预热,前端插件镜像因此未完成预热,可能导致插件无法加载、前端页面不可用。该问题已在 v4.0.10 修复。
  • 逐步升级过程中,业务集群已有的 kubeconfig Secret 或 ClusterCredential 客户端证书在已过期或将在 30 天内过期时不会自动轮换,导致业务集群访问异常。该问题已在 v4.0.10 修复,控制器会检测该情况并重新签发客户端证书,同时更新对应的 Secret 或凭据。
  • 从 3.16.2 升级到 4.0.x 后,升级过程生成的 apiserver.crt 缺少 Authority Key Identifier (AKI) 扩展,较新的 Go TLS 客户端(如 Jenkins 流水线)会因此拒绝该证书、无法连接 Kubernetes API Server。该问题已在 v4.0.10 修复,升级生成的 apiserver.crt 现在会携带 AKI 信息。
  • 卸载 Multus 后,Pod 无法正常创建。该问题已在 v4.0.10 修复。
  • image-registry 在外接 S3 存储的场景下,相关资源通过环境变量引用 Secret,存在敏感信息暴露的风险。该问题已在 v4.0.10 修复,这些资源不再以环境变量方式引用 Secret。

已知问题

  • frontend 组件长时间运行时会持续泄露 HTTP 连接,可能耗尽本地临时 TCP 端口,导致前端页面无法访问。该问题已在 v4.0.11 修复。
  • 在五个控制平面节点的场景下扩容业务集群控制平面节点时,部分请求会偶发返回 401,导致集群节点列表获取失败。该问题已在 v4.0.11 修复。
  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • worker 节点的 chassis UUID 发生变化后(例如节点删除后重新加入,或 OVS system-id 变更),VPC BFD port 对应的 HA Chassis 未自动更新到新的 chassis、仍引用旧的 chassis UUID,导致 egress gateway 的 BFD 高可用路径异常。该问题已在 v4.0.11 修复,chassis UUID 变化后 HA Chassis 会自动更新到新的 chassis。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.9

发布于:2026-02-10

已修复问题

  • 修复了 olm-registry pod 持续重启导致 OperatorHub 无法正常使用的问题。该问题由 CIS 合规加固时添加的 `seccompProfile: RuntimeDefault` 安全配置引起,该配置拦截了 CGO 操作所需的 `clone` 系统调用。已调整 seccomp 配置以允许必要的系统调用,同时保持安全合规性。已在 ACP 4.0.9 修复。
  • 修复了当集群安装 60+ 个 Operator 时,原生应用创建接口权限校验极慢(10秒以上)的性能问题。已在 ACP 4.0.9 修复。
  • 使用对接外部 ElasticSearch 功能时,从任意版本升级至 4.0.x 版本,Log Storage for Elasticsearch 组件会升级失败。该问题已在 v4.0.9 修复。
  • 修复了 marketplace 插件在 workload 集群安装失败的问题。已在 ACP 4.0.9 修复。
  • 修复 egress gateway 无法路由和 egress gateway 同网段 Pod 流量问题。已在 ACP 4.0.9 修复。

已知问题

  • 在长期运行或创建超过一年的集群中,kubeconfig 客户端证书过期后可能导致平台页面返回 500、kubectl 命令执行异常,以及 Apollo 等组件访问异常。该问题已在 v4.0.10 修复,控制器会检测并自动续期即将过期的 <cluster>-kubeconfig Secret 客户端证书,控制平面节点的 /root/.kube/config 也改为使用有效期约 10 年的客户端证书。
  • 当某个镜像预热后的处理失败时,image-loader 会中断后续镜像的预热,前端插件镜像因此未完成预热,可能导致插件无法加载、前端页面不可用。该问题已在 v4.0.10 修复。
  • 逐步升级过程中,业务集群已有的 kubeconfig Secret 或 ClusterCredential 客户端证书在已过期或将在 30 天内过期时不会自动轮换,导致业务集群访问异常。该问题已在 v4.0.10 修复,控制器会检测该情况并重新签发客户端证书,同时更新对应的 Secret 或凭据。
  • 从 3.16.2 升级到 4.0.x 后,升级过程生成的 apiserver.crt 缺少 Authority Key Identifier (AKI) 扩展,较新的 Go TLS 客户端(如 Jenkins 流水线)会因此拒绝该证书、无法连接 Kubernetes API Server。该问题已在 v4.0.10 修复,升级生成的 apiserver.crt 现在会携带 AKI 信息。
  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • 卸载 Multus 后,Pod 无法正常创建。该问题已在 v4.0.10 修复。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.8

发布于:2026-01-07

已修复问题

  • 通过 http 地址对接外部 ElasticSearch 时,日志查询可能失败,日志页面报错“cannot assign requested address”。该问题已在 v4.0.8 修复。
  • 因长期未登录而被系统自动禁用的用户,在管理员手动激活后会被再次自动禁用,激活操作无法生效。该问题已在 v4.0.8 修复。
  • ovn-db 数据库文件被手动删除后,ovn-central 因数据库文件为空而无法正常启动,会持续崩溃重启且无法自动恢复。该问题已在 v4.0.8 修复,ovn-central 在该场景下可以自动恢复运行。
  • 受 ovn-central 的竞态问题影响,OVN 北向数据库可能同时出现两个 leader,各节点数据不一致,集群网络的变更操作(如创建 Pod、创建子网、变更网络策略)随之失败。该问题已在 v4.0.8 修复。

已知问题

  • 在长期运行或创建超过一年的集群中,kubeconfig 客户端证书过期后可能导致平台页面返回 500、kubectl 命令执行异常,以及 Apollo 等组件访问异常。该问题已在 v4.0.10 修复,控制器会检测并自动续期即将过期的 <cluster>-kubeconfig Secret 客户端证书,控制平面节点的 /root/.kube/config 也改为使用有效期约 10 年的客户端证书。
  • 逐步升级过程中,业务集群已有的 kubeconfig Secret 或 ClusterCredential 客户端证书在已过期或将在 30 天内过期时不会自动轮换,导致业务集群访问异常。该问题已在 v4.0.10 修复,控制器会检测该情况并重新签发客户端证书,同时更新对应的 Secret 或凭据。
  • 修复了 olm-registry pod 持续重启导致 OperatorHub 无法正常使用的问题。该问题由 CIS 合规加固时添加的 `seccompProfile: RuntimeDefault` 安全配置引起,该配置拦截了 CGO 操作所需的 `clone` 系统调用。已调整 seccomp 配置以允许必要的系统调用,同时保持安全合规性。已在 ACP 4.0.9 修复。
  • 修复了当集群安装 60+ 个 Operator 时,原生应用创建接口权限校验极慢(10秒以上)的性能问题。已在 ACP 4.0.9 修复。
  • 使用对接外部 ElasticSearch 功能时,从任意版本升级至 4.0.x 版本,Log Storage for Elasticsearch 组件会升级失败。该问题已在 v4.0.9 修复。
  • 修复了 marketplace 插件在 workload 集群安装失败的问题。已在 ACP 4.0.9 修复。
  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • 卸载 Multus 后,Pod 无法正常创建。该问题已在 v4.0.10 修复。
  • 修复 egress gateway 无法路由和 egress gateway 同网段 Pod 流量问题。已在 ACP 4.0.9 修复。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.7

发布于:2025-12-10

已修复问题

  • 在此更新之前,Tekton Pipeline 组件存在 Kubernetes STIG 安全漏洞,其中密钥通过 tekton-hub-api 部署中的环境变量暴露,违反了安全最佳实践。通过此次更新,环境变量中的密钥挂载逻辑已被完全移除,确保 tekton-hub-api 部署不再暴露任何凭据,符合 Kubernetes STIG 安全要求。
  • 在此更新之前,Tekton Results 中的 tekton-results-retention-policy-agent 容器在环境变量中包含敏感信息,在容器操作和日志记录场景中存在以明文形式暴露凭据的安全风险。通过此次更新,敏感信息已得到适当保护并从环境变量中移除,以防止凭据泄露,确保 retention-policy-agent 容器在其配置中不再包含明文密码或令牌,从而增强了 Tekton Results 系统的整体安全态势。
  • 在此更新之前,tekton-results-postgres-0 中的 PostgreSQL 容器包含带有敏感信息的环境变量,如 PASSWORD、password、TOKEN 和 token,当这些凭据以明文形式暴露时存在安全风险。通过此次更新,敏感环境变量已得到适当保护,不再包含明文密码或令牌,确保敏感凭据得到安全处理,不会在容器环境变量中暴露。
  • 在此更新之前,tekton-results-api 容器的环境变量包含敏感信息,当这些凭据以明文形式暴露时存在安全风险。通过此次更新,敏感环境变量已得到适当保护,密码和令牌信息不再以明文形式暴露,增强了 tekton-results-api 组件的安全性。
  • 在此更新之前,流水线界面存在多个显示问题,包括文本显示问题、变量完成多行功能用户体验不佳,以及更新触发器时的不稳定行为,其中参数和工作空间有时会出现有时会消失,需要用户重新选择流水线才能使它们出现(包括流水线列表)。通过此次更新,这些显示问题已得到解决。流水线和流水线运行页面现在正确显示,具有改进的文本渲染、增强的变量完成多行功能以提供更好的用户体验,以及稳定的触发器更新行为,其中参数和工作空间一致出现,无需重新选择流水线。
  • upmachinepool 资源的 status 字段保存关联的 machine 资源时未做排序,导致每次 reconcile 都被判定为需要更新,审计数据量因此过大。该问题已在 v4.0.7 修复。
  • 将命名空间导入项目时,在导入过程中调整容器组安全策略级别(例如由 Baseline 改为 Restricted)不会生效,导入完成后命名空间详情页显示的仍是原有级别。该问题已在 v4.0.7 修复,导入时设置的安全策略级别会正确保存。
  • 在控制台中为 Deployment 的容器添加 lifecycle 配置并更新后,待 Pod 启动完成再次更新该应用(例如只修改标签),容器的 lifecycle 配置会被意外删除。该问题已在 v4.0.7 修复,后续更新不再影响已有的 lifecycle 配置。

已知问题

  • 使用对接外部 ElasticSearch 功能时,从任意版本升级至 4.0.x 版本,Log Storage for Elasticsearch 组件会升级失败。该问题已在 v4.0.9 修复。
  • 通过 http 地址对接外部 ElasticSearch 时,日志查询可能失败,日志页面报错“cannot assign requested address”。该问题已在 v4.0.8 修复。
  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • ovn-db 数据库文件被手动删除后,ovn-central 因数据库文件为空而无法正常启动,会持续崩溃重启且无法自动恢复。该问题已在 v4.0.8 修复,ovn-central 在该场景下可以自动恢复运行。
  • 受 ovn-central 的竞态问题影响,OVN 北向数据库可能同时出现两个 leader,各节点数据不一致,集群网络的变更操作(如创建 Pod、创建子网、变更网络策略)随之失败。该问题已在 v4.0.8 修复。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.6

发布于:2025-11-03

已修复问题

  • 从 v3.x 升级到 v4.x 时,若 global 集群已升级而业务集群未升级,在该业务集群的新版自定义监控面板中创建的监控指标无法被 HPA 使用,基于这些指标的弹性伸缩规则不会生效。该问题已在 v4.0.6 修复。

已知问题

  • 使用对接外部 ElasticSearch 功能时,从任意版本升级至 4.0.x 版本,Log Storage for Elasticsearch 组件会升级失败。该问题已在 v4.0.9 修复。
  • 通过 http 地址对接外部 ElasticSearch 时,日志查询可能失败,日志页面报错“cannot assign requested address”。该问题已在 v4.0.8 修复。
  • upmachinepool 资源的 status 字段保存关联的 machine 资源时未做排序,导致每次 reconcile 都被判定为需要更新,审计数据量因此过大。该问题已在 v4.0.7 修复。
  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • ovn-db 数据库文件被手动删除后,ovn-central 因数据库文件为空而无法正常启动,会持续崩溃重启且无法自动恢复。该问题已在 v4.0.8 修复,ovn-central 在该场景下可以自动恢复运行。
  • 受 ovn-central 的竞态问题影响,OVN 北向数据库可能同时出现两个 leader,各节点数据不一致,集群网络的变更操作(如创建 Pod、创建子网、变更网络策略)随之失败。该问题已在 v4.0.8 修复。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • 在控制台中为 Deployment 的容器添加 lifecycle 配置并更新后,待 Pod 启动完成再次更新该应用(例如只修改标签),容器的 lifecycle 配置会被意外删除。该问题已在 v4.0.7 修复,后续更新不再影响已有的 lifecycle 配置。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.5

发布于:2025-09-30

已修复问题

  • 从集群卸载 Operator 后,其状态被错误地显示为 Absent,而实际状态仍为 Ready;用户需要通过 violet upload 手动重新上传才能恢复正确状态。该问题已在 v4.0.5 修复,卸载后 Operator 会正确显示为 Ready。
  • 使用 violet upload 上传 Operator 新版本后,偶尔会出现无法选择并安装该新版本的情况。该问题已在 v4.0.5 修复。
  • 当 Operator 或 Cluster Plugin 中包含多个前端扩展时,点击这些扩展的左侧导航可能没有任何反应。此前的临时规避方式是为扩展的 ConfigMap 添加注解 cpaas.io/auto-sync: "false"。该问题已在 v4.0.5 修复,不再需要该临时规避方式。

已知问题

  • Redis 哨兵实例从 v5 升级到 v7 时,偶现脑裂的情况,会导致数据丢失。
    解决方案:在跨版本升级前,对 Redis 实例进行数据备份。
  • 当集群网络异常, PostgreSQL 实例的主节点 Lable 更新失败时,会导致 PostgreSQL 状态异常,部分新建连接可能会失败。
    临时解决方案:网络恢复正常后,PostgreSQL 实例会自动恢复至正常状态。
  • 在此更新之前,流水线界面存在多个显示问题,包括文本显示问题、变量完成多行功能用户体验不佳,以及更新触发器时的不稳定行为,其中参数和工作空间有时会出现有时会消失,需要用户重新选择流水线才能使它们出现(包括流水线列表)。通过此次更新,这些显示问题已得到解决。流水线和流水线运行页面现在正确显示,具有改进的文本渲染、增强的变量完成多行功能以提供更好的用户体验,以及稳定的触发器更新行为,其中参数和工作空间一致出现,无需重新选择流水线。
  • 使用对接外部 ElasticSearch 功能时,从任意版本升级至 4.0.x 版本,Log Storage for Elasticsearch 组件会升级失败。该问题已在 v4.0.9 修复。
  • 通过 http 地址对接外部 ElasticSearch 时,日志查询可能失败,日志页面报错“cannot assign requested address”。该问题已在 v4.0.8 修复。
  • upmachinepool 资源的 status 字段保存关联的 machine 资源时未做排序,导致每次 reconcile 都被判定为需要更新,审计数据量因此过大。该问题已在 v4.0.7 修复。
  • 之前当集群中存在 Display Name 为空的节点时,用户在节点详情页面打开面包屑的节点下拉筛选框,会无法通过输入内容来筛选节点。此问题已在 ACP 4.2.0 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。
  • ovn-db 数据库文件被手动删除后,ovn-central 因数据库文件为空而无法正常启动,会持续崩溃重启且无法自动恢复。该问题已在 v4.0.8 修复,ovn-central 在该场景下可以自动恢复运行。
  • 受 ovn-central 的竞态问题影响,OVN 北向数据库可能同时出现两个 leader,各节点数据不一致,集群网络的变更操作(如创建 Pod、创建子网、变更网络策略)随之失败。该问题已在 v4.0.8 修复。
  • 从 v3.x 升级到 v4.x 时,若 global 集群已升级而业务集群未升级,在该业务集群的新版自定义监控面板中创建的监控指标无法被 HPA 使用,基于这些指标的弹性伸缩规则不会生效。该问题已在 v4.0.6 修复。
  • 通过 YAML 创建应用时使用 defaultMode 字段导致应用创建失败。
    操作路径:容器平台 → 应用管理 → 应用列表 → 通过 YAML 创建(Create from YAML),当提交的 YAML 文件中包含 defaultMode 字段(通常用于 ConfigMap/Secret 的卷挂载权限配置)时,应用创建会失败并返回校验错误。
    解决方案:创建应用前手动移除 YAML 中所有 defaultMode 声明。
  • 在控制台中为 Deployment 的容器添加 lifecycle 配置并更新后,待 Pod 启动完成再次更新该应用(例如只修改标签),容器的 lifecycle 配置会被意外删除。该问题已在 v4.0.7 修复,后续更新不再影响已有的 lifecycle 配置。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。
  • 部署或升级集群时,Kube-OVN 的网络控制面组件可能反复重启,集群部署无法完成。目前没有可用的规避方式。
  • 当 Helm Chart 中设置了 pre-delete post-delete hook。
    执行删除模板应用,卸载 Chart 时,遇到某些原因导致 hook 执行失败,进而导致应用无法删除。需要排查原因,并优先解决 hook 执行失败的问题。

4.0.4

发布于:2025-09-01

已修复问题

  • 以前在升级集群时,会遗留 CRI(Container Runtime Interface)Pod,从而阻塞集群继续升级到 4.1。该问题已在 4.0.4 中修复。

已知问题

此次发版无相关问题。

4.0.3

发布于:2025-07-01

已修复问题

  • 在使用 Calico 网络的高可用集群中,无法删除 master 节点。该问题已在 v4.0.3 修复。

已知问题

  • 以前在升级集群时,会遗留 CRI(Container Runtime Interface)Pod,从而阻塞集群继续升级到 4.1。该问题已在 4.0.4 中修复。

4.0.2

发布于:2025-06-06

已修复问题

  • 在托管到平台的公有云 Kubernetes 集群(如 ACK)上执行节点 Drain 操作时,操作失败并返回 404 错误。该问题已在 v4.0.2 修复。

已知问题

  • 在使用 Calico 网络的高可用集群中,无法删除 master 节点。该问题已在 v4.0.3 修复。

4.0.1

发布于:2025-05-04

已修复问题

  • frontend 组件长时间运行时会持续泄露 HTTP 连接,可能耗尽本地临时 TCP 端口,导致前端页面无法访问。该问题已在 v4.0.11 修复。
  • 在集群 api-server 压力过大的场景下,kyverno-report-controller 中的 aggregate worker 有概率无法启动,导致合规报告无法正常创建:PolicyReport 资源缺失,Web Console 无法展示违规资源信息,或只能展示部分报告数据。该问题已在 v4.0.1 修复。

已知问题

  • 在使用 Calico 网络的高可用集群中,无法删除 master 节点。该问题已在 v4.0.3 修复。
  • 在托管到平台的公有云 Kubernetes 集群(如 ACK)上执行节点 Drain 操作时,操作失败并返回 404 错误。该问题已在 v4.0.2 修复。

4.0.0

发布于:2025-04-08

功能与增强

安装与升级:模块化架构

我们已全面重构平台架构,以提供前所未有的灵活性、更快的更新速度以及更低的运维开销。

简化安装
现在,平台通过一个轻量级的核心包进行部署,该包仅包含必需组件。基础就绪后,客户可以按需选择所需的 Operator 或集群插件——无论是 DevOps、Service Mesh 还是其他专用功能——并分别下载、上传和安装它们。

定向补丁

  • 补丁版本仅包含确实需要修复 bug 的组件。
  • 未包含修复的组件保持原样,确保平台其余部分不受影响。
  • 客户通过平台内置的标准化升级机制应用补丁,而不是手动更新单个组件,从而使维护和跟踪更加简便。

智能升级

  • 升级过程中,仅替换并重启有新代码的组件。
  • 未修改的组件保留现有版本和正常运行时间。
  • 这可最大限度减少停机时间,并缩短维护窗口,从而带来更平滑的升级体验。

独立的组件版本管理

  • 大多数 Operator 都遵循各自独立于核心平台的发版节奏。
  • 新功能和修复一经就绪即可上线,无需等待整个平台更新。
  • 这种方式加快了交付速度,让客户能更快受益于改进。

集群:使用 Cluster API 进行声明式集群生命周期管理

本地部署集群现在借助 Kubernetes Cluster API 实现完全声明式操作,包括:

  • 集群创建
  • 节点扩缩容和加入

这种无缝的 Cluster API 集成可直接融入您的 IaC 流水线,实现对集群生命周期的端到端程序化控制。

Operator 与扩展:全面的能力可见性

完整的 Operator 目录

OperatorHub 现在会显示所有受支持的 Operator,无论其包是否已上传到平台。此增强功能:

  • 即使在 air-gapped 环境中,也能完整展示平台能力
  • 消除可用能力与用户已知信息之间的差距
  • 降低探索平台能力时的发现成本

版本灵活性

用户现在可以在安装期间选择特定的 Operator 版本,而不再仅限于最新版本,从而更好地控制组件兼容性和升级路径。

Web Console 扩展

Operator 现在支持基于锚点的 Web Console 扩展,允许将面向特定功能的前端镜像包含在 Operator 内,并无缝集成到平台的 Web Console 中。

集群插件增强

对 Operator 可见性、版本选择以及 Web Console 扩展能力的所有改进,同样适用于集群插件,确保在所有平台扩展中提供一致的用户体验。

日志查询逻辑优化

日志查询页面已优化,以解决用户在使用日志查询功能时遇到的体验和性能问题:

  • 原有的单选框已替换为高级搜索组件。现在,您可以像使用 GIT 搜索一样使用日志搜索。
  • 日志内容支持独立查询条件
  • 时间查询条件的位置已调整。现在,在调整时间范围时,不会重置日志筛选条件。
  • 优化了日志查询 API,以提升整体查询性能

ElasticSearch 升级到 8.17

我们将 ElasticSearch 升级到 8.17,以跟进社区的功能和改进。

ALB 认证

ALB 现在支持多种认证机制,这使用户可以在 Ingress 层处理认证,而无需在每个后端应用中分别实现。

ALB 支持 ingress-nginx 注解

本版本在 ALB 中新增对常见 ingress-nginx 注解的支持,包括 keepalive 设置、超时配置和 HTTP 重定向,从而增强与社区 ingress-nginx 的兼容性。

KubeVirt 热迁移优化

在热迁移过程中,网络中断时间已缩短至 0.5 秒以内,现有 TCP 连接不会断开。
这一优化显著提升了生产环境中虚拟机迁移的稳定性和可靠性。

LDAP/OIDC 集成优化

LDAP/OIDC 集成表单字段已调整,主要包括移除不必要/重复的字段以及优化字段描述。
LDAP/OIDC 集成现在支持通过 YAML 进行配置,允许在 YAML 文件中进行用户属性映射。

Source to Image (S2I) 支持

  • 新增 Alauda Container Platform Builds operator,用于从源代码自动构建镜像
  • 支持 Java/Go/Node.js/Python 语言栈
  • 通过源代码仓库简化原生应用部署

本地 Registry 解决方案

  • ACP Registry 提供了轻量级 Docker Registry,并具备企业级功能
  • 提供开箱即用的镜像管理能力
  • 简化原生应用交付

GitOps 模块重构

  • ACP GitOps 解耦为独立的集群插件架构
  • 将 Argo CD 升级到 v2.14.x 版本
  • 增强基于 GitOps 的原生应用生命周期管理

命名空间级监控

  • 在命名空间级别引入动态监控仪表板
  • 提供 Applications/Workloads/Pods 指标可视化

Crossplane 集成

  • 发布 Alauda Build of Crossplane 发行版
  • 通过 XRD 组合实现以应用为中心的资源交付

虚拟化更新

  • 升级到 KubeVirt 1.4,以增强虚拟化能力
  • 优化镜像处理,加快虚拟机部署
  • 优化 VM 热迁移,现在可直接从 UI 发起,并可查看迁移状态
  • 改进绑定网络,支持双栈(IPv4/IPv6)
  • 新增 vTPM 支持,以增强 VM 安全性

Ceph 存储更新

  • 带有 stretch cluster 的 Metro-DR 可在可用区之间实现实时数据同步
  • 基于存储池镜像的 Regional-DR 增强数据保护

TopoLVM 更新

  • 新增对多路径设备部署的支持,提升灵活性和稳定性

已修复问题

  • Operator 上架新版本后,需要等待约 10 分钟新版本才能被安装到。该问题已在 v4.0.0 改进,等待时间缩短至 2 分钟,用户可以更快安装 Operator 的新版本。
  • 在单节点多张卡的gpu节点上,gpu-manager 偶尔会存在,针对使用 vgpu 的应用调度不成功问题。
  • 使用pgpu插件时,需要将gpu节点上的默认 runtimeclass设置为nvidia。如果不设置,可能会导致应用无法正常请求gpu资源。
  • 在单张 GPU 卡上,使用 gpu-manager 无法同时创建基于 vllm、mlserver 的多个推理服务
    在 AI 平台上,使用 gpu-manager 创建多个推理服务时,会出现该问题;在容器平台上,使用 gpu-manager 创建多个智能应用时,不会出现该问题。
  • 使用mps时,当节点资源不足时,pod会无限重启。

已知问题

  • 在使用 Calico 网络的高可用集群中,无法删除 master 节点。该问题已在 v4.0.3 修复。
  • 在集群 api-server 压力过大的场景下,kyverno-report-controller 中的 aggregate worker 有概率无法启动,导致合规报告无法正常创建:PolicyReport 资源缺失,Web Console 无法展示违规资源信息,或只能展示部分报告数据。该问题已在 v4.0.1 修复。
  • 在配置管理中创建的 Image Registry 类型凭据只保存了用户名和密码,缺少 kubectl create secret docker-registry 会生成的 auth 认证字段,依赖完整认证信息的镜像构建工具(如 buildah)使用该凭据推送镜像时会提示无权限。该问题已在 v4.0.4 修复,控制台创建的凭据与命令行创建的凭据包含相同的完整认证信息。
  • ceph-mgr 创建的默认存储池 .mgr 会使用默认的 Crush Rule,在延伸集群中不能正常选出 osd,所以必须使用 CephBlockPool 创建名为 .mgr 的存储池,但是因为时序上的不确定导致 mgr 可能先于 Rook Operator 去创建 .mgr 存储池导致出现该问题。
    遇到该问题后可以尝试重启 rook-ceph-mgr 的 pod,如果不能恢复需要清理后重新部署。

此次发版无相关问题。

  • 使用对接外部 ElasticSearch 功能时,从任意版本升级至 4.0.x 版本,Log Storage for Elasticsearch 组件会升级失败。该问题已在 v4.0.9 修复。
  • 通过 http 地址对接外部 ElasticSearch 时,日志查询可能失败,日志页面报错“cannot assign requested address”。该问题已在 v4.0.8 修复。
  • 日志归档完成后,临时文件未被删除,导致其占用的磁盘空间无法释放。该问题已在 log-v4.2.0 修复。