參數參考

下表列出了 Airflow chart 的可配置參數及其預設值。

通用

參數

描述

預設值

_rpcServer.RPC serverConfig

此字串 (可使用範本) 將會掛載到 Airflow RPC 伺服器中,作為自訂的 RPC server_config.py。您可以將 RPC server_config.py 烘焙到您的映像檔中,或者指定包含 RPC server_config.py 的 configmap。

~

範例

RPC serverConfig: |-
  from airflow import configuration as conf

  # The SQLAlchemy connection string.
  SQLALCHEMY_DATABASE_URI = conf.get('database', 'SQL_ALCHEMY_CONN')

  # Flask-WTF flag for CSRF
  CSRF_ENABLED = True

_rpcServer.RPC serverConfigConfigMapName

包含 RPC server_config.py 的 configmap 名稱。

~

範例

RPC serverConfigConfigMapName: my-RPC server-configmap

_rpcServer.defaultUser.enabled

啟用預設使用者建立。

True

airflowLocalSettings

airflow_local_settings 檔案,以字串形式 (可使用範本)。

請參閱 values.yaml

airflowVersion

Airflow 版本 (用於根據部署的 Airflow 版本做出一些決策)。

2.9.3

config

要放入已掛載 airflow.cfg 的設定

請參閱 values.yaml

defaultAirflowDigest

要部署的預設 airflow 摘要。覆寫標籤。

~

defaultAirflowRepository

預設 airflow 儲存庫。覆寫以下所有特定映像檔。

apache/airflow

defaultAirflowTag

要部署的預設 airflow 標籤。

2.9.3

executor

Airflow 執行器。

CeleryExecutor

fernetKey

用於加密密碼的 Fernet 金鑰 (只能在安裝期間設定,不能在升級期間設定)。

~

pgbouncer.enabled

啟用 PgBouncer。

False

schedulerName

為 Pod 指定 kube 排程器名稱。

~

webserver.defaultUser.enabled

啟用預設使用者建立。

True

webserver.webserverConfig

此字串 (可使用範本) 將會掛載到 Airflow Web 伺服器中,作為自訂的 webserver_config.py。您可以將 webserver_config.py 烘焙到您的映像檔中,或者指定包含 webserver_config.py 的 configmap。

~

範例

webserverConfig: |-
  from airflow import configuration as conf

  # The SQLAlchemy connection string.
  SQLALCHEMY_DATABASE_URI = conf.get('database', 'SQL_ALCHEMY_CONN')

  # Flask-WTF flag for CSRF
  CSRF_ENABLED = True

webserver.webserverConfigConfigMapName

包含 webserver_config.py 的 configmap 名稱。

~

範例

webserverConfigConfigMapName: my-webserver-configmap

webserverSecretKey

Airflow Web 伺服器用於加密瀏覽器工作階段的 Flask 密鑰。

~

Airflow

參數

描述

預設值

airflowHome

Airflow 主目錄。用於掛載路徑。

/opt/airflow

allowPodLaunching

各種 Airflow 組件是否啟動 Pod。

True

dags.gitSync.branch

Git 分支

v2-2-stable

dags.gitSync.containerName

Git 同步容器名稱。

git-sync

dags.gitSync.credentialsSecret

包含儲存庫 GIT_SYNC_USERNAMEGIT_SYNC_PASSWORD 的 Secret 名稱。

~

dags.gitSync.depth

儲存庫深度。

1

dags.gitSync.emptyDirConfig

dags emptyDir 磁碟區的設定。

~

dags.gitSync.enabled

啟用 Git 同步。

False

dags.gitSync.env

Git 同步容器的環境變數。

[]

範例

env:
- name: GIT_SYNC_TIMEOUT
  value: '60'

dags.gitSync.envFrom

將新增至 Airflow gitSync 容器定義的額外 envFrom「項目」;預期為字串或陣列 (可使用範本)。

~

範例

envFrom: |-
  - secretRef:
      name: 'proxy-config
envFrom: |-
  - configMapRef:
      name: 'proxy-config

dags.gitSync.extraVolumeMounts

將額外磁碟區掛載到 git 同步容器中。

[]

dags.gitSync.knownHosts

當使用 ssh 私密金鑰時,您的 known_hosts 檔案內容。

~

範例

knownHosts: |-
  <host1>,<ip1> <key1>
  <host2>,<ip2> <key2>
knownHosts: <host1>,<ip1> <key1>

dags.gitSync.maxFailures

中止前允許的連續失敗次數。

0

dags.gitSync.period

Git 同步嘗試之間的間隔,以 Go 風格持續時間字串表示。值越高,DAG 在不同組件之間越容易不同步。值越低,對遠端 git 儲存庫的流量越大。

5s

dags.gitSync.ref

Git 修訂版本分支、標籤或雜湊。

v2-2-stable

dags.gitSync.repo

Git 儲存庫。

https://github.com/apache/airflow.git

dags.gitSync.resources

workers git-sync sidecar 上的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

dags.gitSync.rev

Git 修訂版本。

HEAD

dags.gitSync.securityContext

gitSync 容器的安全性環境定義 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 中的值。

{}

範例

securityContext:
  runAsGroup: 0
  runAsUser: 50000

dags.gitSync.sshKey

SSH 私密金鑰

~

dags.gitSync.sshKeySecret

包含儲存庫 sshKeySecret 的 Secret 名稱。

~

dags.gitSync.subPath

dags 所在的儲存庫中的子路徑。

tests/dags

dags.gitSync.uid

Git 同步容器以使用者參數身分執行。

65533

dags.gitSync.wait

Git 同步嘗試之間的間隔,以秒為單位。值越高,DAG 在不同組件之間越容易不同步。值越低,對遠端 git 儲存庫的流量越大。

~

dags.mountPath

dags 磁碟區將掛載到的位置。persistencegitSync 都適用。如果未指定,dags 掛載路徑將設定為 $AIRFLOW_HOME/dags

~

dags.persistence.accessMode

永久磁碟區的存取模式。

ReadWriteOnce

dags.persistence.annotations

dag PVC 的註解

{}

dags.persistence.enabled

啟用永久磁碟區以儲存 dags。

False

dags.persistence.existingClaim

要使用的現有 PVC 名稱。

~

dags.persistence.size

dags 的磁碟區大小。

1Gi

dags.persistence.storageClassName

如果使用自訂 StorageClass,請在此處傳遞名稱。

~

dags.persistence.subPath

dags 所在的 PVC 中的子路徑。

~

elasticsearch.connection

Elasticsearch 連線設定。

{}

範例

connection:
  host: '...'
  pass: '...'
  port: '...'
  scheme: https
  user: '...'

elasticsearch.connection.host

主機

""

elasticsearch.connection.pass

密碼

""

elasticsearch.connection.port

端口

80

elasticsearch.connection.scheme

協定

http

elasticsearch.connection.user

使用者名稱

""

elasticsearch.enabled

啟用 Elasticsearch 任務日誌記錄。

False

elasticsearch.secretName

包含連線字串的 Secret。

~

enableBuiltInSecretEnvVars.AIRFLOW_CONN_AIRFLOW_DB

啟用從 Metadata Secret 讀取 AIRFLOW_CONN_AIRFLOW_DB 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__CELERY__BROKER_URL

啟用從 Celery Broker URL Secret 讀取 AIRFLOW__CELERY__BROKER_URL 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__CELERY__CELERY_RESULT_BACKEND

啟用從 Celery Result Backend Secret 讀取 AIRFLOW__CELERY__CELERY_RESULT_BACKEND 變數 - Airflow 1.10.* 變體

True

enableBuiltInSecretEnvVars.AIRFLOW__CELERY__RESULT_BACKEND

啟用從 Celery Result Backend Secret 讀取 AIRFLOW__CELERY__RESULT_BACKEND 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__CORE__FERNET_KEY

啟用從 Fernet 金鑰 Secret 讀取 AIRFLOW__CORE__FERNET_KEY 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__CORE__SQL_ALCHEMY_CONN

啟用從 Metadata Secret 讀取 AIRFLOW__CORE__SQL_ALCHEMY_CONN 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__DATABASE__SQL_ALCHEMY_CONN

啟用從 Metadata Secret 讀取 AIRFLOW__DATABASE__SQL_ALCHEMY_CONN 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__ELASTICSEARCH__ELASTICSEARCH_HOST

啟用從 Elasticsearch Host Secret 讀取 AIRFLOW__ELASTICSEARCH__ELASTICSEARCH_HOST 變數 - Airflow <1.10.4 變體

True

enableBuiltInSecretEnvVars.AIRFLOW__ELASTICSEARCH__HOST

啟用從 Elasticsearch Host Secret 讀取 AIRFLOW__ELASTICSEARCH__HOST 變數

True

enableBuiltInSecretEnvVars.AIRFLOW__WEBSERVER__SECRET_KEY

啟用從 Web 伺服器密鑰 Secret 讀取 AIRFLOW__WEBSERVER__SECRET_KEY 變數

True

env

所有 Airflow 容器的環境變數。

[]

範例

env:
- name: MYENVVAR
  value: something_fun

extraEnv

將新增至 Airflow 容器定義的額外 env「項目」;預期為字串 (可使用範本)。

~

範例

extraEnv: |-
  - name: AIRFLOW__CORE__LOAD_EXAMPLES
     value: True

extraEnvFrom

將新增至 Airflow 容器定義的額外 envFrom「項目」;預期為字串 (可使用範本)。

~

範例

extraEnvFrom: |-
  - secretRef:
      name: '{{ .Release.Name }}-airflow-connections'
extraEnvFrom: |-
  - configMapRef:
      name: '{{ .Release.Name }}-airflow-variables'

fernetKeySecretName

Fernet 金鑰 Secret 名稱。

~

gid

airflow 使用者群組。

0

logs.emptyDirConfig

logs emptyDir 磁碟區的設定。

~

