在 Amazon EMR 上建立互動式端點的先決條件 EKS - Amazon EMR

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

在 Amazon EMR 上建立互動式端點的先決條件 EKS

本節說明設定互動式端點的先決條件,讓 EMR Studio 可用來連接EKS叢集EMR上的 Amazon 和執行互動式工作負載。

AWS CLI

按照安裝或更新到最新版本中的步驟 AWS CLI來安裝最新版本的 AWS Command Line Interface (AWS CLI)。

安裝 eksctl

請依照安裝 kubectl 中的步驟來安裝最新版本的 eksctl。如果您的 Amazon EKS 叢集使用 Kubernetes 1.22 版或更新版本,請使用大於 0.117.0 的 eksctl 版本。

Amazon EKS 集群

創建一個 Amazon EKS 群集。EMR在 Amazon 上將叢集註冊為虛擬叢集EKS。以下是此叢集的要求和考量事項。

  • 叢集必須與您的工作EMR室位於相同的 Amazon Virtual Private Cloud (VPC) 中。

  • 叢集必須擁有至少一個私有子網路,以啟動互動端點、連結 Git 型儲存庫以及以私有模式啟動 Application Load Balancer。

  • EMRStudio 和用於註冊虛擬叢集的 Amazon EKS 叢集之間至少必須有一個共同的私有子網路。這可確保互動端點在 Studio 工作區中顯示為選項,並啟用從 Studio 到 Application Load Balancer 的連線。

    您可以選擇兩種方法來連接您的工作室和 Amazon EKS 叢集:

    • 建立 Amazon EKS 叢集,並將其與屬於您 EMR Studio 的子網路產生關聯。

    • 或者,建立 EMR Studio 並為您的 Amazon EKS 叢集指定私有子網路。

  • EMR在EKS互動式端點AMIs上,Amazon 不支援 Amazon EKS 優化ARM的 Amazon Linux。

  • 互動式端點可與使用 Kubernetes 版本最高 1.30 的 Amazon EKS 叢集搭配使用。

  • 僅支援 Amazon EKS 受管節點群組

授予 Amazon EMR 的叢集存取權 EKS

使用授與 Amazon EMR 的叢集存取權中的步驟,授與 Amazon EKS 存EMR取叢集中特定命名空間的存取權限。EKS

在 Amazon EKS 群集IRSA上激活

若要在 Amazon EKS 叢集上啟用服務帳戶的IAM角色 (IRSA),請按照啟用服務帳戶IAM角色 (IRSA) 中的步驟進行操作。

建立IAM工作執行角色

您必須建立IAM角色才能在 Amazon 上在EKS互動式端點EMR上執行工作負載。在本文件中,我們將此IAM角色稱為工作執行角色。這個IAM角色會指派給互動式端點容器和當您使用 EMR Studio 提交工作時所建立的實際執行容器。您需要 Amazon 上的任務執行角色的 Amazon EMR 資源名稱(ARN)EKS。這需要兩個步驟:

授予使用者EMR對 Amazon 的存取權 EKS

提出建立互動式端點請求的IAM實體 (使用者或角色) 也必須具有下列 Amazon EC2 和emr-containers許可。請按照中描述的步驟授授予使用者EMR對 Amazon 的存取權 EKS予這些許可,以允許 Amazon EMR on 建立、管理和刪除EKS將入站流量限制到互動式端點的負載平衡器的安全群組。

下列 emr-containers 許可允許使用者執行基本的互動端點操作:

"ec2:CreateSecurityGroup", "ec2:DeleteSecurityGroup", "ec2:AuthorizeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupIngress", "ec2:RevokeSecurityGroupEgress", "ec2:RevokeSecurityGroupIngress" "emr-containers:CreateManagedEndpoint", "emr-containers:ListManagedEndpoints", "emr-containers:DescribeManagedEndpoint", "emr-containers:DeleteManagedEndpoint"

註冊 Amazon EKS 群集與 Amazon EMR

設定虛擬叢集並將其對應至 Amazon EKS 叢集中要執行任務的命名空間。對於 AWS Fargate僅限叢集,請為EKS虛擬叢集EMR上的 Amazon 和 Fargate 設定檔使用相同的命名空間。

如需在EKS虛擬叢集上設定 Amazon EMR 的相關資訊,請參閱註冊 Amazon EKS 群集與 Amazon EMR

將 AWS Load Balancer 控制器部署到 Amazon EKS 叢集

您的 Amazon EKS 叢集需要 Ap AWS plication Load Balancer。您只需為每個 Amazon EKS 叢集設定一個 Application Load Balancer 器控制器。如需設定 Ap AWS plication Load Balancer 器控制器的相關資訊,請參閱 Amazon EKS 使用者指南中的安裝 AWS Load Balancer 控制器附加元件