早上好,
将Google Composer升级到1.18版本,将Apache Airflow升级到1.10.15版本(使用Composer的自动升级(后,调度器似乎无法启动。
气流消息:";计划程序似乎没有运行。最后一次心跳是在1天前收到的。DAG列表可能不会更新,也不会安排新任务">
得到这个后,我尝试:
-
重新启动web服务器
gcloud beta composer environments restart-web-server
-
尝试重新启动气流计划程序:
kubectl get deployment airflow-scheduler -o yaml | kubectl replace --force -f -
-
我查看了吊舱的信息:
kubectl describe pod airflow-scheduler
最后状态:已终止原因:错误退出代码:1开始时间:2022年2月23日星期三15:59:13+0000完成时间:2022年2月23日星期三16:04:09+0000
-
所以我删除了pod并等待它自己运行:
kubectl delete pod airflow-scheduler-...
-
编辑1:吊舱中的日志:
达格和插件尚未同步
- 编辑2:其他日志:
正在构建同步状态。。。正在启动同步。。。正在复制gs://europe-west1-********-backet/dags/sql/。。。正在跳过下载到以斜杠结尾的文件名的尝试(/home/airflow/gcs/dags/sql/(。这通常发生在使用从云控制台创建的子目录下载的gsutil(https://cloud.google.com/console)/[0/1个文件][0.0 B/11.0 B]0%完成InvalidUrl错误:无效的目标路径:/home/airflow/gcs/dags/sql/
但它继续单独重新启动,有时会出现CrashLoopBackOff,表明容器在重新启动后反复崩溃
不知道我还能做些什么:/。
感谢您的帮助:(
您面临的问题与资源超出限制的问题有关,这不允许您启动Scheduler。
我的假设是这种情况可能会发生:
- 调度程序上设置的限制导致gcsfuse进程被杀了,你能把它们移走,看看是否能阻止crashloop
- K8s群集没有足够的资源,Composer代理无法启动调度程序作业,您可以为此添加资源
- 当它启动时,你得到了一个损坏的条目。这个使用此操作可以重新启动上的调度程序您自己的,通过使用ssh连接到实例
在我们的DAGs文件夹(在bucket中(中,我们有另一个文件夹,其中包含由不同BigQuery运算符触发的所有SQL。由于某种原因,该文件夹的同步没有正确完成,因此在删除文件夹并再次添加后,工作人员又重新启动了。