logs.persistence.annotations

要新增至 logs PVC 的註解

{}

logs.persistence.enabled

啟用永久磁碟區以儲存日誌。

False

logs.persistence.existingClaim

要使用的現有 PVC 名稱。

~

logs.persistence.size

logs 的磁碟區大小。

100Gi

logs.persistence.storageClassName

如果使用自訂 StorageClass,請在此處傳遞名稱。

~

multiNamespaceMode

Airflow 是否可以在多個命名空間中啟動 workers 和/或 Pod。如果為 true,則會建立 ClusterRole/ClusterRolebinding (具有對整個叢集的存取權)

False

podTemplate

用於 KubernetesExecutor workers 的 pod_template_file.yaml 內容 (已使用範本)。預設值 (請參閱 files/pod-template-file.kubernetes-helm-yaml) 已將正常的 workers 設定參數 (例如 workers.resources) 納入考量,因此您通常不需要直接覆寫此值。

~

範例

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

secret

所有 Airflow 容器的 Secrets。

[]

範例

secret:
- envName: SecretEnvVar
  secretKey: somekey
  secretName: somesecret

uid

airflow 使用者的使用者。

50000

volumeMounts

所有 Airflow 容器的 VolumeMounts。

[]

volumes

所有 Airflow 容器的 Volumes。

[]

webserverSecretKeySecretName

包含 Web 伺服器的 Flask secret_key 的 Secret 名稱。

~

映像檔

參數

描述

預設值

images.airflow.digest

airflow 映像檔摘要。如果設定,將覆寫標籤。

~

images.airflow.pullPolicy

airflow 映像檔提取策略。

IfNotPresent

images.airflow.repository

airflow 映像檔儲存庫。

~

images.airflow.tag

airflow 映像檔標籤。

~

images.flower.pullPolicy

flower 映像檔提取策略。

IfNotPresent

images.flower.repository

flower 映像檔儲存庫。

~

images.flower.tag

flower 映像檔標籤。

~

images.gitSync.pullPolicy

gitSync 映像檔提取策略。

IfNotPresent

images.gitSync.repository

gitSync 映像檔儲存庫。

registry.k8s.io/git-sync/git-sync

images.gitSync.tag

gitSync 映像檔標籤。

v4.1.0

images.migrationsWaitTimeout

等待資料庫遷移完成的時間 (以秒為單位)。

60

images.pgbouncer.pullPolicy

PgBouncer 映像檔提取策略。

IfNotPresent

images.pgbouncer.repository

PgBouncer 映像檔儲存庫。

apache/airflow

images.pgbouncer.tag

PgBouncer 映像檔標籤。

airflow-pgbouncer-2024.01.19-1.21.0

images.pgbouncerExporter.pullPolicy

PgBouncer 匯出器映像檔提取策略。

IfNotPresent

images.pgbouncerExporter.repository

PgBouncer 匯出器映像檔儲存庫。

apache/airflow

images.pgbouncerExporter.tag

PgBouncer 匯出器映像檔標籤。

airflow-pgbouncer-exporter-2024.06.18-0.17.0

images.pod_template.pullPolicy

pod_template 映像檔提取策略。

IfNotPresent

images.pod_template.repository

pod_template 映像檔儲存庫。如果設定 config.kubernetes.worker_container_repository,k8s 執行器將改用設定值。

~

images.pod_template.tag

pod_template 映像檔標籤。如果設定 config.kubernetes.worker_container_tag,k8s 執行器將改用設定值。

~

images.redis.pullPolicy

redis 映像檔提取策略。

IfNotPresent

images.redis.repository

redis 映像檔儲存庫。

redis

images.redis.tag

redis 映像檔標籤。

7.2-bookworm

images.statsd.pullPolicy

StatsD 映像檔提取策略。

IfNotPresent

images.statsd.repository

StatsD 映像檔儲存庫。

quay.io/prometheus/statsd-exporter

images.statsd.tag

StatsD 映像檔標籤。

v0.26.1

images.useDefaultImageForMigration

為避免使用包含使用者程式碼的映像檔來執行和等待資料庫遷移,請將此設定為 true

False

端口

參數

描述

預設值

ports._rpcServer

RPC 伺服器端口 (AIP-44)。僅供實驗性/開發用途。

9080

ports.airflowUI

Airflow UI 端口。

8080

ports.flowerUI

Flower UI 端口。

5555

ports.pgbouncer

PgBouncer 端口。

6543

ports.pgbouncerScrape

PgBouncer 抓取端口。

9127

ports.redisDB

Redis 端口。

6379

ports.statsdIngest

StatsD 攝取端口。

9125

ports.statsdScrape

StatsD 抓取端口。

9102

ports.triggererLogs

Triggerer 日誌端口。

8794

ports.workerLogs

Worker 日誌端口。

8793

資料庫

參數

描述

預設值

data.metadataConnection.db

資料庫名稱。

postgres

data.metadataConnection.host

資料庫主機。

~

data.metadataConnection.pass

使用者密碼。

postgres

data.metadataConnection.port

資料庫端口。

5432

data.metadataConnection.protocol

資料庫協定。

postgresql

data.metadataConnection.sslmode

資料庫 SSL 參數。

disable

data.metadataConnection.user

資料庫使用者。

postgres

data.metadataSecretName

Metadata 連線字串 Secret。

~

data.resultBackendConnection

Result backend 連線設定。

~

data.resultBackendConnection.db

資料庫名稱。

~

data.resultBackendConnection.host

資料庫主機。

~

data.resultBackendConnection.pass

資料庫密碼。

~

data.resultBackendConnection.port

資料庫端口。

~

data.resultBackendConnection.protocol

資料庫協定。

~

data.resultBackendConnection.sslmode

資料庫 SSL 參數。

~

data.resultBackendConnection.user

資料庫使用者。

~

data.resultBackendSecretName

Result backend 連線字串 Secret。

~

postgresql.auth.enablePostgresUser

為 ‘postgres’ 管理員使用者指派密碼。否則,將封鎖此使用者的遠端存取

True

postgresql.auth.password

要建立的自訂使用者密碼。

""

postgresql.auth.postgresPassword

‘postgres’ 管理員使用者的密碼。

postgres

postgresql.auth.username

要建立的自訂使用者名稱

""

postgresql.enabled

啟用 PostgreSQL 子圖表。

True

PgBouncer

參數

描述

預設值

pgbouncer.affinity

為 PgBouncer Pod 指定排程約束。

{}

pgbouncer.annotations

要新增至 PgBouncer 部署的註解

{}

pgbouncer.args

用於 PgBouncer 的 Args (已使用範本)。

~

pgbouncer.auth_file

要從中載入使用者名稱和密碼的檔案名稱

/etc/pgbouncer/users.txt

pgbouncer.auth_type

驗證使用者的方法

scram-sha-256

pgbouncer.ciphers

允許的密碼,可能是 ‘fast’、‘normal’ 或以 ‘:’ 分隔的密碼清單。

normal

pgbouncer.command

用於 PgBouncer 的 Command (已使用範本)。

['pgbouncer', '-u', 'nobody', '/etc/pgbouncer/pgbouncer.ini']

pgbouncer.configSecretName

PgBouncer 設定 Secret 名稱。

~

pgbouncer.env

將額外環境變數新增至 pgbouncer 容器。

[]

pgbouncer.extraContainers

pgbouncer 中啟動額外容器。

[]

pgbouncer.extraIni

新增額外的一般 PgBouncer ini 設定: https://www.pgbouncer.org/config.html

~

pgbouncer.extraIniMetadata

新增額外的元數據資料庫特定 PgBouncer ini 設定: https://www.pgbouncer.org/config.html#section-databases

~

pgbouncer.extraIniResultBackend

新增額外的 result backend 資料庫特定 PgBouncer ini 設定: https://www.pgbouncer.org/config.html#section-databases

~

pgbouncer.extraNetworkPolicies

需要的額外 NetworkPolicies。

[]

pgbouncer.extraVolumeMounts

將額外磁碟區掛載到 PgBouncer 中。

[]

pgbouncer.extraVolumes

將額外磁碟區掛載到 PgBouncer 中。

[]

pgbouncer.logConnections

記錄成功登入。

0

pgbouncer.logDisconnections

記錄包含原因的斷線。

0

pgbouncer.maxClientConn

可連線到 PgBouncer 的最大用戶端數量 (越高 = 檔案描述元越多)。

100

pgbouncer.metadataPoolSize

Metadata 集區大小。

10

pgbouncer.metricsExporterSidecar.livenessProbe.initialDelaySeconds

Metrics Exporter 存活探針初始延遲

10

pgbouncer.metricsExporterSidecar.livenessProbe.periodSeconds

Metrics Exporter 存活探針頻率

10

pgbouncer.metricsExporterSidecar.livenessProbe.timeoutSeconds

Metrics Exporter 存活探針命令超時

1

pgbouncer.metricsExporterSidecar.readinessProbe.initialDelaySeconds

Metrics Exporter 就緒探針初始延遲

10

pgbouncer.metricsExporterSidecar.readinessProbe.periodSeconds

Metrics Exporter 就緒探針頻率

10

pgbouncer.metricsExporterSidecar.readinessProbe.timeoutSeconds

Metrics Exporter 就緒探針命令超時

1

pgbouncer.metricsExporterSidecar.resources

PgBouncer 指標匯出器的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

pgbouncer.metricsExporterSidecar.sslmode

metricsExporterSidecar 的 SSL 模式

disable

pgbouncer.metricsExporterSidecar.statsSecretKey

參考現有 Secrets 物件中 PGBouncer 指標連線 URI 的金鑰。如果留空,則預設為 connection

~

pgbouncer.metricsExporterSidecar.statsSecretName

包含 PgBouncer 指標 Secrets 的現有 Secrets 物件名稱。

~

pgbouncer.nodeSelector

為 PgBouncer Pod 選擇特定節點。

