擴充套件 Chart

在某些情況下,您可能希望將自定義模板(例如,您想要新增的維護 CronJob)與 Airflow chart 安裝一起部署。然而,有時這些模板與 Airflow chart 沒有直接關係,因此不應新增到 chart 中。

相反,您可以輕鬆地擴充套件 chart 並建立一個包含您自定義模板的自定義 chart,該 chart 依賴於 Airflow chart。當您安裝自定義 chart 時,Airflow chart 也會被安裝。

您可以透過執行以下步驟來擴充套件官方 Airflow chart。

建立自定義 Chart

首先,您需要建立自己的 chart 目錄。您可以透過執行以下命令來完成:

helm create my-custom-chart

此命令將建立一個名為 my-custom-chart 的目錄,其結構如下:

my-custom-chart/
├── .helmignore
├── Chart.yaml
├── values.yaml
├── charts/
└── templates/
    └── tests/

將 Airflow Chart 新增為依賴項

其次,您需要將 Airflow chart 新增為您的 chart 的依賴項。這將使您無需修改 Airflow chart 本身即可新增自定義模板。要將 Airflow chart 新增為您的 chart 的依賴項(通常稱為 subcharts),請將以下行新增到您的 Chart.yaml 檔案中:

dependencies:
  - name: airflow
    version: 1.11.0
    repository: https://airflow.apache.org

注意

確保您已透過執行以下命令在本地添加了 Airflow repo: helm repo add apache-airflow https://airflow.apache.tw

提示

您也可以使用 repo 的名稱代替 URL,方法是將 https://airflow.apache.tw 替換為 "@apache-airflow"

將 Airflow chart 新增為依賴項意味著它將與您的自定義 chart 一起部署。您可以透過在 dependencies 部分新增 condition 欄位來停用 Airflow 的安裝。例如:

dependencies:
  - name: airflow
    version: 1.11.0
    repository: https://airflow.apache.org
    condition: airflow.enabled

這將檢查您的 values.yamlairflow.enabled 的值是否為 true。如果是,Airflow chart 將與您的自定義 chart 一起部署。否則,只會部署您的模板。

下載 Airflow Chart

第三,在 Chart.yaml 檔案的 dependencies 部分指定 Airflow chart 後,您可以透過執行以下命令下載 Airflow chart:

helm dependency build

注意

確保您位於包含 Chart.yaml 檔案的目錄中。

該 chart 將被下載並儲存在 charts/ 目錄中。

覆蓋預設值

當您將一個 chart 新增為您的 chart 的 subchart 時,您可以在 values.yaml 中覆蓋 subchart 的預設值。這對於您的 chart 需要特定配置時非常有用。例如,如果您希望 Airflow chart 使用 KubernetesExecutor 進行安裝,您可以透過將以下部分新增到您的 values.yaml 中來實現:

airflow:
  executor: KubernetesExecutor

您可以覆蓋任意數量的值。

本條目是否有幫助?