我正在使用SSH操作符运行气流任务。我非常确信python程序没有错误,并且在运行它时成功运行。但是,当在程序执行结束时从气流中运行时,我就会出现SIGTERM错误。
我试图通过研究各种解决方案来找出答案,但没有什么效果。我尝试将killed_task_cleanup_time = 1200从airflow.cfg文件中的60增加。还尝试将hostname_callable更改为socket:gethostname in airflow.cfg,因为我在此错误之前收到了以下警告
Warning: The recorded hostname xxx does not match this instance's hostname
Error:
[2020-10-15 10:45:34,937] {taskinstance.py:954} ERROR - Received SIGTERM. Terminating subprocesses.
[2020-10-15 10:45:34,959] {taskinstance.py:1145} ERROR - SSH operator error: Task received SIGTERM signal
Traceback (most recent call last):
File "/opt/anaconda3/lib/python3.7/site-packages/airflow/contrib/operators/ssh_operator.py", line 137, in execute
readq, _, _ = select([channel], [], [], self.timeout)
File "/opt/anaconda3/lib/python3.7/site-packages/airflow/models/taskinstance.py", line 956, in signal_handler
raise AirflowException("Task received SIGTERM signal")
airflow.exceptions.AirflowException: Task received SIGTERM signal
任何想法和建议都是有益的。坚持了一天
发布于 2020-12-11 08:11:10
此问题是由以下事实触发的:记录的主机名XXX映射的IP地址与实例主机名映射的IP地址不同,引发SIGTERM错误。因此,您需要为记录的主机名XXX指定IP映射。
https://stackoverflow.com/questions/64368242
复制相似问题