{}

pgbouncer.podAnnotations

為 PgBouncer Pod 新增註解。

{}

pgbouncer.podDisruptionBudget.config.maxUnavailable

PgBouncer 的最大不可用 Pod 數量。

1

pgbouncer.podDisruptionBudget.config.minAvailable

PgBouncer 的最小可用 Pod 數量。

1

pgbouncer.podDisruptionBudget.enabled

已啟用 PodDistributionBudget。

False

pgbouncer.priorityClassName

為 PgBouncer Pod 指定優先級類別名稱。

~

pgbouncer.replicas

要在 Deployment 中執行的 PgBouncer 副本數。

1

pgbouncer.resources

PgBouncer Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

pgbouncer.resultBackendPoolSize

Result backend 集區大小。

5

pgbouncer.service.extraAnnotations

PgBouncer 服務的額外註解。

{}

pgbouncer.serviceAccount.annotations

要新增至 worker Kubernetes ServiceAccount 的註解。

{}

pgbouncer.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

pgbouncer.serviceAccount.create

指定是否應建立 ServiceAccount。

True

pgbouncer.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

pgbouncer.ssl.ca

伺服器端的憑證授權單位

~

pgbouncer.ssl.cert

伺服器端的伺服器憑證

~

pgbouncer.ssl.key

用於向伺服器驗證身分的私密金鑰

~

pgbouncer.sslmode

PgBouncer 的 SSL 模式。

prefer

pgbouncer.tolerations

為 PgBouncer Pod 指定容忍度。

[]

pgbouncer.topologySpreadConstraints

為 PgBouncer Pod 指定拓撲分散約束。

[]

pgbouncer.uid

PgBouncer 以使用者參數身分執行。

65534

pgbouncer.verbose

提高 PgBouncer 詳細程度。

0

RPC 伺服器

參數

描述

預設值

_rpcServer.affinity

為 RPC 伺服器 Pod 指定排程約束。

請參閱 values.yaml

_rpcServer.allowPodLogReading

允許 RPC 伺服器讀取 k8s Pod 日誌。當您沒有外部日誌儲存區時很有用。

True

_rpcServer.annotations

要新增至 RPC 伺服器部署的註解

{}

_rpcServer.args

執行 Airflow RPC 伺服器時要使用的 Args (已使用範本)。

['-c', 'exec airflow internal-api']

_rpcServer.command

執行 Airflow RPC 伺服器時要使用的 Command (已使用範本)。

['bash']

_rpcServer.configMapAnnotations

要套用至 RPC 伺服器 configmap 的額外註解。

{}

_rpcServer.defaultUser.email

預設使用者電子郵件地址。

admin@example.com

_rpcServer.defaultUser.firstName

預設使用者名字。

admin

_rpcServer.defaultUser.lastName

預設使用者姓氏。

user

_rpcServer.defaultUser.password

預設使用者密碼。

admin

_rpcServer.defaultUser.role

預設使用者角色。

Admin

_rpcServer.defaultUser.username

預設使用者使用者名稱。

admin

_rpcServer.enabled

啟用 RPC 伺服器

False

_rpcServer.env

將額外環境變數新增至 RPC 伺服器。

[]

_rpcServer.extraContainers

在 RPC 伺服器中啟動額外容器。

[]

_rpcServer.extraInitContainers

將額外 init 容器新增至 RPC 伺服器。

[]

_rpcServer.extraNetworkPolicies

需要的額外 NetworkPolicies (已棄用 - 已重新命名為 RPC server.networkPolicy.ingress.from)。

[]

_rpcServer.extraVolumeMounts

將額外磁碟區掛載到 RPC 伺服器中。

[]

_rpcServer.extraVolumes

將額外磁碟區掛載到 RPC 伺服器中。

[]

_rpcServer.hostAliases

RPC 伺服器 Pod 的 HostAliases。

[]

範例

hostAliases:
- hostnames:
  - foo.local
  ip: 127.0.0.1
hostAliases:
- hostnames:
  - foo.remote
  ip: 10.1.2.3

_rpcServer.labels

要新增至 RPC 伺服器物件和 Pod 的標籤。

{}

_rpcServer.livenessProbe.failureThreshold

RPC 伺服器存活探針失敗閾值。

5

_rpcServer.livenessProbe.initialDelaySeconds

RPC 伺服器存活探針初始延遲。

15

_rpcServer.livenessProbe.periodSeconds

RPC 伺服器存活探針週期秒數。

10

_rpcServer.livenessProbe.scheme

RPC 伺服器存活探針協定。

HTTP

_rpcServer.livenessProbe.timeoutSeconds

RPC 伺服器存活探針超時秒數。

5

_rpcServer.networkPolicy.ingress.from

RPC 伺服器 NetworkPolicyingress 的對等節點。

[]

_rpcServer.networkPolicy.ingress.ports

RPC 伺服器 NetworkPolicyingress 的端口 (如果已設定 from)。

[{'port': '{{ .Values.ports._rpcServer }}'}]

範例

ports:
- port: 9080

_rpcServer.nodeSelector

為 RPC 伺服器 Pod 選擇特定節點。

{}

_rpcServer.podAnnotations

要新增至 RPC 伺服器 Pod 的註解。

{}

_rpcServer.podDisruptionBudget.config.maxUnavailable

RPC 伺服器的最大不可用 Pod 數量。

1

_rpcServer.podDisruptionBudget.config.minAvailable

RPC 伺服器的最小可用 Pod 數量。

1

_rpcServer.podDisruptionBudget.enabled

啟用 Pod 預算分配。

False

_rpcServer.priorityClassName

為 RPC 伺服器 Pod 指定優先級類別名稱。

~

_rpcServer.readinessProbe.failureThreshold

RPC 伺服器就緒探針失敗閾值。

5

_rpcServer.readinessProbe.initialDelaySeconds

RPC 伺服器就緒探針初始延遲。

15

_rpcServer.readinessProbe.periodSeconds

RPC 伺服器就緒探針週期秒數。

10

_rpcServer.readinessProbe.scheme

RPC 伺服器就緒探針協定。

HTTP

_rpcServer.readinessProbe.timeoutSeconds

RPC 伺服器就緒探針超時秒數。

5

_rpcServer.replicas

應執行多少個 Airflow RPC 伺服器副本。

1

_rpcServer.resources

RPC 伺服器 Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

_rpcServer.service.annotations

RPC 伺服器服務的註解。

{}

_rpcServer.service.loadBalancerIP

RPC 伺服器服務 loadBalancerIP。

~

_rpcServer.service.loadBalancerSourceRanges

RPC 伺服器服務 loadBalancerSourceRanges

[]

範例

loadBalancerSourceRanges:
- 10.123.0.0/16

_rpcServer.service.ports

RPC 伺服器服務的端口。

[{'name': 'rpc-server', 'port': '{{ .Values.ports._rpcServer }}'}]

範例

ports:
- name: rpc-server
  port: 9080
  targetPort: rpc-server
ports:
- name: only_sidecar
  port: 9080
  targetPort: 8888

_rpcServer.service.type

RPC 伺服器服務類型。

ClusterIP

_rpcServer.serviceAccount.annotations

要新增至 RPC 伺服器 Kubernetes ServiceAccount 的註解。

{}

_rpcServer.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

_rpcServer.serviceAccount.create

指定是否應建立 ServiceAccount。

True

_rpcServer.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

_rpcServer.startupProbe.failureThreshold

RPC 伺服器啟動探針失敗閾值。

6

_rpcServer.startupProbe.periodSeconds

RPC 伺服器啟動探針週期秒數。

10

_rpcServer.startupProbe.scheme

RPC 伺服器啟動探針協定。

HTTP

_rpcServer.startupProbe.timeoutSeconds

RPC 伺服器啟動探針超時秒數。

20

_rpcServer.strategy

指定用於以新 Pod 取代舊 Pod 的策略。

~

_rpcServer.tolerations

為 RPC 伺服器 Pod 指定容忍度。

[]

_rpcServer.waitForMigrations.enabled

啟用 wait-for-airflow-migrations init 容器。

True

_rpcServer.waitForMigrations.env

將額外環境變數新增至 wait-for-airflow-migrations init 容器。

[]

排程器

參數

描述

預設值

scheduler.affinity

為排程器 Pod 指定排程約束。

請參閱 values.yaml

scheduler.annotations

要新增至排程器部署的註解

{}

scheduler.args

執行 Airflow 排程器時要使用的 Args (已使用範本)。

['bash', '-c', 'exec airflow scheduler']

scheduler.command

執行 Airflow 排程器時要使用的 Command (已使用範本)。

~

scheduler.enabled

啟用排程器

True

scheduler.env

將額外環境變數新增至排程器。

[]

scheduler.extraContainers

在排程器中啟動額外容器 (已使用範本)。

[]

scheduler.extraInitContainers

將額外 init 容器新增至排程器 (已使用範本)。

[]

scheduler.extraVolumeMounts

將額外磁碟區掛載到排程器中。

[]

scheduler.extraVolumes

將額外磁碟區掛載到排程器中。

[]

scheduler.hostAliases

排程器 Pod 的 HostAliases。

[]

範例

hostAliases:
- hostnames:
  - foo.local
  ip: 127.0.0.1
hostAliases:
- hostnames:
  - foo.remote
  ip: 10.1.2.3

scheduler.labels

要新增至排程器物件和 Pod 的標籤。

{}

scheduler.livenessProbe.failureThreshold

探針在成功後被視為失敗所需的最小連續失敗次數。最小值為 1。

5

scheduler.livenessProbe.initialDelaySeconds

容器啟動後多久 (以秒為單位) 啟動存活探針。

10

scheduler.livenessProbe.periodSeconds

執行探針的頻率 (以秒為單位)。最小值為 1。

60

scheduler.livenessProbe.timeoutSeconds

探針超時前的秒數。最小值為 1 秒。

