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

步骤 3:允许从客户端到集群的 SSH 连接

安全组充当虚拟防火墙以控制至您的集群的入站和出站流量。当您创建第一个集群时,Amazon EMR 会创建与主实例关联的默认 Amazon EMR 托管安全组 ElasticMapReduce-master 以及与核心节点和任务节点关联的安全组 ElasticMapReduce-slave

警告

公有子网中主实例的默认 EMR 托管安全组 ElasticMapReduce-master 预配置了一个规则,该规则允许端口 22 上来自所有来源 (IPv4 0.0.0.0/0) 的入站流量。这是为了简化到主节点的初始 SSH 客户端连接。我们强烈建议您编辑此入站规则,以限制流量仅来自可信的来源或指定旨在限制访问的自定义安全组。

修改安全组对于完成教程并非必需的,但我们建议您不要允许来自所有来源的入站流量。此外,如果另一个用户根据建议编辑了 ElasticMapReduce-master 安全组来消除此规则,则您无法在后续步骤中使用 SSH 来访问集群。有关安全组的更多信息,请参阅 Amazon VPC 用户指南 中的使用安全组控制网络流量您的 VPC 的安全组

删除入站规则,此规则允许将 SSH 用于 ElasticMapReduce-master 安全组来进行公共访问

以下过程假设之前未编辑过 ElasticMapReduce-master 安全组。此外,要编辑安全组,您必须作为以下身份登录到 AWS:根用户或允许为集群所在的 VPC 管理安全组的 IAM 委托人。有关更多信息,请参阅 IAM 用户指南 中的 更改 IAM 用户的权限和允许管理 EC2 安全组的示例策略

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

  2. 选择 Clusters

  3. 选择集群的 Name (名称)

  4. Security and access (安全与访问) 下,选择 Security groups for Master (主节点的安全组) 链接。

    通过 EMR 集群状态编辑安全组。
  5. 从列表中选择 ElasticMapReduce-master

  6. 依次选择入站编辑

  7. 查找带有以下设置的规则,并选择 x 图标以删除它:

    • 类型

      SSH

    • 端口

      22

    • 自定义 0.0.0.0/0

  8. 滚动到规则底部并选择 Add Rule (添加规则)

  9. 对于 Type (类型),选择 SSH

    这会自动输入 TCP(对于 Protocol (协议))和 22(对于 Port Range (端口范围))。

  10. 对于源,选择 My IP (我的 IP)

    这会自动将您的客户端计算机的 IP 地址添加为源地址。或者,您可以添加一系列Custom (自定义)可信客户端 IP 地址,然后选择 Add rule (添加规则) 来创建针对其他客户端的其他规则。在许多网络环境中,IP 地址是动态分配的,因此您可能需要定期编辑安全组规则以更新可信客户端的 IP 地址。

  11. 选择 Save

  12. (可选)从列表中选择 ElasticMapReduce-slave 并重复上述步骤以允许从可信客户端对核心和任务节点执行 SSH 客户端访问。