经过一番尝试后,我发现最稳定的安装由
组成AIRFLOW 1.8
ERLANG 19.2 + RABBITMQ 3.6.7
PYTHON 2.7
一切都运作得很好但我仍然遇到了一些不好的问题,当我使用面板开始使用DAG时,会发生最戏剧性的问题。
在这种情况下,调度程序会停止工作,如果我重新启动它,任何事情都会继续工作而不会出现问题,如果你正在使用
airflow-scheduler-failover-controller
调度程序会自动重启,也许你从来没有注意到这个问题。无论你是否注意到它,实际上它仍处于气流状态,并且每次从面板启动DAG时仍然会杀死调度程序;幸运的是,你不必经常手工开始唠叨。
经过长时间的调查,当AIRFLOW要求工作状态时,问题就会出现:
info celery_executor.py:
83 def sync(self):
84
85 self.logger.debug(
86 "Inquiring about {} celery task(s)".format(len(self.tasks)))
87
88 for key, async in list(self.tasks.items()):
90 state = async.state <---- HERE
由于连接重置,async.state引发异常,这在创建队列后发生。据我所知,当async.state被调用时,TCP通道已经关闭。
进入wirehare日志我可以看到: 172.1.0.2 - &gt; rabbitmq node,172.1.0.1 - &gt;气流节点
有人解决了这个问题吗?