20

scheduler.nodeSelector

為排程器 Pod 選擇特定節點。

{}

scheduler.podAnnotations

要新增至排程器 Pod 的註解。

{}

scheduler.podDisruptionBudget.config.maxUnavailable

排程器的最大不可用 Pod 數量。

1

scheduler.podDisruptionBudget.config.minAvailable

排程器的最小可用 Pod 數量。

1

scheduler.podDisruptionBudget.enabled

啟用 Pod 預算分配。

False

scheduler.priorityClassName

為排程器 Pod 指定優先級類別名稱。

~

scheduler.replicas

Airflow 2.0 允許使用者執行多個排程器。此功能僅建議用於 MySQL 8+ 和 PostgreSQL

1

scheduler.resources

排程器 Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

scheduler.safeToEvict

此設定告知 Kubernetes,當它想要縮減節點時,可以安全地驅逐。

True

scheduler.securityContext

排程器 Pod 的安全性環境定義 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 中的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

scheduler.serviceAccount.annotations

要新增至排程器 Kubernetes ServiceAccount 的註解。

{}

scheduler.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

scheduler.serviceAccount.create

指定是否應建立 ServiceAccount。

True

scheduler.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

scheduler.startupProbe.failureThreshold

探針在成功後被視為失敗所需的最小連續失敗次數。最小值為 1。

6

scheduler.startupProbe.periodSeconds

執行探針的頻率 (以秒為單位)。最小值為 1。

10

scheduler.startupProbe.timeoutSeconds

探針超時前的秒數。最小值為 1 秒。

20

scheduler.strategy

指定部署為 Deployment 時 (當未使用 LocalExecutor 和 workers.persistence 時) 用於以新 Pod 取代舊 Pod 的策略。

~

scheduler.tolerations

為排程器 Pod 指定容忍度。

[]

scheduler.topologySpreadConstraints

為排程器 Pod 指定拓撲分散約束。

[]

scheduler.updateStrategy

指定部署為 StatefulSet 時 (當使用 LocalExecutor 和 workers.persistence 時) 用於以新 Pod 取代舊 Pod 的策略。

~

scheduler.waitForMigrations.enabled

啟用 wait-for-airflow-migrations init 容器。

True

scheduler.waitForMigrations.env

將額外環境變數新增至 wait-for-airflow-migrations init 容器。

[]

Web 伺服器

參數

描述

預設值

webserver.affinity

為 Web 伺服器 Pod 指定排程約束。

請參閱 values.yaml

webserver.allowPodLogReading

允許 Web 伺服器讀取 k8s Pod 日誌。當您沒有外部日誌儲存區時很有用。

True

webserver.annotations

要新增至 Web 伺服器部署的註解

{}

webserver.args

執行 Airflow Web 伺服器時要使用的 Args (已使用範本)。

['bash', '-c', 'exec airflow webserver']

webserver.command

執行 Airflow Web 伺服器時要使用的 Command (已使用範本)。

~

webserver.configMapAnnotations

要套用至 Web 伺服器 configmap 的額外註解。

{}

webserver.defaultUser.email

預設使用者電子郵件地址。

admin@example.com

webserver.defaultUser.firstName

預設使用者名字。

admin

webserver.defaultUser.lastName

預設使用者姓氏。

user

webserver.defaultUser.password

預設使用者密碼。

admin

webserver.defaultUser.role

預設使用者角色。

Admin

webserver.defaultUser.username

預設使用者使用者名稱。

admin

webserver.enabled

啟用 Web 伺服器

True

webserver.env

將額外環境變數新增至 Web 伺服器。

[]

webserver.extraContainers

在 Web 伺服器中啟動額外容器 (已使用範本)。

[]

webserver.extraInitContainers

將額外 init 容器新增至 Web 伺服器 (已使用範本)。

[]

webserver.extraNetworkPolicies

需要的額外 NetworkPolicies (已棄用 - 已重新命名為 webserver.networkPolicy.ingress.from)。

[]

webserver.extraVolumeMounts

將額外磁碟區掛載到 Web 伺服器中。

[]

webserver.extraVolumes

將額外磁碟區掛載到 Web 伺服器中。

[]

webserver.hostAliases

Web 伺服器 Pod 的 HostAliases。

[]

範例

hostAliases:
- hostnames:
  - foo.local
  ip: 127.0.0.1
hostAliases:
- hostnames:
  - foo.remote
  ip: 10.1.2.3

webserver.labels

要新增至 Web 伺服器物件和 Pod 的標籤。

{}

webserver.livenessProbe.failureThreshold

Webserver Liveness 探針失敗閾值。

5

webserver.livenessProbe.initialDelaySeconds

Webserver Liveness 探針初始延遲。

15

webserver.livenessProbe.periodSeconds

Webserver Liveness 探針週期秒數。

10

webserver.livenessProbe.scheme

Webserver Liveness 探針機制。

HTTP

webserver.livenessProbe.timeoutSeconds

Webserver Liveness 探針逾時秒數。

5

webserver.networkPolicy.ingress.from

Webserver NetworkPolicyingress 的對等節點。

[]

webserver.networkPolicy.ingress.ports

Webserver NetworkPolicyingress 的埠 (如果已設定 from )。

[{'port': '{{ .Values.ports.airflowUI }}'}]

範例

ports:
- port: 8070

webserver.nodeSelector

為 webserver Pod 選擇特定節點。

{}

webserver.podAnnotations

新增至 webserver Pod 的註解。

{}

webserver.podDisruptionBudget.config.maxUnavailable

Webserver 的最大不可用 Pod 數。

1

webserver.podDisruptionBudget.config.minAvailable

Webserver 的最小可用 Pod 數。

1

webserver.podDisruptionBudget.enabled

啟用 Pod 預算分配。

False

webserver.priorityClassName

指定 webserver Pod 的優先順序類別名稱。

~

webserver.readinessProbe.failureThreshold

Webserver Readiness 探針失敗閾值。

5

webserver.readinessProbe.initialDelaySeconds

Webserver Readiness 探針初始延遲。

15

webserver.readinessProbe.periodSeconds

Webserver Readiness 探針週期秒數。

10

webserver.readinessProbe.scheme

Webserver Readiness 探針機制。

HTTP

webserver.readinessProbe.timeoutSeconds

Webserver Readiness 探針逾時秒數。

5

webserver.replicas

應執行多少個 Airflow webserver 副本。

1

webserver.resources

Webserver Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

webserver.securityContext

Webserver 工作 Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

webserver.service.annotations

Webserver Service 的註解。

{}

webserver.service.loadBalancerIP

Webserver Service loadBalancerIP。

~

webserver.service.loadBalancerSourceRanges

Webserver Service loadBalancerSourceRanges

[]

範例

loadBalancerSourceRanges:
- 10.123.0.0/16

webserver.service.ports

Webserver Service 的埠。

[{'name': 'airflow-ui', 'port': '{{ .Values.ports.airflowUI }}'}]

範例

ports:
- name: airflow-ui
  port: 80
  targetPort: airflow-ui
ports:
- name: only_sidecar
  port: 80
  targetPort: 8888

webserver.service.type

Webserver Service 類型。

ClusterIP

webserver.serviceAccount.annotations

新增至 webserver Kubernetes ServiceAccount 的註解。

{}

webserver.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

webserver.serviceAccount.create

指定是否應建立 ServiceAccount。

True

webserver.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

webserver.startupProbe.failureThreshold

Webserver Startup 探針失敗閾值。

6

webserver.startupProbe.periodSeconds

Webserver Startup 探針週期秒數。

10

webserver.startupProbe.scheme

Webserver Startup 探針機制。

HTTP

webserver.startupProbe.timeoutSeconds

Webserver Startup 探針逾時秒數。

20

webserver.strategy

指定用於以新 Pod 取代舊 Pod 的策略。

~

webserver.tolerations

指定 webserver Pod 的容 tolerations。

[]

webserver.waitForMigrations.enabled

啟用 wait-for-airflow-migrations init 容器。

True

webserver.waitForMigrations.env

將額外環境變數新增至 wait-for-airflow-migrations init 容器。

[]

Workers

參數

描述

預設值

workers.affinity

指定 worker Pod 的排程限制。

請參閱 values.yaml

workers.annotations

新增至 worker 部署的註解

{}

workers.args

執行 Airflow worker 時使用的 Args (已套用範本)。

['bash', '-c', 'exec \\\nairflow {{ semverCompare ">=2.0.0" .Values.airflowVersion | ternary "celery worker" "worker" }}']

workers.command

執行 Airflow worker 時使用的 Command (已套用範本)。

~

workers.env

將額外的 env 變數新增至 worker。

[]

workers.extraContainers

將額外的容器啟動到 worker 中 (已套用範本)。請注意,如果搭配 KubernetesExecutor 使用,您有責任在主要容器完成時發出信號通知 sidecar 結束,以便 Airflow 可以繼續 worker 關閉程序!

[]

workers.extraInitContainers

將額外的 init 容器新增至 worker 中 (已套用範本)。

[]

workers.extraVolumeMounts

將額外的磁碟區掛載到 worker 中。

[]

workers.extraVolumes

將額外的磁碟區掛載到 worker 中。

[]

workers.hostAliases

指定 worker 的 HostAliases。

[]

範例

hostAliases:
- hostnames:
  - test.hostname.one
  ip: 127.0.0.2
hostAliases:
- hostnames:
  - test.hostname.two
  ip: 127.0.0.3

workers.hpa.behavior

HorizontalPodAutoscalerBehavior 設定目標的擴展行為。

{}

workers.hpa.enabled

允許 HPA 自動擴展 (必須停用 KEDA)。

False

workers.hpa.maxReplicaCount

HPA 建立的 worker 最大數量。

5

workers.hpa.metrics

用於計算所需副本數的規格。

[{'type': 'Resource', 'resource': {'name': 'cpu', 'target': {'type': 'Utilization', 'averageUtilization': 80}}}]

