使用交互式端点的自定义内核映像
您可以为交互式端点自定义 Docker 映像并运行自定义的基本内核映像,以便确保在从 Amazon EMR Studio 运行交互式工作负载时应用程序拥有正确的依赖项。要创建交互式端点并将其连接到自定义 Docker 映像,请执行以下步骤。
注意
您只能覆盖基本映像。您无法添加新的内核映像类型。
-
创建并发布自定义 Docker 映像。基本镜像包含 Spark 运行时,以及随之运行的笔记本内核。要创建映像,您可以按照 如何自定义 Docker 镜像 中的步骤 1 到 4 操作。在步骤 1 中,Docker 文件中的基本映像 URI 必须使用
notebook-spark
来代替spark
。ECR-registry-account
.dkr.ecr.Region
.amazonaws.com/notebook-spark/container-image-tag
有关如何选择 AWS 区域 和容器映像标签的更多信息,请参阅 如何选择基础映像 URI 的详细信息。
-
创建可与自定义映像配合使用的交互式端点。
-
使用以下内容创建 JSON 文件
custom-image-managed-endpoint.json
。此示例使用了 Amazon EMR 发行版 6.9.0。{ "name": "
endpoint-name
", "virtualClusterId": "virtual-cluster-id
", "type": "JUPYTER_ENTERPRISE_GATEWAY", "releaseLabel": "emr-6.9.0-latest
", "executionRoleArn": "execution-role-arn
", "configurationOverrides": { "applicationConfiguration": [ { "classification": "jupyter-kernel-overrides", "configurations": [ { "classification": "python3", "properties": { "container-image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/custom-notebook-python:latest
" } }, { "classification": "spark-python-kubernetes", "properties": { "container-image": "123456789012.dkr.ecr.us-west-2.amazonaws.com/custom-notebook-spark:latest
" } } ] } ] } } -
按如下示例所示,使用该 JSON 文件中指定的配置来创建交互式端点。有关更多信息,请参阅 使用 create-managed-endpoint 命令创建交互式端点。
aws emr-containers create-managed-endpoint --cli-input-json custom-image-managed-endpoint.json
-
-
通过 EMR Studio 连接到交互式端点。有关更多信息和需要完成的步骤,请参阅 AWS Workshop Studio 文档 Amazon EMR on EKS 部分中的 Connecting from Studio
(从 Studio 进行连接)。