Airflow2 在 LocalExecutor 上使用 MySql5.7 非常慢 - 读取通信数据包时出错
Airflow2 very slow with MySql5.7 on LocalExecutor - Got an error reading communication packets
按照 MySql 指南 here, m using this docker- 编写文件。首先,我启动了 运行s 数据库迁移的 airflow-init 容器,并在 mysql 数据库中创建了管理员用户。然后 运行 调度程序,我开始在 MySql;
中看到以下日志
Aborted connection 11 to db: 'airflow' user: 'airflow' host:
'192.168.0.3' (Got an error reading communication packets)
更多这些日志,在 运行ning 网络服务器之后。但是,我能够像往常一样登录到 UI 并触发 DAG,但是 UI 非常慢(与使用带有顺序执行程序的 SqLite 数据库相比)。我主要在 UI 中收到 The scheduler does not appear to be running. Last heartbeat was received <x seconds/minutes> ago.
作为警告。我尝试增加 max_allowed_packet、max_connections 以及 here 中提到的 interactive_timeout,但没有成功。我还将 sql_alchemy_pool_recycle 翻了一番,达到 3600。
早期版本的 airflow here 中报告了此问题。我期待 UI 变得 运行 顺利。有人遇到过这个问题吗?有什么提示或线索吗?
没有太多信息,但是 MySQL 的 Airflow 应该比 Sqlite 快得多。
最有可能发生的情况是您没有为 docker 引擎分配足够的内存并且 MySQL/Airflow 开始使用交换磁盘。
我相信默认情况下 MySQL 容器至少使用 800 MB,如果你不将它配置为使用更少,并且与 运行 Airflow 一起使用,它们只能适应 ~ 4GB。
如果您使用的是 MacOS(猜测),我相信 Docker 引擎的默认内存是 2GB,因此您需要增加它。
按照 MySql 指南 here, m using this docker- 编写文件。首先,我启动了 运行s 数据库迁移的 airflow-init 容器,并在 mysql 数据库中创建了管理员用户。然后 运行 调度程序,我开始在 MySql;
中看到以下日志Aborted connection 11 to db: 'airflow' user: 'airflow' host: '192.168.0.3' (Got an error reading communication packets)
更多这些日志,在 运行ning 网络服务器之后。但是,我能够像往常一样登录到 UI 并触发 DAG,但是 UI 非常慢(与使用带有顺序执行程序的 SqLite 数据库相比)。我主要在 UI 中收到 The scheduler does not appear to be running. Last heartbeat was received <x seconds/minutes> ago.
作为警告。我尝试增加 max_allowed_packet、max_connections 以及 here 中提到的 interactive_timeout,但没有成功。我还将 sql_alchemy_pool_recycle 翻了一番,达到 3600。
早期版本的 airflow here 中报告了此问题。我期待 UI 变得 运行 顺利。有人遇到过这个问题吗?有什么提示或线索吗?
没有太多信息,但是 MySQL 的 Airflow 应该比 Sqlite 快得多。
最有可能发生的情况是您没有为 docker 引擎分配足够的内存并且 MySQL/Airflow 开始使用交换磁盘。
我相信默认情况下 MySQL 容器至少使用 800 MB,如果你不将它配置为使用更少,并且与 运行 Airflow 一起使用,它们只能适应 ~ 4GB。
如果您使用的是 MacOS(猜测),我相信 Docker 引擎的默认内存是 2GB,因此您需要增加它。