本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
VPC 使用 Amazon 在 中啟動叢集 EMR
將子網路設定為託管 Amazon EMR叢集之後,請在建立叢集時指定相關聯的子網路識別符,在該子網路中啟動叢集。
Amazon EMR支援 4.2 版及更高版本的私有子網路。
叢集啟動時,Amazon 會根據叢集是否在VPC私有或公有子網路中啟動,來EMR新增安全群組。所有安全群組都允許連接埠 8443 的輸入與 Amazon EMR服務通訊,但公有和私有子網路的 IP 地址範圍有所不同。Amazon 會EMR管理所有這些安全群組,而且可能需要在一段時間內將額外的 IP 地址新增至 AWS 範圍。如需詳細資訊,請參閱使用 Amazon EMR叢集的安全群組控制網路流量。
若要管理 上的叢集VPC,Amazon 會將網路裝置EMR連接至主節點,並透過此裝置管理它。您可以使用 Amazon EC2API動作 來檢視此裝置DescribeInstances
。如果您以任何方式修改此裝置,叢集可能會失敗。
- Console
-
VPC 使用主控台在 中啟動叢集
-
登入 AWS Management Console,並在 https://console.aws.amazon.com/emr 開啟 Amazon EMR主控台。
-
在左側導覽窗格中的 EMR EC2下,選擇叢集,然後選擇建立叢集。
-
在聯網下,前往虛擬私有雲端 (VPC) 欄位。輸入 的名稱VPC,或選擇瀏覽以選取您的 VPC。或者,選擇建立VPC以建立VPC可用於叢集的 。
-
選擇適用於您的叢集的任何其他選項。
-
若要啟動您的叢集,請選擇建立叢集。
- AWS CLI
-
VPC 使用 啟動叢集至 AWS CLI
AWS CLI 不提供自動建立NAT執行個體並將其連接至私有子網路的方法。不過,若要在您的子網路中建立 S3 端點,您可以使用 Amazon VPCCLI命令。使用 主控台在私有子網路中建立NAT執行個體和啟動叢集。
設定 VPC 之後,您可以使用 create-cluster
子命令搭配 --ec2-attributes
參數來啟動其中的 Amazon EMR叢集。使用 --ec2-attributes
參數來指定叢集的VPC子網路。
-
若要在特定子網路中建立叢集,請輸入下列命令,myKey
將 取代為 Amazon EC2金鑰對的名稱,並將 取代77XXXX03
為子網路 ID。
aws emr create-cluster --name "Test cluster"
--release-label emr-4.2.0
--applications Name=Hadoop
Name=Hive
Name=Pig
--use-default-roles --ec2-attributes KeyName=myKey
,SubnetId=subnet-77XXXX03
--instance-type m5.xlarge
--instance-count 3
如果您在未使用 --instance-groups
參數的情況下指定執行個體計數,即會啟動單一主節點,且剩餘執行個體會以核心節點的形式啟動。所有節點都會使用命令中指定的執行個體類型。
如果您先前尚未建立預設 Amazon EMR服務角色和EC2執行個體描述檔,請在輸入create-cluster
子命令之前輸入 aws emr create-default-roles
來建立這些角色和執行個體描述檔。
確保 上EMR叢集的可用 IP 地址 EC2
為了確保啟動時可用可用 IP 地址足夠的EC2子網路,子網路選擇會檢查 IP 可用性。其 建立程序使用具有必要 IP 地址計數的子網路,以視需要啟動核心節點、主要節點和任務節點,即使初始建立時,也會建立叢集的核心節點。 會EMR檢查在建立期間啟動主要節點和任務節點所需的 IP 地址數目,以及分別計算啟動核心節點所需的 IP 地址數目。所需的主執行個體和任務執行個體或節點數量下限由 Amazon 自動決定EMR。
如果 中沒有VPC足夠IPs容納必要節點的子網路,則會傳回錯誤,而且不會建立叢集。
在大多數部署案例中,核心節點、主要節點和任務節點的每次啟動都有時間差異。此外,多個叢集可以共用子網路。在這些情況下,IP 地址可用性可能會波動,而後續的任務節點啟動可能會受到可用 IP 地址的限制。