创建在 Amazon EC2 上托管的笔记本服务器 - AWS Glue
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建在 Amazon EC2 上托管的笔记本服务器

您可以在本地计算机上安装 Apache Zeppelin 笔记本,并使用它在开发终端节点上调试和测试 ETL 脚本。或者,您可以在 Amazon EC2 实例上托管 Zeppelin 笔记本服务器。有关更多信息,请参阅创建与开发终端节点相关联的笔记本服务器

在 AWS Glue Create notebook server (创建笔记本服务器) 窗口中,添加创建笔记本服务器以使用 Apache Zeppelin 笔记本所需的属性。

注意

对于您创建的任何与开发终端节点关联的 notebook 服务器,都可以对其进行管理。因此,如果您删除开发终端节点以删除笔记本服务器,您必须在 AWS CloudFormation 控制台上删除 AWS CloudFormation 堆栈。

重要

您必须在执行以下操作的 Amazon EC2 实例上运行脚本,然后才能使用在 Amazon EC2 上托管的笔记本服务器:

  • 设置 Zeppelin 笔记本密码。

  • 设置笔记本服务器和开发终端节点之间的通信。

  • 验证或生成安全套接字层 (SSL) 证书以访问 Zeppelin 笔记本。

有关更多信息,请参阅创建与开发终端节点相关联的笔记本服务器

您需要提供以下属性:

CloudFormation 堆栈名称

您在开发终端节点上的 AWS CloudFormation 堆栈中创建的笔记本的名称。名称前缀为 aws-glue-。这款笔记本在 Amazon EC2 实例。Zeppelin HTTP 服务器在可使用 SSH 隧道命令访问的公有端口 443 或 localhost 端口 8080 上启动。

IAM 角色

与 Amazon EC2 实例配置文件完全匹配的、与 Amazon EC2 具有信任关系的角色。在 IAM 控制台中创建角色。选择 亚马逊EC2,并附上笔记本的策略,如 AWSGlueServiceNotebookRoleDefault。有关更多信息,请参阅 步骤 5: 为笔记本服务器创建 IAM 角色.

有关实例配置文件的更多信息,请使用实例配置文件

EC2 密钥对

用于访问托管笔记本服务器的 Amazon EC2 实例的 Amazon EC2 密钥。您可以在 Amazon EC2 控制台 (https://console.amazonaws.cn/ec2/) 上创建密钥对。保存密钥文件供以后使用。 有关更多信息,请参阅 Amazon EC2 密钥对

将公有 IP 地址附加到笔记本服务器 EC2 实例

选择此选项来附加可用于从 Internet 访问笔记本服务器的公有 IP。您选择公有还是私有子网是决定选择此选项时的一个因素。在公有子网中,笔记本服务器需要公有 IP 来访问 Internet。如果您的笔记本服务器在私有子网中,并且您不需要公有 IP,请不要选择此选项。但是,您的笔记本服务器仍需要通过 NAT 网关等路由到 Internet。

笔记本用户名

用于访问 Zeppelin 笔记本的用户名。默认值为 admin

笔记本 S3 路径

笔记本状态的存储位置。的 Amazon S3 Zeppelin笔记本的路径必须遵循以下格式: s3://bucket-name/username。子文件夹不能包含在路径中。默认值为 s3://aws-glue-notebooks-account-id-region/notebook-username

子网

您可与笔记本服务器一起使用的可用子网。星号 (*) 表示该子网可从 Internet 访问。子网必须通过互联网网关(IGW)、NAT网关或VPN连接到互联网。 有关更多信息,请参阅针对开发终端节点设置您的环境

安全组

您可与笔记本服务器一起使用的可用安全组。安全组必须具有 HTTPS (端口 443) 和 SSH (端口 22) 的入站规则。确保规则的来源是 0.0.0.0/0 或连接到笔记本的机器的 IP 地址。

S3 AWS KMS 密钥

用于Zeppelin笔记本存储客户端KMS加密的密钥 Amazon S3。 此字段为可选项。通过选择 AWS KMS 密钥启用对 Amazon S3 的访问,或者选择 Enter a key ARN (输入密钥 ARN) 并提供密钥的 Amazon 资源名称 (ARN)。在表格中键入ARN arn:aws:kms:region:account-id:key/key-id。您还可以以密钥别名的形式提供ARN,例如 arn:aws:kms:region:account-id:alias/alias-name.

自定义 AMI ID

加密的 Amazon Elastic Block Storage (EBS) EC2 实例的自定义 Amazon 系统映像 (AMI) ID。此字段为可选项。通过选择 AMI ID 提供 AMI ID,或者选择 Enter AMI ID (输入 AMI ID) 并键入自定义 AMI ID。有关如何加密笔记本服务器存储的更多信息,请参阅加密和 AMI 副本

笔记本服务器标签

AWS CloudFormation 堆栈始终是用密钥 aws-glue-dev-endpoint 以及开发终端节点的名称的值标记的。您可以向 AWS CloudFormation 堆栈添加多个标签。

EC2 实例

为托管笔记本而创建的 Amazon EC2 实例的名称。它链接到 Amazon EC2 控制台 (https://console.amazonaws.cn/ec2/),在其中实例是用密钥 aws-glue-dev-endpoint 以及开发终端节点的名称的值标记的。

CloudFormation 堆栈

用于创建笔记本服务器的 AWS CloudFormation 堆栈的名称。

SSH 到 EC2 服务器命令

在终端窗口中键入此命令,以连接到正运行笔记本服务器的 Amazon EC2 实例。此命令中显示的 Amazon EC2 地址可能是公有地址,也可能是私有地址,具体取决于您是否已选择将公有 IP 地址附加到笔记本服务器 EC2 实例

复制证书

示例 scp 命令用于将设置 Zeppelin 笔记本服务器所需的密钥存储复制到托管笔记本服务器的 Amazon EC2 实例。从终端窗口在 Amazon EC2 私有密钥所在的目录中运行命令。访问 Amazon EC2 实例的密钥是 -i 选项的参数。您提供 path-to-keystore-file。开发端点专用SSH密钥在 Amazon EC2 服务器位于命令的剩余部分。

HTTPS URL

完成笔记本服务器的设置后,在浏览器中键入此 URL 以使用 HTTPS 连接到您的笔记本。