更新应用

自定义应用极大地方便了对工作负载、网络、存储和配置的统一管理,但并非所有资源都属于应用。

  • 在应用创建过程中添加的资源,或通过应用更新添加的资源,默认会关联到该应用,无需额外导入。

  • 在应用外部创建的资源不属于该应用,并且无法在应用详情中找到。不过,只要资源定义满足业务需求,业务仍可正常运行。在这种情况下,建议将资源导入到应用中进行统一管理。

  • 镜像管理

    • 通过 tag/patch 版本控制发布新的容器镜像
    • 配置 imagePullPolicy(Always/IfNotPresent/Never)
  • 运行时配置

    • 通过 ConfigMaps/Secrets 修改环境变量
    • 更新资源请求/限制(CPU/Memory)
  • 资源编排

    • 导入现有 Kubernetes 资源(Deployments/Services/Ingresses)
    • 使用 kubectl apply -f 在不同 namespace 之间同步配置

导入到应用中的资源可以享受以下特性:

功能说明
版本快照在为应用创建版本快照时,也会为应用内的资源生成快照。
  • 如果应用回滚,资源也会回滚到快照中的状态。
  • 如果分发应用的某个特定版本,平台会在重新部署应用时自动创建快照中记录的资源。
随应用删除如果不再需要某个应用,删除该应用时会自动移除所有与该应用关联的资源,包括计算组件、内部路由和入站规则。
更容易查找在应用详情中,可以快速查看与该应用关联的资源。
例如:外部流量可以通过属于 Application AService S 访问 Deployment D,但只有当 Service S 也属于 Application A 时,才能在应用详情中快速找到对应的访问地址。

导入资源

批量导入应用所在 namespace 下的相关资源;一个资源只能属于一个应用。

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Application Management > Native Applications

  3. 单击 应用名称

  4. 单击 Actions > Manage Resources

  5. 在底部的 Resource Type 中,选择要导入的资源类型。

    Note:常见的资源类型包括 Deployment、DaemonSet、StatefulSet、Job、CronJob、Service、Ingress、PVC、ConfigMap、Secret 和 HorizontalPodAutoscaler,这些类型会显示在顶部;其他资源按字母顺序排列,可通过搜索关键字快速查询特定资源类型。

  6. Resources 区域,选择要导入的资源。

    Attention:对于 Job 类型资源,仅支持导入通过 YAML 创建的任务。

  7. 单击 Import Resources

移除/批量移除资源

从应用中移除/批量移除资源,只会解除应用与资源的关联,不会删除资源本身。

如果应用下的资源之间存在互相关联,从应用中移除任意资源都不会改变资源之间的关联关系。例如,即使将 Service SApplication A 中移除,外部流量仍然可以通过 Service S 访问 Deployment D

  1. 进入 Container Platform

  2. 在左侧导航栏中,单击 Application Management > Native Applications

  3. 单击 应用名称

  4. 单击 Actions > Manage Resources

  5. 单击资源右侧的 Remove 进行移除;或一次选择多个资源,然后单击表格顶部的 Remove 批量移除资源。