workers.hpa.minReplicaCount

HPA 建立的 worker 最小數量。

0

workers.keda.advanced

進階 KEDA 設定。

{}

workers.keda.advanced.horizontalPodAutoscalerConfig

HorizontalPodAutoscalerConfig 指定水平擴展設定。

{}

workers.keda.advanced.horizontalPodAutoscalerConfig.behavior

HorizontalPodAutoscalerBehavior 設定目標的擴展行為。

{}

workers.keda.cooldownPeriod

KEDA 在擴展到零之前將等待多少秒。

30

workers.keda.enabled

允許 KEDA 自動擴展。

False

workers.keda.maxReplicaCount

KEDA 建立的 worker 最大數量。

10

workers.keda.minReplicaCount

KEDA 建立的 worker 最小數量。

0

workers.keda.namespaceLabels

用於 PgBouncer NetworkPolicy 中命名空間的 matchLabels 標籤。

{}

workers.keda.pollingInterval

KEDA 多常輪詢 airflow DB,以向 HPA 報告新的擴展請求。

5

workers.keda.query

用於 KEDA 自動擴展的查詢。必須傳回單一整數。

SELECT ceil(COUNT(*)::decimal / {{ .Values.config.celery.worker_concurrency }}) FROM task_instance WHERE (state='running' OR state='queued') {{- if eq .Values.executor "CeleryKubernetesExecutor" }} AND queue != '{{ .Values.config.celery_kubernetes_executor.kubernetes_queue }}' {{- end }}

workers.keda.usePgbouncer

是否使用 PGBouncer 連線到資料庫 (如果已啟用)。如果未啟用 PGBouncer,則會忽略此設定。

True

workers.kerberosInitContainer.enabled

為 worker 啟用 Kerberos init 容器。

False

workers.kerberosInitContainer.resources

worker Kerberos init 容器上的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

workers.kerberosSidecar.enabled

為 worker 啟用 Kerberos sidecar。

False

workers.kerberosSidecar.resources

worker Kerberos sidecar 上的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

workers.labels

新增至 worker 物件和 Pod 的標籤。

{}

workers.livenessProbe.enabled

為 celery worker 啟用存活探針。

True

workers.livenessProbe.failureThreshold

探針在成功後被視為失敗所需的最小連續失敗次數。最小值為 1。

5

workers.livenessProbe.initialDelaySeconds

容器啟動後多久 (以秒為單位) 啟動存活探針。

10

workers.livenessProbe.periodSeconds

執行探針的頻率 (以秒為單位)。最小值為 1。

60

workers.livenessProbe.timeoutSeconds

探針超時前的秒數。最小值為 1 秒。

20

workers.nodeSelector

為 worker Pod 選擇特定節點。

{}

workers.persistence.annotations

新增至 worker 磁碟區的註解。

{}

workers.persistence.enabled

啟用持久性磁碟區。

True

workers.persistence.fixPermissions

執行 init 容器以變更記錄目錄的所有權。目前僅在 kind 中需要,因為使用了 local-path provisioner。

False

workers.persistence.size

worker StatefulSet 的磁碟區大小。

100Gi

workers.persistence.storageClassName

如果使用自訂 StorageClass,請在此處將名稱參考傳遞至所有 StatefulSet。

~

workers.podAnnotations

新增至 worker Pod 的註解。

{}

workers.priorityClassName

指定 worker Pod 的優先順序類別名稱。

~

workers.replicas

StatefulSet 中 Airflow Celery worker 的數量。

1

workers.resources

worker 上的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

workers.runtimeClassName

指定 worker Pod 的執行階段類別名稱。

~

workers.safeToEvict

此設定告知 Kubernetes,當它想要縮減節點時,可以安全地驅逐。

False

workers.securityContext

Worker Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

workers.serviceAccount.annotations

要新增至 worker Kubernetes ServiceAccount 的註解。

{}

workers.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

workers.serviceAccount.create

指定是否應建立 ServiceAccount。

True

workers.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

workers.strategy

指定在部署為 Deployment 時,用於將舊 Pod 取代為新 Pod 的策略。

{'rollingUpdate': {'maxSurge': '100%', 'maxUnavailable': '50%'}}

workers.terminationGracePeriodSeconds

從 Kubernetes 傳送 SIGTERM 後,讓工作完成的寬限期。

600

workers.tolerations

指定 worker Pod 的容 tolerations。

[]

workers.topologySpreadConstraints

指定 worker Pod 的拓撲分散約束。

[]

workers.updateStrategy

指定在部署為 StatefulSet 時,用於將舊 Pod 取代為新 Pod 的策略。

~

workers.volumeClaimTemplates

指定 worker 的額外磁碟區宣告範本。

[]

範例

volumeClaimTemplates:
- accessModes:
  - ReadWriteOnce
  name: data-volume-1
  resources:
    requests:
      storage: 10Gi
  storageClassName: storage-class-1
volumeClaimTemplates:
- accessModes:
  - ReadWriteOnce
  name: data-volume-2
  resources:
    requests:
      storage: 20Gi
  storageClassName: storage-class-2

workers.waitForMigrations.enabled

啟用 wait-for-airflow-migrations init 容器。

True

workers.waitForMigrations.env

將額外環境變數新增至 wait-for-airflow-migrations init 容器。

[]

Triggerer

參數

描述

預設值

triggerer.affinity

指定 triggerer Pod 的排程限制。

請參閱 values.yaml

triggerer.annotations

新增至 triggerer 部署的註解

{}

triggerer.args

執行 Airflow triggerer 時使用的 Args (已套用範本)。

['bash', '-c', 'exec airflow triggerer']

triggerer.command

執行 Airflow triggerer 時使用的 Command (已套用範本)。

~

triggerer.enabled

啟用 triggerer

True

triggerer.env

將額外的 env 變數新增至 triggerer。

[]

triggerer.extraContainers

將額外的容器啟動到 triggerer 中 (已套用範本)。

[]

triggerer.extraInitContainers

將額外的 init 容器新增至 triggerer 中 (已套用範本)。

[]

triggerer.extraVolumeMounts

將額外的磁碟區掛載到 triggerer 中。

[]

triggerer.extraVolumes

將額外的磁碟區掛載到 triggerer 中。

[]

triggerer.keda.advanced

進階 KEDA 設定。

{}

triggerer.keda.advanced.horizontalPodAutoscalerConfig

HorizontalPodAutoscalerConfig 指定水平擴展設定。

{}

triggerer.keda.advanced.horizontalPodAutoscalerConfig.behavior

HorizontalPodAutoscalerBehavior 設定目標的擴展行為。

{}

triggerer.keda.cooldownPeriod

KEDA 在擴展到零之前將等待多少秒。

30

triggerer.keda.enabled

允許 KEDA 自動擴展。

False

triggerer.keda.maxReplicaCount

KEDA 建立的 triggerer 最大數量。

10

triggerer.keda.minReplicaCount

KEDA 建立的 triggerer 最小數量。

0

triggerer.keda.namespaceLabels

用於 PgBouncer NetworkPolicy 中命名空間的 matchLabels 標籤。

{}

triggerer.keda.pollingInterval

KEDA 多常輪詢 airflow DB,以向 HPA 報告新的擴展請求。

5

triggerer.keda.query

用於 KEDA 自動擴展的查詢。必須傳回單一整數。

SELECT ceil(COUNT(*)::decimal / {{ .Values.config.triggerer.default_capacity }}) FROM trigger

triggerer.keda.usePgbouncer

是否使用 PGBouncer 連線到資料庫 (如果已啟用)。如果未啟用 PGBouncer,則會忽略此設定。

False

triggerer.labels

新增至 triggerer 物件和 Pod 的標籤。

{}

triggerer.livenessProbe.failureThreshold

探針在成功後被視為失敗所需的最小連續失敗次數。最小值為 1。

5

triggerer.livenessProbe.initialDelaySeconds

容器啟動後多久 (以秒為單位) 啟動存活探針。

10

triggerer.livenessProbe.periodSeconds

執行探針的頻率 (以秒為單位)。最小值為 1。

60

triggerer.livenessProbe.timeoutSeconds

探針超時前的秒數。最小值為 1 秒。

20

triggerer.nodeSelector

為 triggerer Pod 選擇特定節點。

{}

triggerer.persistence.annotations

新增至 triggerer 磁碟區的註解。

{}

triggerer.persistence.enabled

啟用持久性磁碟區。

True

triggerer.persistence.fixPermissions

執行 init 容器以變更記錄目錄的所有權。目前僅在 kind 中需要,因為使用了 local-path provisioner。

False

triggerer.persistence.size

triggerer StatefulSet 的磁碟區大小。

100Gi

triggerer.persistence.storageClassName

如果使用自訂 StorageClass,請在此處將名稱參考傳遞至所有 StatefulSet。

~

triggerer.podAnnotations

新增至 triggerer Pod 的註解。

{}

triggerer.priorityClassName

指定 triggerer Pod 的優先順序類別名稱。

~

triggerer.replicas

要執行的 triggerer 數量。

1

triggerer.resources

Triggerer Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

triggerer.safeToEvict

此設定告知 Kubernetes,當它想要縮減節點時,可以安全地驅逐。

True

triggerer.securityContext

Triggerer Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

triggerer.serviceAccount.annotations

新增至 triggerer Kubernetes ServiceAccount 的註解。

{}

triggerer.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

triggerer.serviceAccount.create

指定是否應建立 ServiceAccount。

True

triggerer.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

triggerer.strategy

指定在部署為 Deployment 時,用於將舊 Pod 取代為新 Pod 的策略。

{'rollingUpdate': {'maxSurge': '100%', 'maxUnavailable': '50%'}}

triggerer.terminationGracePeriodSeconds

從 Kubernetes 傳送 SIGTERM 後,讓工作完成的寬限期。

60

