在 VPC 中啟動叢集 - Amazon EMR

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

在 VPC 中啟動叢集

當您擁有設定為託管 Amazon EMR 叢集的子網路後,透過指定在建立叢集時關聯子網路識別符來在該子網路中啟動叢集。

注意

Amazon EMR 支援在發行版本 4.2 及更新版本中的私有子網路。

叢集啟動時,Amazon EMR 會根據叢集是在 VPC 私有或公有子網路中啟動來新增安全群組。所有安全群組允許在連接埠 8443 的輸入以與 Amazon EMR 服務通訊,但公有和私有子網路的 IP 地址範圍會有所不同。Amazon EMR 會管理所有這些安全群組,而且可能需要在一段時間內將其他 IP 地址新增至 AWS 範圍。如需詳細資訊,請參閱 使用安全群組控制網路流量

若要在 VPC 中管理叢集,Amazon EMR 會透過此裝置將網路裝置附接至主節點並進行管理。您可以使用 Amazon EC2 API 動作 DescribeInstances 來檢視此裝置。如果您以任何方式修改此裝置,叢集可能會失敗。

注意

我們已重新設計 Amazon EMR 主控台,可讓您更輕鬆地使用。請參閱 Amazon EMR 控制台 以了解舊的和新的主控台體驗之間的差異。

New console
使用新主控台在 VPC 中啟動叢集
  1. 登入 AWS Management Console,然後開啟 Amazon EMR 主控台,網址為 https://console.aws.amazon.com/emr

  2. 在左側導覽窗格中的 EC2 上的 EMR 下,選擇叢集,然後選擇建立叢集

  3. 聯網下,移至虛擬私有雲端 (VPC) 欄位。輸入 VPC 的名稱,或選擇瀏覽以選取您的 VPC。或者,選擇建立 VPC 以建立可用於叢集的 VPC。

  4. 選擇適用於您的叢集的任何其他選項。

  5. 若要啟動您的叢集,請選擇建立叢集

Old console
使用舊主控台在 VPC 中啟動叢集
  1. 導覽至新的 Amazon EMR 主控台,然後從側邊導覽選取切換至舊主控台。如需有關切換至舊主控台時預期情況的詳細資訊,請參閱使用舊主控台

  2. 選擇建立叢集

  3. 選擇前往進階選項

  4. Hardware Configuration (硬體組態) 區段,對於 Network (網路),選取之前建立的 VPC 網路 ID。

  5. 對於 EC2 Subnet (EC2 子網路),選取之前建立的子網路 ID。

    1. 如果已使用 NAT 執行個體和 S3 端點選項適當設定您的私有子網路,它會在子網路名稱和識別符上方顯示 (EMR 就緒)

    2. 如果您的私有子網路中沒有 NAT 執行個體和/或 S3 端點,您可以透過選擇 Add S3 endpoint and NAT instance (新增 S3 端點和 NAT 執行個體)Add S3 endpoint (新增 S3 端點)Add NAT instance (新增 NAT 執行個體) 來這麼做。為 NAT 執行個體和 S3 端點選取所需的選項,然後選擇 Configure (設定)

      重要

      若要從 Amazon EMR 建立 NAT 執行個體,您需要 ec2: CreateRoute、ec2:RevokeSecurityGroupEgressec2:AuthorizeSecurityGroupEgresscloudformation:DescribeStackEventscloudformation:CreateStack許可。

      注意

      為您的 NAT 裝置啟動 Amazon EC2 執行個體會產生額外成本。

  6. 繼續建立叢集。

AWS CLI
若要 VPC 用 AWS CLI
注意

AWS CLI 不提供自動建立 NAT 執行個體並將其連接到您的私有子網路的方法。不過,若要在子網路建立 S3 端點,您可以使用 Amazon VPC CLI 命令。使用此主控台以建立 NAT 執行個體並在私有子網路中啟動叢集。

在設定 VPC 後,您可以使用含 --ec2-attributes 參數的 create-cluster 子命令在其中啟動 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 執行個體設定檔,請先鍵入 aws emr create-default-roles 來建立這些項目,然後再鍵入 create-cluster 子命令。