簡體   English   中英

Airflow Helm Chart - 為什么有狀態集用於工人定義?

[英]Airflow Helm Chart - why stateful set is used for worker definition?

我正在使用官方 Helm 圖表部署 Airflow,並試圖了解為什么它需要有狀態集來進行工作人員部署。 當它對 redis 和 postgtre 完全有意義時,我不確定為什么這是對工人的要求

實際上,在官方 Helm 圖表中,他們根據您的持久性配置在statefulsetdeployment之間進行選擇來部署您的工作人員:

  • 如果啟用(默認情況下),他們使用StatefulSet來創建 PVC,這將為每個 pod 創建一個 PV。
  • 如果它被禁用,他們使用deployment

是他們用於在兩種資源之間進行選擇的條件的鏈接。

至少最初,worker 被部署為 StatefulSet,因為作業的日志存儲在與 id 關聯的持久卷上。 當 webserver 向 worker 請求日志時,它需要引用 set 中的 defacto id,例如 celery-0, celery-1。 如果網絡服務器查詢一個隨機工作者,它不會返回任何日志,並且是人們在部署過程中遇到的常見“錯誤/問題”。

今天可能是這樣,也可能不是,但這里清楚地解釋了: https://artifacthub.io/packages/helm/airflow-helm/airflow/7.15.0#docs-kubernetes---worker-autoscaling

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM