掌舵干运行安装

时间:2017-12-19 19:58:00

标签: kubernetes kubernetes-helm

我正在尝试使用--dry-run选项测试我的开发头盔聊天部署输出。当我运行以下命令时,它试图连接到Kubernetes API服务器。

连接Kubernetes群集需要干运行选项吗?我只想检查部署yaml文件输出。

helm install mychart-0.1.0.tgz --dry-run --debug

Error: Get http://localhost:8080/api/v1/namespaces/kube-system/pods?labelSelector=app%3Dhelm%2Cname%3Dtiller: dial tcp [::1]:8080: connectex: No connection could be made because the target machine actively refused it.

4 个答案:

答案 0 :(得分:19)

正如Helm's documentation

所述
  

如果要测试模板渲染,但实际上没有安装任何东西,可以使用helm install --debug --dry-run ./mychart。这会将图表发送到Tiller服务器,该服务器将呈现模板。但是,不是安装图表,而是将渲染的模板返回给您,以便您可以看到输出

因此,它仍然需要连接到Tiller以使用正确的值呈现模板。使用--dry-run选项的不同之处在于它实际上不会安装图表。

答案 1 :(得分:18)

还有一个选项可以运行helm template ./mychart来渲染生成的YAML,而无需连接到分蘖。 与helm lint结合使用,可以很好地验证图表的有效性。

答案 2 :(得分:7)

在头盔安装helm install --dry-runhelp template命令之间存在细微差别:

  • helm install --dry-run会将您的图表发送到分till 将根据K8S规范以及 YAML验证。

  • help template仅生成清单并验证您的YAML文件是否有效。但是,它不会检查生成的清单是否为有效的Kubernetes资源。参考:Helm Docs

希望这会有所帮助!

答案 3 :(得分:0)

改用 Helm templatehelm lint

helm lint是验证图表是否遵循最佳实践的首选工具