triggerer.tolerations

指定 triggerer Pod 的容 tolerations。

[]

triggerer.topologySpreadConstraints

指定 triggerer Pod 的拓撲分散約束。

[]

triggerer.updateStrategy

指定在部署為 StatefulSet 時,用於將舊 Pod 取代為新 Pod 的策略。

~

triggerer.waitForMigrations.enabled

啟用 wait-for-airflow-migrations init 容器。

True

triggerer.waitForMigrations.env

將額外環境變數新增至 wait-for-airflow-migrations init 容器。

[]

DagProcessor

參數

描述

預設值

dagProcessor.affinity

指定 dag processor Pod 的排程限制。

請參閱 values.yaml

dagProcessor.annotations

新增至 dag processor 部署的註解

{}

dagProcessor.args

執行 Airflow dag processor 時使用的 Args (已套用範本)。

['bash', '-c', 'exec airflow dag-processor']

dagProcessor.command

執行 Airflow dag processor 時使用的 Command (已套用範本)。

~

dagProcessor.enabled

啟用獨立 dag processor (需要 Airflow 2.3.0+)。

False

dagProcessor.env

將額外的 env 變數新增至 dag processor。

[]

dagProcessor.extraContainers

將額外的容器啟動到 dag processor 中 (已套用範本)。

[]

dagProcessor.extraInitContainers

將額外的 init 容器新增至 dag processor 中 (已套用範本)。

[]

dagProcessor.extraVolumeMounts

將額外的磁碟區掛載到 dag processor 中。

[]

dagProcessor.extraVolumes

將額外的磁碟區掛載到 dag processor 中。

[]

dagProcessor.livenessProbe.failureThreshold

探針在成功後被視為失敗所需的最小連續失敗次數。最小值為 1。

5

dagProcessor.livenessProbe.initialDelaySeconds

容器啟動後多久 (以秒為單位) 啟動存活探針。

10

dagProcessor.livenessProbe.periodSeconds

執行探針的頻率 (以秒為單位)。最小值為 1。

60

dagProcessor.livenessProbe.timeoutSeconds

探針超時前的秒數。最小值為 1 秒。

20

dagProcessor.nodeSelector

為 dag processor Pod 選擇特定節點。

{}

dagProcessor.podAnnotations

新增至 dag processor Pod 的註解。

{}

dagProcessor.priorityClassName

指定 dag processor Pod 的優先順序類別名稱。

~

dagProcessor.replicas

要執行的 dag processor 數量。

1

dagProcessor.resources

Dag processor Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

dagProcessor.safeToEvict

此設定告知 Kubernetes,當它想要縮減節點時,可以安全地驅逐。

True

dagProcessor.securityContext

Dag processor Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

dagProcessor.serviceAccount.annotations

新增至 dag processor Kubernetes ServiceAccount 的註解。

{}

dagProcessor.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

dagProcessor.serviceAccount.create

指定是否應建立 ServiceAccount。

True

dagProcessor.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

dagProcessor.strategy

指定在部署為 Deployment 時,用於將舊 Pod 取代為新 Pod 的策略。

{'rollingUpdate': {'maxSurge': '100%', 'maxUnavailable': '50%'}}

dagProcessor.terminationGracePeriodSeconds

從 Kubernetes 傳送 SIGTERM 後,讓工作完成的寬限期。

60

dagProcessor.tolerations

指定 dag processor Pod 的容 tolerations。

[]

dagProcessor.topologySpreadConstraints

指定 dag processor Pod 的拓撲分散約束。

[]

dagProcessor.waitForMigrations.enabled

啟用 wait-for-airflow-migrations init 容器。

True

dagProcessor.waitForMigrations.env

將額外環境變數新增至 wait-for-airflow-migrations init 容器。

[]

Flower

參數

描述

預設值

flower.affinity

指定 Flower Pod 的排程限制。

{}

flower.annotations

新增至 flower 部署的註解

{}

flower.args

執行 flower 時使用的 Args (已套用範本)。

['bash', '-c', 'exec \\\nairflow {{ semverCompare ">=2.0.0" .Values.airflowVersion | ternary "celery flower" "flower" }}']

flower.command

執行 flower 時使用的 Command (已套用範本)。

~

flower.enabled

啟用 Flower。

False

flower.env

將額外的 env 變數新增至 flower。

[]

flower.extraContainers

將額外的容器啟動到 flower Pod 中。

[]

flower.extraNetworkPolicies

額外的 NetworkPolicy (視需要) (已棄用 - 已重新命名為 flower.networkPolicy.ingress.from )。

[]

flower.extraVolumeMounts

將額外的磁碟區掛載到 flower Pod 中。

[]

flower.extraVolumes

將額外的磁碟區掛載到 flower Pod 中。

[]

flower.labels

新增至 flower 物件和 Pod 的標籤。

{}

flower.livenessProbe.failureThreshold

Flower Liveness 探針失敗閾值。

10

flower.livenessProbe.initialDelaySeconds

Flower Liveness 探針初始延遲。

10

flower.livenessProbe.periodSeconds

Flower Liveness 探針週期秒數。

5

flower.livenessProbe.timeoutSeconds

Flower Liveness 探針逾時秒數。

5

flower.networkPolicy.ingress.from

Flower NetworkPolicyingress 的對等節點。

[]

flower.networkPolicy.ingress.ports

Flower NetworkPolicyingress 的埠 (如果已設定 from )。

[{'port': '{{ .Values.ports.flowerUI }}'}]

範例

ports:
- port: 5565

flower.nodeSelector

為 Flower Pod 選擇特定節點。

{}

flower.password

用於存取 Flower 的密碼。

~

flower.podAnnotations

新增至 Flower Pod 的註解。

{}

flower.priorityClassName

指定 Flower Pod 的優先順序類別名稱。

~

flower.readinessProbe.failureThreshold

Flower Readiness 探針失敗閾值。

10

flower.readinessProbe.initialDelaySeconds

Flower Readiness 探針初始延遲。

10

flower.readinessProbe.periodSeconds

Flower Readiness 探針週期秒數。

5

flower.readinessProbe.timeoutSeconds

Flower Readiness 探針逾時秒數。

5

flower.resources

Flower Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

flower.secretName

包含使用者和密碼配對的密碼。

~

flower.securityContext

Flower Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

flower.service.annotations

Flower Service 的註解。

{}

flower.service.loadBalancerIP

Flower Service loadBalancerIP。

~

flower.service.loadBalancerSourceRanges

Flower Service loadBalancerSourceRanges

[]

範例

loadBalancerSourceRanges:
- 10.123.0.0/16

flower.service.ports

Flower Service 的埠。

[{'name': 'flower-ui', 'port': '{{ .Values.ports.flowerUI }}'}]

範例

ports:
- name: flower-ui
  port: 8080
  targetPort: flower-ui

flower.service.type

Flower Service 類型。

ClusterIP

flower.serviceAccount.annotations

要新增至 worker Kubernetes ServiceAccount 的註解。

{}

flower.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

flower.serviceAccount.create

指定是否應建立 ServiceAccount。

True

flower.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

flower.tolerations

指定 Flower Pod 的容 tolerations。

[]

flower.topologySpreadConstraints

指定 Flower Pod 的拓撲分散約束。

[]

flower.username

用於存取 Flower 的使用者名稱。

~

Redis

參數

描述

預設值

data.brokerUrl

Redis broker 的直接 URL (當使用外部 Redis 執行個體時) (只能在安裝期間設定,無法升級)。

~

data.brokerUrlSecretName

Redis broker URL 密碼。

~

redis.affinity

指定 Redis Pod 的排程限制。

{}

redis.annotations

Redis 的註解。

{}

redis.emptyDirConfig

Redis emptyDir 磁碟區的組態。

~

redis.enabled

啟用 Chart 佈建的 Redis (您也可以搭配 data.brokerUrldata.brokerUrlSecretName 使用外部 Redis 執行個體)。

True

redis.nodeSelector

為 Redis Pod 選擇特定節點。

{}

redis.password

如果已設定密碼,請使用它建立密碼,否則在安裝時產生新的密碼 (只能在安裝期間設定,無法升級)。

~

redis.passwordSecretName

Redis 密碼密碼。

~

redis.persistence.annotations

新增至 Redis 磁碟區的註解。

{}

redis.persistence.enabled

啟用持久性磁碟區。

True

redis.persistence.size

Redis StatefulSet 的磁碟區大小。

1Gi

redis.persistence.storageClassName

如果使用自訂 StorageClass,請在此處將名稱參考傳遞至所有 StatefulSet。

~

redis.podAnnotations

新增至 Redis Pod 的註解。

{}

redis.priorityClassName

指定 Redis Pod 的優先順序類別名稱。

~

redis.resources

Redis Pod 的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

redis.safeToEvict

此設定告知 Kubernetes,當它想要縮減節點時,可以安全地驅逐。

True

redis.securityContext

清除工作 Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

redis.serviceAccount.annotations

要新增至 worker Kubernetes ServiceAccount 的註解。

{}

redis.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

redis.serviceAccount.create

指定是否應建立 ServiceAccount。

True

redis.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

redis.terminationGracePeriodSeconds

從 Kubernetes 傳送 SIGTERM 後,讓 Redis 結束的寬限期。

600

redis.tolerations

指定 Redis Pod 的容 tolerations。

[]

redis.topologySpreadConstraints

指定 Redis Pod 的拓撲分散約束。

[]

redis.uid

Redis 以使用者參數身分執行。

0

StatsD

參數

描述

預設值

statsd.affinity

指定 StatsD Pod 的排程限制。

{}

statsd.annotations

新增至 StatsD 部署的註解。

{}

statsd.args

執行 statsd-exporter 時使用的 Args (已套用範本)。

['--statsd.mapping-config=/etc/statsd-exporter/mappings.yml']

statsd.configMapAnnotations

要套用至 statsd configmap 的額外註解。

