为虚拟集群创建交互式端点 - Amazon EMR

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

为虚拟集群创建交互式端点

本主题介绍了使用 AWS 命令行界面 (AWS CLI) 创建交互式端点的几种方法,并包括有关可用配置参数的详细信息。

使用 create-managed-endpoint 命令创建交互式端点

指定 create-managed-endpoint 命令中的参数,如下所示。Amaz EMR on on EKS 支持使用亚马逊 6.7.0 及更高EMR版本创建交互式终端节点。

aws emr-containers create-managed-endpoint \ ‐‐type JUPYTER_ENTERPRISE_GATEWAY \ ‐‐virtual‐cluster‐id 1234567890abcdef0xxxxxxxx \ ‐‐name example-endpoint-name \ ‐‐execution-role-arn arn:aws:iam::444455556666:role/JobExecutionRole \ ‐‐release-label emr-6.9.0-latest \ ‐‐configuration-overrides '{ "applicationConfiguration": [{ "classification": "spark-defaults", "properties": { "spark.driver.memory": "2G" } }], "monitoringConfiguration": { "cloudWatchMonitoringConfiguration": { "logGroupName": "log_group_name", "logStreamNamePrefix": "log_stream_prefix" }, "persistentAppUI": "ENABLED", "s3MonitoringConfiguration": { "logUri": "s3://my_s3_log_location" } } }'

有关更多信息,请参阅 用于创建交互式端点的参数

在JSON文件中创建具有指定参数的交互式端点

  1. 创建create-managed-endpoint-request.json文件并为您的终端节点指定所需的参数,如以下JSON文件所示:

    { "name": "MY_TEST_ENDPOINT", "virtualClusterId": "MY_CLUSTER_ID", "type": "JUPYTER_ENTERPRISE_GATEWAY", "releaseLabel": "emr-6.9.0-latest", "executionRoleArn": "arn:aws:iam::444455556666:role/JobExecutionRole", "configurationOverrides": { "applicationConfiguration": [ { "classification": "spark-defaults", "properties": { "spark.driver.memory": "8G" } } ], "monitoringConfiguration": { "persistentAppUI": "ENABLED", "cloudWatchMonitoringConfiguration": { "logGroupName": "my_log_group", "logStreamNamePrefix": "log_stream_prefix" }, "s3MonitoringConfiguration": { "logUri": "s3://my_s3_log_location" } } } }
  2. 使用 create-managed-endpoint 命令和存储在本地或 Amazon S3 上的 create-managed-endpoint-request.json 文件路径。

    aws emr-containers create-managed-endpoint \ ‐‐cli-input-json file://./create-managed-endpoint-request.json ‐‐region AWS-Region

创建交互式端点输出

您应该参阅终端中的以下输出。输出包括新的交互式端点的名称和标识符:

{ "id": "1234567890abcdef0", "name": "example-endpoint-name", "arn": "arn:aws:emr-containers:us-west-2:111122223333:/virtualclusters/444455556666/endpoints/444455556666", "virtualClusterId": "111122223333xxxxxxxx" }

运行aws emr-containers create-managed-endpoint会创建自签名证书,允许 EMR Studio 和交互式端点服务器之间进行HTTPS通信。

如果您运行create-managed-endpoint但尚未完成先决条件,Amazon 会EMR返回一条错误消息,其中包含您必须执行的操作才能继续。

用于创建交互式端点的参数

交互式端点的必需参数

创建交互式端点时,必须指定以下参数:

‐‐type

使用 JUPYTER_ENTERPRISE_GATEWAY。这是唯一支持的类型。

‐‐virtual-cluster-id

您在 Amazon EMR 上注册的虚拟集群的标识符EKS。

‐‐name

交互式端点的描述性名称,可帮助 EMR Studio 用户从下拉列表中进行选择。

‐‐execution-role-arn

您的亚马逊IAM任务执行角色的亚马逊EMR资源名称 (ARN) EKS 是作为先决条件的一部分创建的。

‐‐release-label

用于终端节点的 Amazon EMR 版本的发布标签。例如,emr-6.9.0-latest。EMR在亚马逊 6.7.0 及更高EMR版本中,Amazon on EKS 支持交互式终端节点。

交互式端点的可选参数

或者,创建交互式端点时,还能指定以下参数:

‐‐configuration-overrides

要覆盖应用程序的默认配置,请提供配置对象。您可以使用速记语法来提供配置,也可以在文件中引用配置对象。JSON

配置对象包含分类、属性和可选的嵌套配置。属性由您希望在该文件中覆盖的设置组成。您可以在单个JSON对象中为多个应用程序指定多个分类。在EKS发布时,Amazon EMR 提供的配置分类会有所不同。有关适用于每个 Amaz EMR on 版本的配置分类列表EKS,请参阅Amaz EMR on 正在EKS发布中。除了为每个发行版列出的配置分类外,交互式端点还引入了额外的分类 jeg-config。有关更多信息,请参阅 Jupyter 企业网关 (JEG) 配置选项