Cloud Composer 上的 Airflow sigkill 任务

Airflow sigkill tasks on cloud composer

我看到其他人提到了 sigkill,但我认为我的用例略有不同。

我正在通过 gcp cloud composer 使用托管气流服务,运行ning 气流 2。我有 3 个工作节点都设置为默认实例创建设置。

环境 运行s dags 在大多数情况下相当顺利(api 调用,从本地移动文件)但是它似乎很难执行几个稍大的职位。

其中一个作业使用 samba 连接器来增量回填丢失的数据并存储在 gcs 上。另一个是销售人员 api 连接器。

这些作业 运行 在本地完全没有问题,所以我想知道为什么我会遇到这些问题。 运行 这些任务作为一个集群应该有足够的内存,尽管为 2 个作业扩展我的集群似乎不是特别有效。

我已经尝试过 dag 和任务超时。我试过增加 samba 客户端的连接超时。

所以有人可以分享一些关于如何让气流在不终止会话的情况下执行这些任务的见解 - 即使它确实需要更长的时间。

如果需要,很乐意添加更多详细信息,但我目前没有可用的数据可以分享。

我相信这是关于连接上的保活。如果有长运行的调用导致长时间不活动(因为对方忙着准备数据)。在托管实例中,非活动连接经常被防火墙杀死。例如,长时间的 Postgres 查询和解决方案就是配置 keepalives。

我认为你应该为你的 samba 连接做同样的事情(但你需要弄清楚如何在 composer 中做)https://www.linuxtopia.org/online_books/network_administration_guides/using_samba_book/ch08_06_04.html

令人沮丧的是,增加资源意味着工作可以 运行。我不知道为什么资源没有达到应有的水平。但是,除了增加成本外,完全托管解决方案的优化并不过分直接。