Amazon Glue 连接属性 - Amazon Glue
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

Amazon Glue 连接属性

在 Amazon Glue 控制台上定义连接时,您必须提供以下属性值:

连接名称

为连接键入一个唯一名称。

连接类型

选择 JDBC 或特定的连接类型之一。

有关 JDBC 连接类型的详细信息,请参阅Amazon Glue JDBC 连接属性

选择 Network (网络) 以连接到 Amazon Virtual Private Cloud 环境(Amazon VPC)中的数据源。

根据您选择的类型,Amazon Glue 控制台会显示其他必需字段。例如,如果选择 Amazon RDS,则必须选择数据库引擎。

需要 SSL 连接

选择此选项时,Amazon Glue 必须验证数据存储连接是通过受信任的安全套接字层(SSL)进行连接的。

有关更多信息(包括选择此选项时可用的其他选项),请参阅Amazon Glue 连接 SSL 属性

选择 MSK 集群(仅适用于 Amazon managed streaming for Apache Kafka(MSK))

指定来自另一个 Amazon 账户的 MSK 集群。

Kafka 引导启动服务器 URL(仅限 Kafka)

指定引导服务器 URL 的逗号分隔的列表。包括端口号。例如:b-1.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094, b-2.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094, b-3.vpc-test-2.o4q88o.c6.kafka.us-east-1.amazonaws.com:9094

Amazon Glue JDBC 连接属性

Amazon Glue 可通过 JDBC 连接来连接到以下数据存储:

  • Amazon Redshift

  • Amazon Aurora

  • Microsoft SQL Server

  • MySQL

  • Oracle

  • PostgreSQL

  • Amazon RDS for MariaDB

重要

目前,ETL 任务只能在一个子网内使用 JDBC 连接。如果您在一个作业中有多个数据存储,则它们必须在同一子网上。

以下是适用于 JDBC 连接类型的其他属性。

JDBC URL

键入 JDBC 数据存储的 URL。对于大多数数据库引擎,此字段将采用以下格式。在此格式中,将 protocol(协议)host(主机)port(端口)db_name(db_名称)替换为您自己的信息。

jdbc:protocol://host:port/db_name

根据数据库引擎,可能需要不同的 JDBC URL 格式。此格式可能稍微不同地使用冒号 (:) 和斜杠 (/) 或不同的关键字来指定数据库。

要让 JDBC 连接到数据存储,数据存储中需要 db_namedb_name 用于与提供的 usernamepassword 建立网络连接。当连接时,Amazon Glue 可以访问数据存储中的其他数据库以运行爬网程序或运行 ETL 作业。

以下 JDBC URL 示例显示了多个数据库引擎的语法。

  • 要连接到具有 dev 数据库的 Amazon Redshift 群集数据存储:

    jdbc:redshift://xxx.us-east-1.redshift.amazonaws.com:8192/dev

  • 要连接到具有 employee 数据库的 Amazon RDS for MySQL 数据存储:

    jdbc:mysql://xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:3306/employee

  • 要连接到具有 employee 数据库的 Amazon RDS for PostgreSQL 数据存储:

    jdbc:postgresql://xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:5432/employee

  • 要连接到具有 employee 服务名称的 Amazon RDS for Oracle 数据存储:

    jdbc:oracle:thin://@xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:1521/employee

    Amazon RDS for Oracle 的语法可以遵循以下模式。在这些模式中,将 host(主机)port(端口)service_name(服务_名称)SID 替换为您自己的信息。

    • jdbc:oracle:thin://@host:port/service_name

    • jdbc:oracle:thin://@host:port:SID

  • 要连接到具有 employee 数据库的 Amazon RDS for Microsoft SQL Server 数据存储:

    jdbc:sqlserver://xxx-cluster.cluster-xxx.us-east-1.rds.amazonaws.com:1433;databaseName=employee

    Amazon RDS for SQL Server 的语法可以遵循以下模式:在这些模式中,将 server_nameportdb_name 替换为您自己的信息。

    • jdbc:sqlserver://server_name:port;database=db_name

    • jdbc:sqlserver://server_name:port;databaseName=db_name

  • 要连接到 employee 数据库的 Amazon Aurora PostgreSQL 实例,请指定数据库实例的终端节点、端口和数据库名称:

    jdbc:postgresql://employee_instance_1.xxxxxxxxxxxx.us-east-2.rds.amazonaws.com:5432/employee

  • 要连接到有 employee 数据库的 Amazon RDS for MariaDB 数据存储,请指定数据库实例的端点、端口和数据库名称:

    jdbc:mysql://xxx-cluster.cluster-xxx.aws-region.rds.amazonaws.com:3306/employee

Username

提供有权访问 JDBC 数据存储的用户名。

Password

键入对 JDBC 数据存储具有访问权限的用户名的密码。

端口

键入 JDBC URL 中使用的端口以连接到 Amazon RDS Oracle 实例。只有在为 Amazon RDS Oracle 实例选择 Require SSL connection (需要 SSL 连接) 时会显示此字段。

VPC

选择包含您的数据存储的 Amazon Virtual Private Cloud (VPC) 的名称。Amazon Glue 控制台会列出当前区域的所有 VPC。

子网

选择包含您的数据存储的 VPC 内的子网。Amazon Glue 控制台列出了您的 VPC 中的数据存储的所有子网。

安全组

