Amazon EMR
管理指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

指定 Amazon EMR 托管的安全组和其他安全组

您可以使用 AWS 管理控制台、AWS CLI 或 EMR API 指定安全组。如果您未指定安全组,Amazon EMR 会创建默认安全组。指定其他安全组是可选的。您可以为主实例、核心和任务实例和服务访问(仅私有子网)分配其他安全组。

使用控制台指定安全组

  1. 通过以下网址打开 Amazon EMR 控制台:https://console.amazonaws.cn/elasticmapreduce/

  2. Choose Create cluster, Go to advanced options.

  3. 选择集群的选项,直到到达 Step 4: Security (步骤 4: 安全组)

  4. 选择 EC2 Security Groups (EC2 安全组) 以展开该部分。

    EMR managed security groups (EMR 托管的安全组) 中,默认情况下选择默认托管安全组。如果 Master (主实例)Core & Task (核心和任务实例)Service Access (服务访问)(仅私有子网)的 VPC 中不存在默认值,则 Create (创建) 会显示在关联的安全组名称之前。

  5. 如果使用自定义托管安全组,请从 EMR managed security groups (EMR 托管的安全组) 列表中进行选择。

    如果您选择自定义托管安全组,将显示一条消息,通知您为其他实例选择自定义安全组。您只能对集群使用自定义或默认托管安全组。

  6. (可选)在 Additional security groups (其他安全组) 下,选择铅笔图标,从列表中最多选择四个安全组,然后选择 Assign security groups (分配安全组)。根据需要对每个 Master (主实例)Core & Task (核心和任务实例)Service Access (服务访问) 重复操作。

  7. 选择 Create Cluster (创建集群)

使用 AWS CLI 指定安全组

要使用 AWS CLI 指定安全组,请使用 create-cluster 命令与 --ec2-attributes 选项的以下参数:

参数 描述

EmrManagedMasterSecurityGroup

使用此参数为主实例指定自定义托管安全组。如果指定此参数,则还必须指定 EmrManagedSlaveSecurityGroup。对于私有子网中的集群,还必须指定 ServiceAccessSecurityGroup

EmrManagedSlaveSecurityGroup

使用此参数为核心和任务实例指定自定义托管安全组。如果指定此参数,则还必须指定 EmrManagedMasterSecurityGroup。对于私有子网中的集群,还必须指定 ServiceAccessSecurityGroup

ServiceAccessSecurityGroup

使用此参数为服务访问指定自定义托管安全组,这仅适用于私有子网中的集群。如果指定此参数,还必须指定 EmrManagedMasterSecurityGroup

AdditionalMasterSecurityGroups

使用此参数最多为主实例指定四个其他安全组。

AdditionalSlaveSecurityGroups

使用此参数最多为核心和任务实例指定四个其他安全组。

例 — 指定自定义 Amazon EMR 托管的安全组和其他安全组

以下示例为私有子网中的集群、主实例的多个其他安全组以及核心和任务实例的单个其他安全组指定自定义 Amazon EMR 托管的安全组。

注意

包含了 Linux 行继续符 (\) 以提高可读性。可以在 Linux 命令中删除或使用它们。对于 Windows,请删除它们或将其替换为脱字号 (^)。

aws emr create-cluster --name "ClusterCustomManagedAndAdditionalSGs" \ --release-label emr-emr-5.27.0 --applications Name=Hue Name=Hive \ Name=Pig --use-default-roles --ec2-attributes \ SubnetIds=subnet-xxxxxxxxxxxx,KeyName=myKey,\ ServiceAccessSecurityGroup=sg-xxxxxxxxxxxx,\ EmrManagedMasterSecurityGroup=sg-xxxxxxxxxxxx,\ EmrManagedSlaveSecurityGroup=sg-xxxxxxxxxxx,\ AdditionalMasterSecurityGroups=['sg-xxxxxxxxxxx',\ 'sg-xxxxxxxxxxx','sg-xxxxxxxxxx'],\ AdditionalSlaveSecurityGroups=sg-xxxxxxxxxxx \ --instance-type m5.xlarge

有关更多信息,请参阅 AWS CLI Command Reference 中的 create-cluster