Google Composer 升级后 Airflow 调度程序未启动
Airflow scheduler does not start after Google Composer upgrade
早上好,
将 Google Composer 升级到 1.18 版并将 Apache Airflow 升级到 1.10.15 版(使用 composer 的自动升级)后,调度程序似乎无法启动。
Airflow message: "The scheduler does not appear to be running. Last heartbeat was received 1 day ago.The DAGs list may not update, and new tasks will not be scheduled."
得到这个之后我尝试了:
重新启动网络服务器
gcloud beta composer environments restart-web-server
尝试重启Airflow-Scheduler:
kubectl get deployment airflow-scheduler -o yaml | kubectl replace --force -f -
我看了pod的信息:
kubectl describe pod airflow-scheduler
Last State: Terminated
Reason: Error
Exit Code: 1
Started: Wed, 23 Feb 2022 15:59:13 +0000
Finished: Wed, 23 Feb 2022 16:04:09 +0000
所以我删除了 pod 并等待它 运行 自己:
kubectl delete pod airflow-scheduler-...
编辑 1:来自 pod 的日志:
Dags and plugins are not synced yet
- 编辑 2:附加日志:
Building synchronization state...
Starting synchronization...
Copying gs://europe-west1-********-bucket/dags/sql/...
Skipping attempt to download to filename ending with slash
(/home/airflow/gcs/dags/sql/). This typically happens when using
gsutil to download from a subdirectory created by the Cloud Console
(https://cloud.google.com/console)
/ [0/1 files][ 0.0 B/ 11.0 B] 0% Done InvalidUrl Error: Invalid destination path: /home/airflow/gcs/dags/sql/
但是一直单独重启,有时会出现CrashLoopBackOff,说明容器在重启后反复崩溃
不确定我还能做些什么:/.
感谢您的帮助:)
您遇到的问题与资源达到限制有关,这导致您无法启动调度程序。
我的假设是这可能会发生:
- 对调度程序设置的限制导致 gcsfuse 进程
被杀了,你能把它们拿下来检查是否能阻止
崩溃循环?
- K8s 集群没有足够的资源供 Composer Agent 执行
启动调度程序作业,您可以向其添加资源。
- 为此,您在启动时收到了损坏的条目。这
你可以做的是重新启动调度程序
你自己的,通过使用 ssh 连接到实例。
在我们的 DAGs 文件夹(存储桶内)中,我们有另一个文件夹,其中包含由不同 BigQuery 运算符触发的所有 SQL。由于某种原因,该文件夹的同步未正确完成,因此在删除该文件夹并再次添加后,工作人员再次启动。
早上好,
将 Google Composer 升级到 1.18 版并将 Apache Airflow 升级到 1.10.15 版(使用 composer 的自动升级)后,调度程序似乎无法启动。
Airflow message: "The scheduler does not appear to be running. Last heartbeat was received 1 day ago.The DAGs list may not update, and new tasks will not be scheduled."
得到这个之后我尝试了:
重新启动网络服务器
gcloud beta composer environments restart-web-server
尝试重启Airflow-Scheduler:
kubectl get deployment airflow-scheduler -o yaml | kubectl replace --force -f -
我看了pod的信息:
kubectl describe pod airflow-scheduler
Last State: Terminated Reason: Error Exit Code: 1 Started: Wed, 23 Feb 2022 15:59:13 +0000 Finished: Wed, 23 Feb 2022 16:04:09 +0000
所以我删除了 pod 并等待它 运行 自己:
kubectl delete pod airflow-scheduler-...
编辑 1:来自 pod 的日志:
Dags and plugins are not synced yet
- 编辑 2:附加日志:
Building synchronization state... Starting synchronization... Copying gs://europe-west1-********-bucket/dags/sql/... Skipping attempt to download to filename ending with slash (/home/airflow/gcs/dags/sql/). This typically happens when using gsutil to download from a subdirectory created by the Cloud Console (https://cloud.google.com/console) / [0/1 files][ 0.0 B/ 11.0 B] 0% Done InvalidUrl Error: Invalid destination path: /home/airflow/gcs/dags/sql/
但是一直单独重启,有时会出现CrashLoopBackOff,说明容器在重启后反复崩溃
不确定我还能做些什么:/.
感谢您的帮助:)
您遇到的问题与资源达到限制有关,这导致您无法启动调度程序。
我的假设是这可能会发生:
- 对调度程序设置的限制导致 gcsfuse 进程 被杀了,你能把它们拿下来检查是否能阻止 崩溃循环?
- K8s 集群没有足够的资源供 Composer Agent 执行 启动调度程序作业,您可以向其添加资源。
- 为此,您在启动时收到了损坏的条目。这 你可以做的是重新启动调度程序 你自己的,通过使用 ssh 连接到实例。
在我们的 DAGs 文件夹(存储桶内)中,我们有另一个文件夹,其中包含由不同 BigQuery 运算符触发的所有 SQL。由于某种原因,该文件夹的同步未正确完成,因此在删除该文件夹并再次添加后,工作人员再次启动。