Skip to content

Release 操作事件

安装(Install)、升级(Upgrade)、回滚(Rollback)、卸载(Uninstall)在 Kuboard 中都是异步执行的:提交操作后立即返回,真正的工作由后台的 helm CLI 子进程完成。操作事件页就是这次后台执行的"直播窗口"——实时展示 helm 的执行日志、涉及资源的状态和整体进度。

入口

操作事件页是隐藏路由,不需要(也无法)从菜单进入。在以下任一页面提交操作后,浏览器会自动跳转到事件页:

来源页面操作提交后去向
安装 Release(./install安装自动跳转事件页
升级 / 回滚(./upgrade-rollback升级或回滚自动跳转事件页
Release 列表(./releases卸载自动跳转事件页

跳转后的页面地址形如:

text
/helm/events/<集群ID>/<名称空间>/<Release名>?sessionId=<会话ID>

其中 sessionId 是本次后台操作的会话标识,事件页靠它在服务端找到对应操作的事件流。

操作结束后,页面右上角出现两个按钮:

  • 查看 Release —— 跳转到该 Release 的详情页
  • 返回 Releases 列表 —— 回到 Release 列表

事件流展示

看到什么

事件页从上到下分为四块:

  1. 连接状态标签 —— 当前事件流的状态:

    状态含义
    连接中正在建立事件流连接
    已连接事件流已建立,正在实时接收
    已完成操作成功结束(绿色)
    失败操作以非零退出码结束(红色)
    已取消操作被用户取消
  2. 进度条 —— 显示 已运行秒数 / 超时秒数(默认超时 300 秒)。运行超过 90% 时进度条变黄,提示即将超时。

  3. 资源状态 —— 当前已创建资源及其就绪情况:

    资源展示内容
    Deployment状态(Ready / Progressing)与副本数 就绪/总数
    Pod状态(Pending、Running、ImagePullBackOff、CrashLoopBackOff 等)

    Pod 状态异常时,悬停状态旁的警告图标可查看具体原因(message)。

  4. 日志面板 —— 深色终端风格的 helm 执行输出,逐行实时滚动,并自动滚到最新一行:

    • 普通输出:灰白色
    • helm 执行日志(LOG):蓝色
    • 失败信息(FAILED):红色
    • 完成信息(COMPLETED):绿色
    • 面板最多显示最近 500 行

事件是怎么产生的

每次后台操作都会产生一系列事件(Event),主要类型如下:

事件类型说明
STARTED操作启动(如 Helm install started
LOGhelm CLI 输出的每一行(stdout 与 stderr 合并)
HEARTBEAT周期性心跳,携带已运行时间与超时时间,用于驱动进度条
RESOURCE_STATUS周期性采集的资源状态快照(Pod / Deployment)
COMPLETED操作成功结束(退出码 0)
FAILED操作失败(非零退出码)
CANCELED操作被用户取消(退出码 137)

实时刷新机制

事件页通过 SSE(Server-Sent Events) 长连接订阅事件流。连接建立后,服务端会先重放本次操作已产生的历史事件,再实时推送新事件——因此操作过程中刷新页面不会丢日志。对应的服务端端点为 GET /{clusterId}/namespaces/{ns}/releases/{name}/eventsproduces = text/event-stream)。

何时使用

观察长时间操作

安装大型 Chart、或开启了 wait 需要等待资源就绪时,操作可能持续数分钟。此时:

  1. 提交安装 / 升级后自动进入事件页。
  2. 观察进度条确认操作仍在进行(心跳持续推送,时间持续增长)。
  3. 观察资源状态:Deployment 从 Progressing 变为 Ready、Pod 变为 Running,表示资源已就绪。
  4. 状态标签变为已完成后,点击 查看 Release 进入详情。

定位失败原因

操作失败(状态标签变红)时,原因通常写在两处:

现象排查位置
渲染模板错误、Chart 校验失败日志面板中的红色 FAILED 信息(helm 输出的错误详情)
资源一直不就绪、等待超时资源状态:Pod 卡在 ImagePullBackOff(镜像拉取失败)或 CrashLoopBackOff(容器启动崩溃),悬停查看 message

取消操作

操作进行中(状态为已连接)时,可点击右上角 取消操作 并确认:

  • 后台 helm 进程被终止,事件流以 CANCELED(退出码 137)结束,页面状态变为已取消
  • 页面会提示:取消前已创建的资源不会被自动删除,请手工清理。

WARNING

取消操作本质是终止后台进程,并不清理已创建的资源。取消后请到集群中确认并清理残留资源。

注意事项

  • 事件是操作过程中的实时流:事件只在后台操作存活期间产生。操作结束后直接打开事件页而不带 sessionId,会看到提示「未找到活跃的会话,操作可能已完成」。
  • 连接断开:网络波动导致事件流中断时,状态标签显示失败。刷新页面即可重新订阅,并重放本次操作的历史事件。
  • 日志有上限:日志面板只保留最近 500 行,较早的输出会被截断。
  • 超时:进度条按 已运行 / 超时 计算,超过 90% 变黄。超时后后台 helm 子进程被强制终止,操作以失败结束。
  • 最终结果以 Release 为准:操作是否成功,最终可在 Release 详情与 Revision 对比中确认(./releases)。