Conditions、Tags、Global Values
Subchart の有効・無効を切り替え、全体で Global Values を共有します。
「Conditions、Tags、Global Values」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。
すべてのサブチャートが常に必要とは限らない
本番環境では組み込みのデータベースを無効にし、ローカルテストでは有効にしたい場合があります。Helm では、conditions と tags を使ってサブチャートを切り替えられます。
condition フィールド
Chart.yaml で依存関係の condition に真偽値のパスを指定します。その値が true の場合はサブチャートがインストールされ、false の場合はスキップされます。
- name: postgresql
version: "15.5.0"
repository: "@bitnami"
condition: postgresql.enabledvalues.yaml で真偽値を接続する
condition で指定したパスは、利用者が制御する値を指します。多くのチャートでは慣例として、サブチャート名の enabled フラグを使います。
postgresql:
enabled: trueインストール時に切り替える
単なる値なので、ファイルを編集せずに CLI から condition を切り替え、1 回のインストールだけサブチャートを無効にすることもできます。
helm install web ./mychart \
--set postgresql.enabled=falsetags でサブチャートをグループ化する
tags エントリは依存関係にラベルを付け、複数のサブチャートをまとめて切り替えられるようにします。1 つの tag で機能全体を有効または無効にできます。
- name: redis
version: "19.0.1"
repository: "@bitnami"
tags:
- cache最上位から tags を制御する
values.yaml のトップレベルにある tags マップで、tag を有効または無効にします。false に設定すると、その tag を持つすべてのサブチャートがスキップされます。
tags:
cache: falsecondition は tags より優先される
両方が適用される場合、サブチャートの condition が tags より優先されます。チャートごとに明示したフラグが、より広範なグループ切り替えより優先されます。
global の値はどこからでも参照できる
特別な global キーの下にある値は、親チャートとすべてのサブチャートで一度に共有されます。クラスター全体の設定に最適です。
global:
imageRegistry: my-registry.io
storageClass: fast-ssd.Values.global として global を読み取る
親チャートでもサブチャートでも、どのテンプレートからでも .Values.global を通じて共有データを読み取れます。これにより、サブチャートは共通のレジストリやドメインを利用できます。
image: {{ .Values.global.imageRegistry }}/app:1.0共有スコープは global だけ
通常の親チャートの値は親チャート内だけで使われます。すべてのサブチャートとの境界を自動的に越えられるのは、global ブロックだけです。
目的に応じてツールを使い分ける
1 つのサブチャートを切り替えるには condition、グループを切り替えるには tags、設定を共有するには global を使います。これらを組み合わせることで、大規模なチャートにも柔軟に対応できます。
クイックチェック
チャートとすべてのサブチャートから参照できるレジストリの値を 1 つ設定したいとします。どこに指定しますか。
振り返り: condition、tags、global
condition でサブチャートを切り替え、tags でグループを切り替え、global で設定を共有する方法を学びました。condition は常に tags より優先されます。🌐
よくある質問
「Conditions、Tags、Global Values」レッスンは無料ですか?
はい。「Conditions、Tags、Global Values」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。
「Conditions、Tags、Global Values」で何を学びますか?
Subchart の有効・無効を切り替え、全体で Global Values を共有します。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
DevOps Bootcampを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。
「Conditions、Tags、Global Values」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このDevOps Bootcampレッスンでコードを書いて実行できますか?
はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- Chart.yaml で依存関係を宣言する
- helm dependency update で Vendor 化する
- 親の Values から Subchart を設定する
- Conditions、Tags、Global Values