擴充 Chart¶
在某些情況下,您會希望將您的自訂範本 (例如您想要新增的維護 CronJobs) 與 Airflow chart 安裝一起部署。然而,有時這些範本與 Airflow chart 沒有直接關聯,因此不應將其新增到 chart 中。
相反地,您可以輕鬆擴充 chart,並使用您的自訂範本建立一個依賴於 Airflow chart 的自訂 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 作為依賴項 (通常稱為 subcharts
) 新增到您的 chart,請將以下行新增到您的 Chart.yaml
檔案中
dependencies:
- name: airflow
version: 1.11.0
repository: https://airflow.apache.org
注意
請確保您已透過執行以下命令在本機新增了 Airflow repo:helm repo add apache-airflow https://airflow.dev.org.tw
。
提示
您也可以使用 repo 的名稱來取代 URL,方法是將 https://airflow.dev.org.tw
替換為 "@apache-airflow"
。
將 Airflow chart 新增為依賴項意味著它將與您的自訂 chart 一起部署。您可以透過將 condition
欄位新增到 dependencies
區段來停用 Airflow 的安裝。例如
dependencies:
- name: airflow
version: 1.11.0
repository: https://airflow.apache.org
condition: airflow.enabled
這將檢查您的 values.yaml
內 airflow.enabled
的值是否為 true
。如果是,Airflow chart 將與您的自訂 chart 一起部署。否則,只會部署您的範本。
下載 Airflow Chart¶
第三,在您於 Chart.yaml
檔案的 dependencies
區段中指定 Airflow chart 後,您可以透過執行以下命令來下載 Airflow chart
helm dependency build
注意
請確保您位於包含 Chart.yaml
檔案的目錄中。
chart 將被下載並儲存在 charts/
目錄中。
覆寫預設值¶
當您將 chart 作為子 chart 新增到您的 chart 時,您可以覆寫您 values.yaml
中子 chart 的預設值。當您的 chart 需要針對您的自訂 chart 的特定組態時,這非常有用。例如,如果您希望 Airflow chart 安裝時使用 KubernetesExecutor
,您可以透過將以下區段新增到您的 values.yaml
來完成
airflow:
executor: KubernetesExecutor
您可以依需求覆寫任意數量的值。