为什么 AWS EMR 需要 2 个不同的安全组用于主节点和 Core/Task 节点?
Why does AWS EMR require 2 different security groups for Master and Core/Task nodes?
我正在设置 EMR 作业,发现我必须指定 Master 和 Core/Task 特定安全组。有2个有什么意义?如果我在 client
模式下 运行 - 我将只使用 Master 安全组。而且我相信如果我 运行 cluster
模式下的 EMR 作业它应该只利用 core/task 的安全组,这不正确吗?
至少这是我的理解,因为当我在 client
或 cluster
模式之间进行选择时,它会告诉我:
Run your driver on a slave node (cluster mode) or on the master node as an external client (client mode).
根据Working With Amazon EMR-Managed Security Groups:
主节点上的安全组允许:
- 来自其他 Amazon EMR 集群的主节点的通信
- 来自核心节点和任务节点的通信
- 来自 AWS 集群管理器的通信以控制集群
Core/Task 节点 上的安全组允许:
- 来自其他核心和任务节点的通信
- 来自主节点的通信
通常,主节点上的安全组也会打开,以便您可以直接连接它(例如,运行 命令行 Hive)。
对 Core/Task 节点的访问完全通过主节点完成。任何提交的作业都会转到主节点,然后转到 Core/Task 节点。
我正在设置 EMR 作业,发现我必须指定 Master 和 Core/Task 特定安全组。有2个有什么意义?如果我在 client
模式下 运行 - 我将只使用 Master 安全组。而且我相信如果我 运行 cluster
模式下的 EMR 作业它应该只利用 core/task 的安全组,这不正确吗?
至少这是我的理解,因为当我在 client
或 cluster
模式之间进行选择时,它会告诉我:
Run your driver on a slave node (cluster mode) or on the master node as an external client (client mode).
根据Working With Amazon EMR-Managed Security Groups:
主节点上的安全组允许:
- 来自其他 Amazon EMR 集群的主节点的通信
- 来自核心节点和任务节点的通信
- 来自 AWS 集群管理器的通信以控制集群
Core/Task 节点 上的安全组允许:
- 来自其他核心和任务节点的通信
- 来自主节点的通信
通常,主节点上的安全组也会打开,以便您可以直接连接它(例如,运行 命令行 Hive)。
对 Core/Task 节点的访问完全通过主节点完成。任何提交的作业都会转到主节点,然后转到 Core/Task 节点。