既にテンプレート化されている Helm ChartsをYAMLファイルとしてエクスポートしたい。現在、Kubernetes ClusterでTillerを使用することはできませんが、それでもヘルムチャートを使用したいです。基本的に、Kelbernetes APIに送信されるYAMLをHelmでエクスポートし、Helmによってテンプレート化された値をエクスポートします。その後、YAMLファイルをKubernetesクラスターにアップロードします。
.\helm.exe install --debug --dry-run incubator\kafka
を実行しようとしましたが、エラーError: Unauthorized
が表示されます。
Windows(バージョンhelm-v2.9.1-windows-AMD64)でHelmを実行していることに注意してください。
Unauthorized
の問題を確認するにはログが必要です。
ただし、テンプレートをローカルで簡単に生成できます。
helm template mychart
チャートテンプレートをローカルでレンダリングし、出力を表示します。
これにはTillerは必要ありません。ただし、通常はクラスタ内で検索または取得される値はローカルで偽装されます。さらに、チャートの有効性のサーバー側のテスト(APIがサポートされているかどうかなど)は行われません。
Amrit Beraのソリューションは、ローカルヘルムチャートでのみ機能します。リモートヘルムチャートで機能する質問の詳細に応じて、これはHelm v3(現在進行中の作業)に追加される機能です。
RehanSaeedは次の回避策を投稿しました( https://github.com/helm/helm/issues/4527 )
基本的に:
mkdir yamls
helm fetch --untar --untardir . 'stable/redis' #makes a directory called redis
helm template --output-dir './yamls' './redis' #redis dir (local helm chart), export to yamls dir
これの良い点は、この手法とgit opsのweaveworksフラックスを混合できることです。これにより、Tillerプラグイン(Tillerをローカルで実行できますが、スムーズに動作しません)に加えて、TillerなしでHelm v2を使用する別のオプションが提供されます)。
helm install --help
から直接
To check the generated manifests of a release without installing the chart,
the '--debug' and '--dry-run' flags can be combined. This will still require a
round-trip to the Tiller server.