Apache Atlas 和 Airflow 集成

Apache Atlas and Airflow Integration

我正在尝试集成一个 Apache Atlas 实例,我有 运行 Apache Airflow。在 airflow.cfg 中建立连接后,我尝试 运行 来自 Airflow 调度程序的 DAG。我在日志中收到以下错误。

[2021-02-02 20:50:47,958] {connectionpool.py:752} WARNING - Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f464b856950>: Failed to establish a new connection: [Errno 111] Connection refused')': /api/atlas/v2/types/typedefs

[2021-02-02 20:50:47,960] {taskinstance.py:1150} ERROR - HTTPConnectionPool(host='localhost', port=21000): Max retries exceeded with url: /api/atlas/v2/types/typedefs (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f464b8650d0>: Failed to establish a new connection: [Errno 111] Connection refused'))

我的airflow.cfg配置如下:

[lineage]
backend = airflow.lineage.backend.atlas.AtlasBackend

[atlas]
username = <username>
password = <password>
host = localhost
port = 21000

我也试过将主机更改为 http://localhost。我不确定在 Atlas 中的何处进行调查以确定连接被拒绝的原因。

Connection Refused 表示 服务未在配置的端口上侦听 错误的主机名 .

尝试将localhost替换为fqdn,

正确配置它的一个好方法是访问 atlas ui 并将主机名从 url 简单地放入配置。

我能够通过在启动 atlas 的 docker 容器时添加 --hostname 标志来解决问题。然后我使用我提供的主机名作为 airflow.cfg

中的主机