設定IAM服務和資源的 Amazon EMR AWS 許可的服務角色 - Amazon EMR

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

設定IAM服務和資源的 Amazon EMR AWS 許可的服務角色

Amazon EMR和 Hadoop 和 Spark 等應用程式需要許可,才能存取其他 AWS 資源並在執行時執行動作。Amazon 中的每個叢集EMR都必須具有 Amazon EC2執行個體設定檔 的服務角色和角色。如需詳細資訊,請參閱 IAM 使用者指南 中的IAM角色使用執行個體設定檔。連接到這些角色IAM的政策提供許可,讓叢集代表使用者與其他 AWS 服務交互操作。

如果您的叢集在 Amazon 中使用自動擴展,則需要額外的角色 Auto Scaling 角色EMR。如果您使用EMR筆記本,則需要EMR筆記本 AWS 的服務角色。

Amazon EMR提供預設角色和預設受管政策,以決定每個角色的許可。受管政策由 建立和維護 AWS,因此會在服務需求變更時自動更新。請參閱 IAM 使用者指南 中的 AWS 受管政策

如果您是第一次在帳戶中建立叢集或筆記本,Amazon 的角色尚EMR不存在。建立角色之後,您可以檢視角色、附加到這些角色的政策,以及IAM主控台 () 中政策允許或拒絕的許可https://console.aws.amazon.com/iam/。您可以為 Amazon 指定預設角色EMR以建立和使用,您可以在建立叢集以自訂許可時建立自己的角色並個別指定這些角色,也可以指定使用 建立叢集時要使用的預設角色 AWS CLI。如需詳細資訊,請參閱使用 Amazon 自訂IAM角色 EMR

修改身分型政策,以允許傳遞 Amazon 的服務角色 EMR

Amazon EMR完整許可預設受管政策包含iam:PassRole安全組態,包括下列項目:

  • iam:PassRole 許可僅適用於特定的預設 Amazon EMR角色。

  • iam:PassedToService 條件,可讓您僅將政策與指定的 AWS 服務搭配使用,例如 elasticmapreduce.amazonaws.com.rproxy.goskope.comec2.amazonaws.com

您可以在IAM主控台中檢視 A mazonEMRFullAccessPolicy_v2mazonEMRServicePolicy_v2 政策的JSON版本。建議您建立具有 v2 受管政策的新叢集。

服務角色摘要

下表列出與 Amazon 相關聯的IAM服務角色,EMR以供快速參考。

函式 預設角色 描述 預設受管政策

Amazon 的服務角色 EMR(EMR 角色)

EMR_DefaultRole_V2

允許 Amazon 在佈建資源和執行 AWS 服務層級動作時代表您EMR呼叫其他服務。所有叢集皆需要這個角色。

AmazonEMRServicePolicy_v2

重要

請求 Spot 執行個體需要服務連結角色。如果此角色不存在,Amazon EMR服務角色必須具有建立該角色的許可,否則會發生許可錯誤。如果計劃請求 Spot 執行個體,您必須更新此政策,以包含允許建立此服務連結角色的陳述式。如需詳細資訊,請參閱 Amazon EC2使用者指南 中的 Spot 執行個體請求Amazon 的服務角色 EMR(EMR 角色)的服務連結角色。 https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html#service-linked-roles-spot-instance-requests

叢集EC2執行個體的服務角色 (EC2執行個體設定檔)

EMR_EC2_DefaultRole

在叢集執行個體 Hadoop 生態系統之上執行的應用程式程序,會在呼叫其他服務時使用此角色 AWS 。若要使用 存取 Amazon S3 中的資料EMRFS,您可以根據 Amazon S3 中的資料位置指定要擔任的不同角色。例如,多個團隊可存取單一 Amazon S3 資料「儲存帳戶」。如需詳細資訊,請參閱設定 Amazon S3 EMRFS請求IAM的角色。所有叢集皆需要這個角色。

AmazonElasticMapReduceforEC2Role。如需詳細資訊,請參閱 叢集EC2執行個體的服務角色 (EC2執行個體設定檔)

Amazon 中自動擴展的服務角色 EMR(Auto Scaling 角色)

EMR_AutoScaling_DefaultRole

可允許其他動作來動態擴展環境。只有在 Amazon 中使用自動擴展的叢集才需要EMR。如需詳細資訊,請參閱使用自動擴展搭配 Amazon 中執行個體群組的自訂政策 EMR

AmazonElasticMapReduceforAutoScalingRole。如需詳細資訊,請參閱 Amazon 中自動擴展的服務角色 EMR(Auto Scaling 角色)

EMR Notebook 的服務角色

EMR_Notebooks_DefaultRole

提供EMR筆記本存取其他 AWS 資源和執行動作所需的許可。只有在使用EMR筆記本時才需要。

AmazonElasticMapReduceEditorsRole。如需詳細資訊,請參閱 EMR Notebook 的服務角色

根據預設,也會連接 S3FullAccessPolicy。以下是此政策的內容。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": "*" } ] }

服務連結角色

AWSServiceRoleForEMRCleanup

Amazon EMR會自動建立服務連結角色。如果 Amazon 的服務EMR失去清除 Amazon EC2 資源的能力,Amazon EMR可以使用此角色進行清除。如果叢集使用 Spot 執行個體,連接到 Amazon 的服務角色 EMR(EMR 角色) 的許可政策必須允許建立服務連結角色。如需詳細資訊,請參閱使用 Amazon 的服務連結角色 EMR

AmazonEMRCleanupPolicy