管理日誌¶
關於管理您的 Airflow 日誌,您有多種選項。
無持久性¶
使用此選項,Airflow 將在本機記錄到每個 pod。 因此,日誌僅在 pod 的生命週期內可用。
helm upgrade --install airflow apache-airflow/airflow \
--set logs.persistence.enabled=false
# --set workers.persistence.enabled=false (also needed if using ``CeleryExecutor``)
Celery worker 日誌持久性¶
如果您使用 CeleryExecutor
,worker 預設會將日誌持久化到使用 volumeClaimTemplate
建立的磁碟區宣告。
您可以修改範本
helm upgrade --install airflow apache-airflow/airflow \
--set executor=CeleryExecutor \
--set workers.persistence.size=10Gi
請注意,使用此選項僅持久化任務日誌,與啟用日誌持久性時不同,後者也會持久化排程器日誌。
日誌持久性已啟用¶
此選項將佈建一個存取模式為 ReadWriteMany
的 PersistentVolumeClaim
。 然後,Airflow 的每個組件都將記錄到同一個磁碟區。
並非所有磁碟區外掛程式都支援 ReadWriteMany
存取模式。 有關詳細資訊,請參閱 Persistent Volume Access Modes。
helm upgrade --install airflow apache-airflow/airflow \
--set logs.persistence.enabled=true
# you can also override the other persistence
# by setting the logs.persistence.* values
# Please refer to values.yaml for details
外部佈建的 PVC¶
在這種方法中,Airflow 將記錄到現有的 ReadWriteMany
PVC。 您將磁碟區宣告的名稱傳遞到 Chart。
helm upgrade --install airflow apache-airflow/airflow \
--set logs.persistence.enabled=true \
--set logs.persistence.existingClaim=my-volume-claim
請注意,磁碟區需要可由 Airflow 使用者寫入。 最簡單的方法是確保 GID 0
具有寫入權限。 更多資訊可以在 Docker image entrypoint documentation 中找到。
Elasticsearch¶
如果您的叢集將日誌轉發到 Elasticsearch,您可以配置 Airflow 以從中檢索任務日誌。 有關更多詳細資訊,請參閱 Elasticsearch providers guide。
helm upgrade --install airflow apache-airflow/airflow \
--set elasticsearch.enabled=true \
--set elasticsearch.secretName=my-es-secret
# Other choices exist. Please refer to values.yaml for details.