範本除錯

除錯範本可能會很棘手,因為渲染後的範本會發送到 Kubernetes API 伺服器,而 Kubernetes API 伺服器可能會因為格式以外的原因拒絕 YAML 檔案。

有一些命令可以幫助您除錯。

  • helm lint 是您用於驗證圖表是否遵循最佳實務的首選工具
  • helm template --debug 將在本地測試渲染圖表範本。
  • helm install --dry-run --debug 也會在本地渲染您的圖表而不安裝它,但也會檢查叢集中是否已在執行衝突的資源。設定 --dry-run=server 還會對伺服器執行圖表中的任何 lookup
  • helm get manifest:這是查看伺服器上安裝了哪些範本的好方法。

當您的 YAML 無法解析,但您想查看生成的內容時,一種簡單的檢索 YAML 的方法是在範本中將問題部分註釋掉,然後重新執行 helm install --dry-run --debug

apiVersion: v2
# some: problem section
# {{ .Values.foo | quote }}

以上內容將被渲染並以註釋完整地返回

apiVersion: v2
# some: problem section
#  "bar"

這提供了一種快速查看生成內容的方法,而不會被 YAML 解析錯誤阻止。