{}

statsd.enabled

啟用 StatsD。

True

statsd.env

將額外的 env 變數新增至 statsd 容器。

[]

statsd.extraMappings

StatsD 匯出器的額外對應。如果已設定,將合併預設對應和額外對應,預設對應具有較高的優先順序。因此,如果您想要變更某些預設對應,請使用 overrideMappings

[]

statsd.extraNetworkPolicies

需要的額外 NetworkPolicies。

[]

statsd.nodeSelector

為 StatsD Pod 選擇特定節點。

{}

statsd.overrideMappings

覆寫 StatsD 匯出器的對應。如果已設定,將忽略預設和 extraMappings 中的設定項目。因此,如果您使用它,請確保其中包含所有對應項目。

[]

statsd.podAnnotations

新增至 StatsD Pod 的註解。

{}

statsd.priorityClassName

指定 StatsD Pod 的優先順序類別名稱。

~

statsd.resources

StatsD Pod 的資源。

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

statsd.securityContext

StatsD Pod 的安全性內容 (已棄用,請改用 securityContexts )。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

statsd.service.extraAnnotations

StatsD Service 的額外註解。

{}

statsd.serviceAccount.annotations

新增至 StatsD Kubernetes ServiceAccount 的註解。

{}

statsd.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

statsd.serviceAccount.create

指定是否應建立 ServiceAccount。

True

statsd.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

statsd.tolerations

指定 StatsD Pod 的容 tolerations。

[]

statsd.topologySpreadConstraints

指定 StatsD Pod 的拓撲分散約束。

[]

statsd.uid

StatsD 以使用者參數身分執行。

65534

Jobs

參數

描述

預設值

cleanup.affinity

指定清除 Pod 的排程限制。

{}

cleanup.args

執行清除 cronjob 時使用的 Args (已套用範本)。

['bash', '-c', 'exec airflow kubernetes cleanup-pods --namespace={{ .Release.Namespace }}']

cleanup.command

執行清除 cronjob 時使用的 Command (已套用範本)。

~

cleanup.enabled

啟用清除。

False

cleanup.env

將額外的 env 變數新增至清除。

[]

cleanup.jobAnnotations

新增至清除 cronjob 的註解。

{}

cleanup.labels

要新增至清除 Pod 的標籤。

{}

cleanup.nodeSelector

為清除 Pod 選擇特定節點。

{}

cleanup.podAnnotations

新增至清除 Pod 的註解。

{}

cleanup.priorityClassName

指定清除 Pod 的優先順序類別名稱。

~

cleanup.resources

或清除 Pod 的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

cleanup.schedule

清除排程 (已套用範本)。

*/15 * * * *

cleanup.securityContext

清除工作 Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

cleanup.serviceAccount.annotations

新增至清除 CronJob Kubernetes ServiceAccount 的註解。

{}

cleanup.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

cleanup.serviceAccount.create

指定是否應建立 ServiceAccount。

True

cleanup.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

cleanup.tolerations

指定清除 Pod 的容 tolerations。

[]

cleanup.topologySpreadConstraints

指定清除 Pod 的拓撲分散約束。

[]

createUserJob.affinity

指定建立使用者工作 Pod 的排程限制。

{}

createUserJob.annotations

新增至建立使用者工作 Pod 的註解。

{}

createUserJob.applyCustomEnv

指定是否要將額外設定的 env 變數套用至此工作

True

createUserJob.args

執行建立使用者工作時使用的 Args (已套用範本)。

['bash', '-c', 'exec \\\nairflow {{ semverCompare ">=2.0.0" .Values.airflowVersion | ternary "users create" "create_user" }} "$@"', '--', '-r', '{{ .Values.webserver.defaultUser.role }}', '-u', '{{ .Values.webserver.defaultUser.username }}', '-e', '{{ .Values.webserver.defaultUser.email }}', '-f', '{{ .Values.webserver.defaultUser.firstName }}', '-l', '{{ .Values.webserver.defaultUser.lastName }}', '-p', '{{ .Values.webserver.defaultUser.password }}']

createUserJob.command

執行建立使用者工作時使用的 Command (已套用範本)。

~

createUserJob.env

將額外的 env 變數新增至建立使用者工作 Pod。

[]

createUserJob.extraContainers

啟動建立使用者工作 Pod 的額外容器

[]

createUserJob.extraInitContainers

將額外的 init 容器新增至建立使用者工作 Pod (已套用範本)。

[]

createUserJob.extraVolumeMounts

將額外的磁碟區掛載到建立使用者工作中

[]

createUserJob.extraVolumes

將額外的磁碟區掛載到建立使用者工作中

[]

createUserJob.jobAnnotations

新增至建立使用者工作工作的註解。

{}

createUserJob.labels

新增至建立使用者工作物件和 Pod 的標籤。

{}

createUserJob.nodeSelector

為建立使用者工作 Pod 選擇特定節點。

{}

createUserJob.priorityClassName

指定建立使用者工作 Pod 的優先順序類別名稱。

~

createUserJob.resources

建立使用者工作 Pod 的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

createUserJob.securityContext

建立使用者工作 Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

createUserJob.serviceAccount.annotations

新增至建立使用者工作 Kubernetes ServiceAccount 的註解。

{}

createUserJob.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

createUserJob.serviceAccount.create

指定是否應建立 ServiceAccount。

True

createUserJob.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

createUserJob.tolerations

指定建立使用者工作 Pod 的容 tolerations。

[]

createUserJob.topologySpreadConstraints

指定建立使用者工作 Pod 的拓撲分散約束。

[]

createUserJob.ttlSecondsAfterFinished

限制工作物件在執行完成後的存留時間

300

createUserJob.useHelmHooks

指定是否要使用預設 Helm Hook 註解

True

migrateDatabaseJob.affinity

指定遷移資料庫工作 Pod 的排程限制。

{}

migrateDatabaseJob.annotations

新增至遷移資料庫工作 Pod 的註解。

{}

migrateDatabaseJob.applyCustomEnv

指定是否要將額外設定的 env 變數套用至此工作

True

migrateDatabaseJob.args

執行遷移資料庫工作時使用的 Args (已套用範本)。

['bash', '-c', 'exec \\\nairflow {{ semverCompare ">=2.7.0" .Values.airflowVersion | ternary "db migrate" (semverCompare ">=2.0.0" .Values.airflowVersion | ternary "db upgrade" "upgradedb") }}']

migrateDatabaseJob.command

執行遷移資料庫工作時使用的 Command (已套用範本)。

~

migrateDatabaseJob.enabled

啟用遷移資料庫工作。

True

migrateDatabaseJob.extraContainers

啟動遷移資料庫工作 Pod 的額外容器

[]

migrateDatabaseJob.extraInitContainers

將額外的 init 容器新增至遷移資料庫工作 (已套用範本)。

[]

migrateDatabaseJob.extraVolumeMounts

將額外的磁碟區掛載到遷移資料庫工作中

[]

migrateDatabaseJob.extraVolumes

將額外的磁碟區掛載到遷移資料庫工作中

[]

migrateDatabaseJob.jobAnnotations

新增至遷移資料庫工作工作的註解。

{}

migrateDatabaseJob.labels

新增至遷移資料庫工作物件和 Pod 的標籤。

{}

migrateDatabaseJob.nodeSelector

為遷移資料庫工作 Pod 選擇特定節點。

{}

migrateDatabaseJob.priorityClassName

指定遷移資料庫工作 Pod 的優先順序類別名稱。

~

migrateDatabaseJob.resources

遷移資料庫工作 Pod 的資源

{}

範例

resources:
  limits:
    cpu: 100m
    memory: 128Mi
  requests:
    cpu: 100m
    memory: 128Mi

migrateDatabaseJob.securityContext

遷移資料庫工作 Pod 的安全性內容 (已棄用,請改用 securityContexts)。如果未設定,將使用 securityContext 的值。

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

migrateDatabaseJob.serviceAccount.annotations

新增至遷移資料庫工作 Kubernetes ServiceAccount 的註解。

{}

migrateDatabaseJob.serviceAccount.automountServiceAccountToken

指定是否應將 ServiceAccount 的 API 認證掛載到 Pod 上

True

migrateDatabaseJob.serviceAccount.create

指定是否應建立 ServiceAccount。

True

migrateDatabaseJob.serviceAccount.name

要使用的 ServiceAccount 名稱。如果未設定且 create 為 true,則會使用發行名稱產生名稱。

~

migrateDatabaseJob.tolerations

指定遷移資料庫工作 Pod 的容 tolerations。

[]

migrateDatabaseJob.topologySpreadConstraints

指定遷移資料庫工作 Pod 的拓撲分散約束。

[]

migrateDatabaseJob.ttlSecondsAfterFinished

限制工作物件在執行完成後的存留時間

300

migrateDatabaseJob.useHelmHooks

指定是否要使用預設 Helm Hook 註解

True

Kubernetes

參數

描述

預設值

_rpcServer.containerLifecycleHooks

RPC 伺服器的容器生命週期 Hook 定義。如果未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

_rpcServer.securityContexts.container

RPC 伺服器的容器安全性內容定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

_rpcServer.securityContexts.pod

RPC 伺服器的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

_rpcServer.topologySpreadConstraints

指定 RPC 伺服器 Pod 的拓撲分散約束。

[]

_rpcServer.waitForMigrations.securityContexts.container

等待遷移作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

affinity

指定所有 Pod 的排程約束。

{}

airflowConfigAnnotations

套用至主要 Airflow Configmap 的額外註釋。

{}

airflowPodAnnotations

套用至所有 Airflow Pod 的額外註釋。

{}

cleanup.containerLifecycleHooks

清理作業的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

cleanup.securityContexts.container

清理作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

cleanup.securityContexts.pod

清理作業的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

containerLifecycleHooks

預設容器生命週期鉤點定義。當特定容器未定義 containerLifecycleHooks 時,將使用此參數中的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

