我正在运行 3-4 个 Python DAG。问题是调度程序在 4-5 小时后会停止运行。当我启动它时,它运行良好并且 DAG 确实运行,但几个小时后它就会停止运行并出现以下错误:
回溯(最近一次调用最后一次):文件“/usr/bin/airflow”,第 28 行,在 args.func(args) 中文件“/usr/lib/python2.7/site-packages/airflow/bin/cli.py”,第 882 行,在调度程序 job.run() 中文件“/usr/lib/python2.7/site-packages/airflow/jobs.py”,第 200 行,在运行 self._execute() 中文件“/usr/lib/python2.7/site-packages/airflow/jobs.py”,第 1312 行,在 _execute self._execute_helper(processor_manager) 中文件“/usr/lib/python2.7/site-packages/airflow/jobs.py”,第 1409 行,在 _execute_helper 中 simple_dags = process_manager.heartbeat() 文件“/usr/lib/python2.7/site-packages/airflow/utils/dag_processing.py”, 第 622 行, 在 heartbeat 处理器 = self._processor_factory(file_path, log_file_path) 文件“/usr/lib/python2.7/site-packages/airflow/jobs.py”, 第 1301 行, 在 processing_factory log_file_path) 文件“/usr/lib/python2.7/site-packages/airflow/jobs.py”, 第 257 行, 在在里面 self._result_queue = multiprocessing.Queue() 文件“/usr/lib64/python2.7/multiprocessing/在里面.py”, 第 218 行, 在队列中返回队列 (maxsize) 文件“/usr/lib64/python2.7/multiprocessing/queues.py”, 第 63 行, 在在里面 self._rlock = Lock() 文件“/usr/lib64/python2.7/multiprocessing/synchronize.py”, 第 147 行, 位于在里面 符号锁。在里面(self,SEMAPHORE,1,1)文件“/usr/lib64/python2.7/multiprocessing/synchronize.py”,第 75 行,位于在里面 sl = self._semlock = _multiprocessing.SemLock(kind, value, maxvalue) OSError: [Errno 2] 没有这样的文件或目录
我已经将 /dev/shm 目录权限更改为 1777,并将其添加到路径绑定变量中。我的机器是 8 核 Azure VM。Python 版本是 2.7.5。
请指导。