选择与您的数据存储关联的安全组。Amazon Glue 需要一个或多个安全组且其入站源规则允许 Amazon Glue 进行连接。Amazon Glue 控制台列出了所有被授权对您的 VPC 进行入站访问的安全组。Amazon Glue 将这些安全组与连接到您的 VPC 的子网的弹性网络接口关联。

Amazon Glue 连接 SSL 属性

下面是有关 Amazon Glue 连接的 Require SSL connection (需要 SSL 连接) 属性的详细信息。

如果未选择此选项,则 Amazon Glue 在使用 SSL 加密与数据存储的连接时会忽略失败。有关配置说明,请参阅数据存储的文档。当您选择此选项时,如果 Amazon Glue 不能使用 SSL 进行连接,则开发终端节点中的作业运行、爬网程序或 ETL 语句将失败。

此选项在 Amazon Glue 客户端进行验证。对于 JDBC 连接,Amazon Glue 仅通过 SSL 连接并进行证书和主机名验证。SSL 连接支持适用于:

  • Oracle 数据库

  • Microsoft SQL Server

  • PostgreSQL

  • Amazon Redshift

  • MySQL(仅限 Amazon RDS 实例)

  • Amazon Aurora MySQL(仅限 Amazon RDS 实例)

  • Amazon Aurora PostgreSQL(仅限 Amazon RDS 实例)

  • Kafka,其中包括 Amazon Managed Streaming for Apache Kafka

注意

要使 Amazon RDS Oracle 数据存储能够使用 Require SSL connection (需要 SSL 连接),您必须创建一个选项组并将其附加到 Oracle 实例。

  1. 登录 Amazon Web Services Management Console,然后通过以下网址打开 Amazon RDS 控制台:https://console.aws.amazon.com/rds/

  2. Option group (选项组) 添加到 Amazon RDS Oracle 实例。有关如何在 Amazon RDS 控制台上添加选项组的更多信息,请参阅创建选项组

  3. Option (选项) 添加到 SSL 的选项组。您为 SSL 指定的端口稍后在您为 Amazon RDS Oracle 实例创建 Amazon Glue JDBC 连接 URL 时使用。有关如何在 Amazon RDS 控制台上添加选项的更多信息,请参阅 Amazon RDS 用户指南中的向选项组添加选项。有关 Oracle SSL 选项的更多信息,请参阅 Amazon RDS 用户指南中的 Oracle SSL

  4. 在 Amazon Glue 控制台中,创建到 Amazon RDS Oracle 实例的连接。在连接定义中,选择 Require SSL connection (需要 SSL 连接)。在请求时,输入您在 Amazon RDS Oracle SSL 选项中使用的端口

当为连接选择了 Require SSL connection (需要 SSL 连接) 时,可使用以下其他可选属性。

S3 中的自定义 JDBC 证书

如果您的证书当前用于与本地或云数据库进行 SSL 通信,则可以将该证书用于与 Amazon Glue 数据源或目标的 SSL 连接。输入包含自定义根证书的 Amazon Simple Storage Service(Amazon S3)位置。Amazon Glue 使用此证书建立与数据库的 SSL 连接。Amazon Glue 仅处理 X.509 证书。该证书必须经过 DER 编码,并以 base64 编码 PEM 格式提供。

如果将此字段留空,则使用默认证书。

自定义 JDBC 证书字符串

输入 JDBC 数据库特定的证书信息。此字符串用于域匹配或可分辨名称 (DN) 匹配。对于 Oracle 数据库,此字符串会映射到 tnsnames.ora 文件中安全性部分中的 SSL_SERVER_CERT_DN 参数。对于 Microsoft SQL Server,此字符串将用作 hostNameInCertificate

下面是适用于 Oracle 数据库 SSL_SERVER_CERT_DN 参数的示例。

cn=sales,cn=OracleContext,dc=us,dc=example,dc=com
Kafka 私有 CA 证书位置

如果您拥有当前用于与 Kafka 数据存储进行 SSL 通信的证书,则可以在 Amazon Glue 连接中使用该证书。此选项对于 Kafka 数据存储是必需的,对于 Amazon Managed Streaming for Apache Kafka 数据存储是可选的。输入包含自定义根证书的 Amazon Simple Storage Service(Amazon S3)位置。Amazon Glue 使用此证书建立与 Kafka 数据存储的 SSL 连接。Amazon Glue 仅处理 X.509 证书。该证书必须经过 DER 编码,并以 base64 编码 PEM 格式提供。

Skip certificate validation (跳过证书验证)

选中 Skip certificate validation (跳过证书验证) 复选框,可跳过 Amazon Glue 对自定义证书的验证。如果您选择验证,则 Amazon Glue 会验证证书的签名算法和主题公有密钥算法。如果证书验证失败,则使用该连接的任何 ETL 作业或爬网程序都将失败。

唯一允许的签名算法是 SHA256withRSA、SHA384withRSA 或 SHA512withRSA。对于主题公有密钥算法,密钥长度必须至少为 2048 位。

Kafka 客户端密钥库位置

用于 Kafka 客户端身份验证的客户端密钥库文件的 Amazon S3 位置。路径必须采用 s3://bucket/prefix/filename.jks 的形式。它必须以文件名和 .jks 扩展名结尾。

Kafka 客户端密钥库密码(可选)

用于访问提供的密钥库的密码。

Kafka 客户端密钥密码(可选)

密钥库可以由多个密钥组成,因此这是访问要与 Kafka 服务器端密钥一起使用的客户端密钥的密码。