胶水作业因连接超时错误而失败

Glue job is failing with connection time out error

我有一个 Glue ETL 作业,它从目录中读取数据并写入 s3。完成此操作后,需要触发爬虫来更新 Athena 中的数据。

因此,我正在使用 glue_client.start_crawler(Name='crawler_name') 方法来启动爬虫。但是每当我尝试从 ETL Glue 作业启动爬虫时,它都会失败并出现以下错误

ConnectTimeoutError: Connect timeout on endpoint URL: "https://glue.eu-central-1.amazonaws.com/"

当您通过附加连接在 VPC 内启动 Glue 作业时,流量将仅驻留在 AWS network 中,而不通过 public 互联网。

这就是您无法连接到 Glue boto3 启动爬虫 API 调用的原因。为此,您需要 create/add 将 VPC 端点粘附到 VPC,并且启动爬虫的请求必须如下所示,其中包括 endpoint_url.

import boto3
glue = boto3.client(service_name='glue', region_name='eu-central-1',
              endpoint_url='https://glue.eu-central-1.amazonaws.com')
glue.start_crawler(Name='crawler_name')