通过 Chart 创建原生应用

基于 Helm Chart 代表一种原生应用部署模式。Helm Chart 是一组用于定义 Kubernetes 资源的文件,旨在打包应用并支持版本控制能力的应用分发。这使得环境切换更加顺畅,例如从开发环境迁移到生产环境。

注意事项

当集群同时包含 Linux 和 Windows 节点时,必须配置显式的节点选择,以避免调度冲突。示例:

spec:
    spec:
      nodeSelector:
        kubernetes.io/os: linux

前提条件

如果模板来自原生应用并引用了相关资源(例如 secret 字典),请确保在应用部署之前,当前 namespace 中已存在待引用的资源。

操作步骤

  1. 在左侧边栏中,进入 Container Platform > Applications > Applications

  2. 单击 Create

  3. 选择 Create from Catalog 作为创建方式。

  4. 选择一个 Chart 并配置参数,例如 resources.requestsresources.limits 以及其他与 chart 密切相关的参数。

  5. 单击 Create

Web 控制台将跳转到 Application > [Native Applications] 详情页。该过程需要一些时间,请耐心等待。如果操作失败,请按照界面提示完成操作。

状态分析参考

单击 Application Name,即可在详情信息中查看 Chart 的详细状态分析。

类型原因
Initialized表示 Chart 模板的下载状态。
  • True:表示已成功下载 Chart 模板。
  • False:表示 Chart 模板下载失败;可在 message 列中查看具体失败原因。
    • ChartLoadFailed:Chart 模板下载失败。
    • InitializeFailed:在 Chart 下载之前,初始化过程发生异常。
Validated表示 Chart 模板的用户权限、依赖项及其他校验状态。
  • True:表示所有校验均已通过。
  • False:表示存在未通过的校验;可在 message 列中查看具体失败原因。
    • DependenciesCheckFailed:Chart 依赖检查失败。
    • PermissionCheckFailed:当前用户没有权限对某些资源执行操作。
    • ConsistentNamespaceCheckFailed:通过原生应用中的模板部署应用时,Chart 包含需要跨 namespace 部署的资源。
Synced表示 Chart 模板的部署状态。
  • True:表示 Chart 模板已成功部署。
  • False:表示 Chart 模板部署失败;原因列显示 ChartSyncFailed,可在 message 列中查看具体失败原因。
WARNING
  • 如果模板引用了跨 namespace 资源,请联系管理员协助创建。之后,您可以在 web 控制台上正常 更新和删除 Chart Applications
  • 如果模板引用了集群级资源(例如 StorageClasses),建议联系管理员协助创建。