createUserJob.containerLifecycleHooks

建立使用者任務的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

createUserJob.securityContexts.container

建立使用者任務的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

createUserJob.securityContexts.pod

建立使用者任務的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

dagProcessor.containerLifecycleHooks

DAG 處理器的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

dagProcessor.securityContexts.container

DAG 處理器的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

dagProcessor.securityContexts.pod

DAG 處理器的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

dagProcessor.waitForMigrations.securityContexts.container

等待遷移作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

dags.gitSync.containerLifecycleHooks

dags Git 同步 Sidecar 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

dags.gitSync.securityContexts.container

dags Git 同步 Sidecar 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

extraConfigMaps

將由 Chart 管理的額外 ConfigMap。

{}

範例

extraConfigMaps:
  '{{ .Release.Name }}-airflow-variables':
    data: |-
      AIRFLOW_VAR_HELLO_MESSAGE: 'Hi!'
      AIRFLOW_VAR_KUBERNETES_NAMESPACE: '{{ .Release.Namespace }}'

extraSecrets

將由 Chart 管理的額外密鑰。

{}

範例

extraSecrets:
  '{{ .Release.Name }}-airflow-connections':
    data: |-
      AIRFLOW_CONN_GCP: 'base64_encoded_gcp_conn_string'
      AIRFLOW_CONN_AWS: 'base64_encoded_aws_conn_string'
    stringData: 'AIRFLOW_CONN_OTHER: ''other_conn'''

flower.containerLifecycleHooks

網路原則的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

flower.securityContexts.container

網路原則的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

flower.securityContexts.pod

網路原則的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

labels

將通用標籤新增至此 Chart 中定義的所有物件和 Pod。

{}

limits

定義命名空間中 Pod 和容器的預設/最大/最小值。

[]

migrateDatabaseJob.containerLifecycleHooks

遷移資料庫任務的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

migrateDatabaseJob.securityContexts.container

遷移資料庫任務的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

migrateDatabaseJob.securityContexts.pod

遷移資料庫任務的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

networkPolicies.enabled

啟用網路原則。

False

nodeSelector

為所有 Pod 選擇特定節點。

{}

pgbouncer.containerLifecycleHooks

PgBouncer 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{'preStop': {'exec': {'command': ['/bin/sh', '-c', 'killall -INT pgbouncer && sleep 120']}}}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

pgbouncer.metricsExporterSidecar.containerLifecycleHooks

指標匯出 Sidecar 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

pgbouncer.metricsExporterSidecar.securityContexts.container

指標匯出 Sidecar 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

pgbouncer.securityContexts.container

PgBouncer 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

pgbouncer.securityContexts.pod

PgBouncer 的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 65534

priorityClasses

Helm Chart 建立的優先順序類別

[]

範例

priorityClasses:
- name: class1
  preemptionPolicy: PreemptLowerPriority
  value: 10000
priorityClasses:
- name: class2
  preemptionPolicy: Never
  value: 100000

quotas

定義命名空間的任何資源配額。

{}

rbac.create

指定是否應建立 RBAC 資源。

True

rbac.createSCCRoleBinding

指定是否應建立 SCC RoleBinding 資源(請參閱 生產指南)。

False

redis.containerLifecycleHooks

Redis 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

redis.securityContexts.container

Redis 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

redis.securityContexts.pod

Redis 的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 999

registry.connection

Registry 連線配置。

{}

範例

connection:
  email: '...'
  host: '...'
  pass: '...'
  user: '...'

registry.connection.email

電子郵件

""

registry.connection.host

主機

""

registry.connection.pass

密碼

""

registry.connection.user

使用者名稱

""

registry.secretName

Registry 連線字串密鑰。

~

scheduler.containerLifecycleHooks

排程器的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

scheduler.securityContexts.container

排程器的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

scheduler.securityContexts.pod

排程器的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

scheduler.waitForMigrations.securityContexts.container

等待遷移作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

securityContext

預設 Pod 安全性環境定義(已棄用,請改用 securityContexts)。當特定 Pod 未定義 securityContext 時,將使用此參數中的值

{}

範例

securityContext:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

securityContexts.container

預設容器安全性環境定義。當特定容器未定義 securityContexts 時,將使用此參數中的值

{}

範例

container:
  allowPrivilegeEscalation: false

securityContexts.pod

預設 Pod 安全性環境定義。當特定 Pod 未定義 securityContexts 時,將使用此參數中的值。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

statsd.containerLifecycleHooks

StatsD 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

statsd.securityContexts.container

StatsD 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

statsd.securityContexts.pod

StatsD 的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

tolerations

指定所有 Pod 的容忍度。

[]

topologySpreadConstraints

指定所有 Pod 的拓撲分散約束。

[]

triggerer.containerLifecycleHooks

觸發器的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

triggerer.securityContexts.container

觸發器的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

triggerer.securityContexts.pod

觸發器的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

triggerer.waitForMigrations.securityContexts.container

等待遷移作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

webserver.containerLifecycleHooks

網頁伺服器的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

webserver.securityContexts.container

網頁伺服器的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

webserver.securityContexts.pod

網頁伺服器的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

webserver.topologySpreadConstraints

指定網頁伺服器 Pod 的拓撲分散約束。

[]

webserver.waitForMigrations.securityContexts.container

等待遷移作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

workers.containerLifecycleHooks

Worker 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

workers.kerberosInitContainer.containerLifecycleHooks

Kerberos 初始化容器的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

workers.kerberosInitContainer.securityContexts.container

Kerberos 初始化容器的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

workers.kerberosSidecar.containerLifecycleHooks

Kerberos Sidecar 的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

workers.kerberosSidecar.securityContexts.container

Kerberos Sidecar 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

workers.persistence.containerLifecycleHooks

持久性的容器生命週期鉤點定義。若未設定,將使用全域 containerLifecycleHooks 的值。

{}

範例

containerLifecycleHooks:
  postStart:
    exec:
      command:
      - /bin/sh
      - -c
      - echo postStart handler > /usr/share/message
  preStop:
    exec:
      command:
      - /bin/sh
      - -c
      - echo preStop handler > /usr/share/message

workers.persistence.securityContexts.container

持久性的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

workers.securityContexts.container

Worker 的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

workers.securityContexts.pod

Worker 的 Pod 安全性環境定義。

{}

範例

pod:
  fsGroup: 0
  runAsGroup: 0
  runAsUser: 50000

workers.waitForMigrations.securityContexts.container

等待遷移作業的容器安全性環境定義。

{}

範例

container:
  allowPrivilegeEscalation: false
  capabilities:
    drop:
    - ALL

Ingress

參數

描述

預設值

ingress.enabled

啟用所有 Ingress 資源(已棄用 - 請改用 ingress.web.enabled 和 ingress.flower.enabled)。

~

ingress.flower.annotations

Flower Ingress 的註釋。

{}

ingress.flower.enabled

啟用 Flower Ingress 資源。

False

ingress.flower.host

Flower Ingress 的主機名稱。(已棄用 - 已重新命名為 ingress.flower.hosts

""

ingress.flower.hosts

Flower Ingress 的主機名稱或主機配置。

[]

ingress.flower.ingressClassName

Flower Ingress 的 Ingress 類別。

""

ingress.flower.path

Flower Ingress 的路徑。

/

ingress.flower.pathType

Flower Ingress 的 pathType(Kubernetes 1.19 及以上版本為必填)。

ImplementationSpecific

ingress.flower.tls.enabled

啟用 Flower Ingress 的 TLS 終止。

False

ingress.flower.tls.secretName

預先建立的 Secret 名稱,其中包含 TLS 私鑰和憑證。

""

ingress.web.annotations

Web Ingress 的註釋。

{}

ingress.web.enabled

啟用 Web Ingress 資源。

False

ingress.web.host

Web Ingress 的主機名稱。(已棄用 - 已重新命名為 ingress.web.hosts

""

ingress.web.hosts

Web Ingress 的主機名稱或主機配置。

[]

ingress.web.ingressClassName

Web Ingress 的 Ingress 類別。

""

ingress.web.path

Web Ingress 的路徑。

/

ingress.web.pathType

Web Ingress 的 pathType(Kubernetes 1.19 及以上版本為必填)。

ImplementationSpecific

ingress.web.precedingPaths

要新增至 Web Ingress 預設路徑之前的 HTTP 路徑。

[]

ingress.web.succeedingPaths

要新增至 Web Ingress 預設路徑之後的 HTTP 路徑。

[]

ingress.web.tls.enabled

啟用 Web Ingress 的 TLS 終止。

False

ingress.web.tls.secretName

預先建立的 Secret 名稱,其中包含 TLS 私鑰和憑證。

""

Kerberos

參數

描述

預設值

kerberos.ccacheFileName

Kerberos 憑證快取檔案的名稱。

cache

kerberos.ccacheMountPath

Kerberos 憑證快取共用磁碟區的掛載路徑。

/var/kerberos-ccache

kerberos.config

krb5.conf 的內容。

請參閱 values.yaml

kerberos.configPath

krb5.conf Kerberos 配置檔案的掛載路徑。

/etc/krb5.conf

kerberos.enabled

啟用 Kerberos。

False

kerberos.keytabBase64Content

Kerberos Keytab Base64 編碼內容。

~

kerberos.keytabPath

在 Kerberos Sidecar 中掛載 Keytab 以刷新憑證的路徑。

/etc/airflow.keytab

kerberos.principal

刷新 Kerberos 憑證時要使用的主體。

airflow@FOO.COM

kerberos.reinitFrequency

Airflow Kerberos 重新初始化憑證快取的頻率(秒)。

3600

使用 --set key=value[,key=value] 參數搭配 helm install 指定每個參數。例如:

helm install my-release apache-airflow/airflow \
  --set executor=CeleryExecutor \
  --set enablePodLaunching=false .

此條目是否有幫助?