粘合作业因连接超时错误而失败

Tul*_*ula 2 amazon-web-services aws-glue aws-glue-data-catalog

我有一个 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/"
Run Code Online (Sandbox Code Playgroud)

Pra*_*ddy 7

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

这就是您无法连接到 Glue boto3 启动爬虫 API 调用的原因。为此,您需要创建/添加 Glue VPC 端点到 VPC,并且启动爬网程序的请求必须如下所示,其中包含端点_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') 
Run Code Online (Sandbox Code Playgroud)