如何判断导致舵图部署失败的原因?

时间:2021-03-31 03:26:17

标签: kubernetes kubernetes-helm rancher

如果 Helm 部署的状态为 failed,我该如何确定导致它失败的原因?

2 个答案:

答案 0 :(得分:2)

将以下参数附加到 helm install 命令以验证语法和命令

--dry-run --debug

如果该命令有效,则跳过上述参数继续运行。

答案 1 :(得分:2)

Helm Chart 部署可能会由于以下 3 个原因而失败。

  1. 图表不正确
  2. 部署配置不正确。
  3. 由于某些问题(图像拉取问题、资源配额)导致调度容器和服务时出现问题

可以执行以下步骤进行调试。

图表正确性检查

在本地使用 helm lint 检查图表的正确性

helm lint PATH [flags] Ref: https://helm.sh/docs/helm/helm_lint/

部署配置正确性检查

使用 --dry-run --debug 标志检查建议的部署配置的正确性

helm install <ChartName> --dry-run --debug

Kubernetes 集群部署问题检查

要检查诸如容器创建是否因映像拉取失败或 Pod 因资源紧缩而未安排好等问题,请执行以下诊断。

如果您的部署是在特定命名空间中部署的,请在每个命令中添加命名空间标志(append -n )。 留意与您的掌舵图表相关的项目。

kubectl get deployment

kubectl describe deployment <deployment_id_found_in_previos_step>

kubectl get rs

kubectl describe rs <resource_set_id_found_in_previos_step>

kubectl get pods

kubectl describe pods <pod_id_found_in_previos_step>

查看上述每个命令的输出。