管理虚拟集群 - Amazon EMR

管理虚拟集群

虚拟集群是 Amazon EMR 注册的 Kubernetes 命名空间。您可以创建、描述、列出和删除虚拟集群。它们不会消耗您系统中的任何额外资源。一个虚拟集群映射到一个 Kubernetes 命名空间。鉴于这种关系,您可以按照对 Kubernetes 命名空间进行建模的方式对虚拟集群进行建模,来满足您的需求。请参阅 Kubernetes 概念概览文档中可能的使用案例。

要在 Amazon EKS 集群上使用 Kubernetes 命名空间注册 Amazon EMR,您需要 EKS 集群的名称以及为运行您的工作负载而设置的命名空间。Amazon EMR 中的这些注册集群称为虚拟集群,因为它们不管理物理计算或存储,而是指向计划工作负载的 Kubernetes 命名空间。

注意

在创建虚拟集群之前,您必须首先完成设置 Amazon EMR on EKS中的步骤 1-8。

创建虚拟集群

运行以下命令,通过使用 EKS 集群上的命名空间注册 Amazon EMR 来创建虚拟集群。用您为虚拟集群提供的名称来替换 virtual_cluster_name。使用 EKS 集群的名称来替换 eks_cluster_name。使用您要注册 Amazon EMR 的命名空间来替换 namespace_name

aws emr-containers create-virtual-cluster \ --name virtual_cluster_name \ --container-provider '{ "id": "eks_cluster_name", "type": "EKS", "info": { "eksInfo": { "namespace": "namespace_name" } } }'

或者,您可以创建包含虚拟集群所需参数的 JSON 文件,如以下示例所示。

{ "name": "virtual_cluster_name", "containerProvider": { "type": "EKS", "id": "eks_cluster_name", "info": { "eksInfo": { "namespace": "namespace_name" } } } }

然后使用 JSON 文件路径运行以下 create-virtual-cluster 命令。

aws emr-containers create-virtual-cluster \ --cli-input-json file://./create-virtual-cluster-request.json
注意

要验证虚拟集群是否成功创建,请通过运行 list-virtual-clusters 命令或转到 Amazon EMR 控制台中的 Virtual clusters (虚拟集群) 页面,以查看虚拟集群状态。

列出虚拟集群

运行以下命令来查看虚拟集群的状态。

aws emr-containers list-virtual-clusters

描述虚拟集群

运行以下命令以获取有关虚拟集群的详细信息,例如命名空间、状态和注册日期。用您的虚拟集群 ID 来替换 123456

aws emr-containers describe-virtual-cluster --id 123456

删除虚拟集群

运行以下命令来删除虚拟集群。用您的虚拟集群 ID 来替换 123456

aws emr-containers delete-virtual-cluster --id 123456

虚拟集群状态

下表描述了虚拟集群的四种可能状态。

State 描述

RUNNING

虚拟集群处于 RUNNING 状态。

TERMINATING

正在请求终止虚拟集群。

TERMINATED

已完成请求的终止。

ARRESTED

由于权限不足,请求的终止失败。