問題タブ [kustomize]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
177 参照

kubernetes - Kustomization と Helm で競合例外ルールが失敗する

私のプロジェクトの 1 つに、Helm と Kustomize を使用してビルド、構成、パッケージ化された k8s リソースがいくつかあります。Conftest を使用していくつかの OPA テストを作成しました。チェックの 1 つは、ルートとしてコンテナーを実行しないようにすることです。したがって、これが私のベースフォルダーの deployment.yaml です。

次に、overlays フォルダーに次のようなパッチ ファイル (flux-patch-prod.yaml) を作成します。

base.rego ファイルに次のような Conftest を記述しました。

しかし、それらを実行すると (helm-conftest プラグインがインストールされています)、次のエラーが発生します。

これを機能させる方法がわかりません。そもそも Kustomization を使用する目的全体が無効になるため、deployment.yaml から flux-patch-prod.yaml にコンテンツを再度コピーすることはしたくありません。これを修正する方法はありますか?私は昨日からこの問題でダウンしています!

0 投票する
1 に答える
55 参照

kubernetes - kubernetes マニフェストをカスタム化する際の共通コンポーネントの抽出

kustomize バイナリを使用して、特定の kubernetes 展開 yaml ファイルを作成しています。

{バージョン:kustomize/v3.8.1 GitCommit:0b359d0ef0272e6545eda0e99aacd63aef99c4d0 BuildDate:2020-07-16T00:58:46Z GoOs:linux GoArch:amd64}

これが私のディレクトリ構造です:

overlays/parser/prod/nonsec と /overlays/parser/prod/sec には、2 つの同一のパッチ ファイル セットが含まれていることに注意してください。共通ファイルを取り出して、prod の下の 1 レベルにプッシュしたい - 複数のディレクトリに同じパッチのコピーを入れたくない。nonsec ビルドと sec ビルドの両方で同じ prod-patches のセットを使用したいのですが、kustomize でそれを行う方法がわかりません。上記のディレクトリにそれらを配置しようとしましたが、kustomize は上記のディレクトリ内のパッチ ファイルへの参照を許可しません。これは私が行う必要があることです。

これらの prod-patches*.yaml ファイルが複数のディレクトリで重複しないようにするにはどうすればよいですか?!

これが私のnonsec kustomization.yamlです

そして、これは私の kustomization.yaml です。

0 投票する
2 に答える
1739 参照

kubectl - k8s kustomize を kubectl で使用してイメージを設定し、シークレット ファイルを作成できますか?

k8s kustomize を使用してイメージを設定し、シークレット ファイルを作成しています

$(cd ./k8s/overlays/prod && kustomize edit set image gcr.io/PROJECT_ID/image:1.0)

そしてこれはうまくいきます!

今、私はを使用kubectl kustomizeせずに同じことをしようとしていますcd . ./k8s/overlays/prod

Kubectl に組み込まれた Kustomize プラグインで可能ですか?

kustomize edit add secretディレクトリに移動せずにkubectlを使用する場合も同じcdですか?

0 投票する
1 に答える
470 参照

kubernetes - kustomize を使用して k8s シークレットをマウントする

私はしばらく探していましたが、カスタマイズするのはかなり新しいです。オーバーレイなどの概念を理解するのに時間がかかりました。

kustomization ファイルを使用して、既存のシークレットをポッドにマウントしようとしています。デプロイメントの 3 つの異なるバージョンが kustomize によって処理されている単一のデプロイメントであるため、デプロイメントでは実行できません。それぞれに異なる秘密のマウントが必要です。

したがって、明白な答えは、ベースまたはオーバーレイの kustomize ファイルを使用してシークレットをボリュームとしてマウントすることです。

kustomize を使用したシークレットの生成に関する情報を見つけましたが、シークレットは既に存在し、別の場所で kubernetes シークレットとして渡されています。

要約すると...

シークレットはインスタンス 1、2、および 3 で異なるため、インスタンスの場所にあるボリュームへのシークレットのマウントを処理しようとしています。

これは可能ですか?

ティア

編集:

シークレット用のファイルを追加しました (これは証明書用であるため、インスタンスごとに異なります)。

私のパッチ ファイル (pki.yaml) は次のようになります。

それから./base/instance1/kustomization.yaml私は持っています:

完全を期すために、私の./base/kustomization.yamlファイル:

上記のデプロイ時にエラーが発生します。深く掘り下げる前に、適切なツリーに吠えているかどうかを考えてみてください。

0 投票する
1 に答える
375 参照

kubernetes - GCPのGKEにクラウドビルドでkustomizeコマンドをデプロイすることはできますか?

ファイル名で GKE にデプロイする場合、Cloud Build が提供するサポート対象のビルダー イメージは公式から見つけることができます。

また、完全なリストを見つけることができます。

しかし、両方gke-deployまたはkubectl私の要件を満たすことはできません。のようなコマンドを実行したい

最初に kustomize でファイル全体をビルドする必要があるため、次に kubectl を使用します。

Running inline bash scriptsから、試すことができます

しかし、使用する GKE 上のクラスターが見つからないと思います。この場合、ローカル シェルで実行する代わりに Cloud Build で使用するにはどうすればよいでしょうか。