自訂 Worker

CeleryExecutorKubernetesExecutor worker 都可以透過 workers 參數 進行高度自訂。例如,在 worker 上設定資源

workers:
  resources:
    requests:
      cpu: 1
    limits:
      cpu: 1

請參閱 workers 參數 以取得完整列表。

對於 KubernetesExecutor 的一個值得注意的例外是,應用於 CeleryExecutor worker 以將它們分散到各節點的預設反親和性,不適用於 KubernetesExecutor worker,因為沒有理由分散每個任務的 worker。

自訂 pod_template_file

對於 KubernetesExecutorCeleryKubernetesExecutor,您也可以提供完整的 pod_template_file 來設定 Kubernetes worker。如果您需要在 CeleryKubernetesExecutor 的 worker 類型之間進行不同的設定,或者如果您需要自訂一些僅靠 workers 參數 無法實現的功能,這可能會很有用。

舉例來說,假設您想在您的 worker 上設定 priorityClassName

注意

以下範例並非功能性範例,而是旨在說明如何提供自訂的 pod_template_file。您最好從預設的 pod_template_file 開始。

podTemplate: |
  apiVersion: v1
  kind: Pod
  metadata:
    name: placeholder-name
    labels:
      tier: airflow
      component: worker
      release: {{ .Release.Name }}
  spec:
    priorityClassName: high-priority
    containers:
      - name: base

這個條目是否有幫助?