Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Passen Sie IAM-Rollen mit Amazon EMR an
Sie können die IAM-Servicerollen und -Berechtigungen anpassen, um Rechte entsprechend Ihren Sicherheitsanforderungen zu beschränken. Zum Anpassen von Berechtigungen empfehlen wir, dass Sie neue Rollen und Richtlinien erstellen. Beginnen Sie mit den Berechtigungen in den verwalteten Richtlinien für die Standardrollen (beispielsweise AmazonElasticMapReduceforEC2Role und AmazonElasticMapReduceRole). Kopieren Sie anschließend die Inhalte in die neuen Richtlinienanweisungen, modifizieren Sie die Berechtigungen entsprechend und fügen Sie die geänderten Richtlinien zu den von Ihnen erstellten Rollen hinzu. Sie müssen über die entsprechenden IAM-Berechtigungen für die Arbeit mit Rollen und Richtlinien verfügen. Weitere Informationen finden Sie unter Benutzern und Gruppen gestatten, Rollen zu erstellen und zu ändern.
Wenn Sie eine benutzerdefinierte EMR-Rolle für EC2 erstellen, folgen Sie dem grundlegenden Workflow, der automatisch ein Instance-Profil mit demselben Namen erstellt. Amazon EC2 ermöglicht es Ihnen, Instance-Profile und Rollen mit unterschiedlichen Namen zu erstellen, aber Amazon EMR unterstützt diese Konfiguration nicht und führt zu einem Fehler „Ungültiges Instance-Profil“, wenn Sie den Cluster erstellen.
Wichtig
Eingebundene Richtlinien werden nicht automatisch aktualisiert, wenn sich Serviceanforderungen ändern. Beachten Sie beim Erstellen und Anhängen von Inline-Richtlinien, dass es zu Serviceaktualisierungen kommen kann, die plötzlich zu Berechtigungsfehlern führen. Weitere Informationen hierzu finden Sie unter Verwaltete Richtlinien und eingebundene Richtlinien im IAM-Benutzerhandbuch und Angabe benutzerdefinierter IAM-Rollen beim Erstellen eines Clusters.
Weitere Informationen über die Arbeit mit IAM-Rollen finden Sie in den folgenden Themen im IAM-Benutzerhandbuch:
Angabe benutzerdefinierter IAM-Rollen beim Erstellen eines Clusters
Sie geben die Servicerolle für Amazon EMR und die Rolle für das Amazon-EC2-Instance-Profil an, wenn Sie einen Cluster erstellen. Der Benutzer, der Cluster erstellt, benötigt Berechtigungen, um Rollen abzurufen und sie Amazon EMR und den EC2-Instances zuzuweisen. Andernfalls tritt der Fehler Benutzerkonto ist nicht zum Aufruf von EC2 autorisiert auf. Weitere Informationen finden Sie unter Benutzern und Gruppen gestatten, Rollen zu erstellen und zu ändern.
Mit der Konsole benutzerdefinierte Rollen angeben
Beim Erstellen eines Clusters können Sie eine benutzerdefinierte Servicerolle für Amazon EMR, eine benutzerdefinierte Rolle für das EC2-Instance-Profil und eine benutzerdefinierte Auto-Scaling-Rolle in Erweiterte Optionen angeben. Wenn Sie Quick options (Schnelloptionen) verwenden, werden die Service-Standardrolle und die Standardrolle für das EC2-Instance-Profil angegeben. Weitere Informationen finden Sie unter Von Amazon EMR verwendete IAM-Servicerollen.
Verwenden Sie die, AWS CLI um benutzerdefinierte Rollen anzugeben
Sie können eine Servicerolle für Amazon EMR und eine create-cluster Servicerolle für EC2 Instance Cluster explizit mithilfe von Optionen mit dem -Befehl in der AWS CLI angeben. Verwenden Sie die Option --service-role, um die Servicerolle anzugeben. Verwenden Sie das Argument InstanceProfile der Option --ec2-attributes, um die Rolle für das EC2-Instance-Profil anzugeben.
Die Auto Scaling-Rolle wird einer separaten Option angegeben, --auto-scaling-role. Weitere Informationen finden Sie unter Verwenden der automatischen Skalierung mit einer benutzerdefinierten Richtlinie für Instanzgruppen in Amazon EMR.
Um benutzerdefinierte IAM-Rollen anzugeben, verwenden Sie AWS CLI
-
Der folgende Befehl gibt die benutzerdefinierte Servicerolle an,
MyCustomServiceRoleForEMR, und eine benutzerdefinierte Rolle für das EC2-Instance-Profil,MyCustomServiceRoleForClusterEC2Instances, wenn Sie einen Cluster starten. Dieses Beispiel verwendet die Amazon-EMR-Standardrolle.Anmerkung
Linux-Zeilenfortsetzungszeichen (\) sind aus Gründen der Lesbarkeit enthalten. Sie können entfernt oder in Linux-Befehlen verwendet werden. Entfernen Sie sie unter Windows oder ersetzen Sie sie durch ein Caret-Zeichen (^).
aws emr create-cluster --name "Test cluster" --release-labelemr-7.12.0\ --applications Name=Hive Name=Pig --service-roleMyCustomServiceRoleForEMR\ --ec2-attributes InstanceProfile=MyCustomServiceRoleForClusterEC2Instances,\ KeyName=myKey --instance-type m5.xlarge --instance-count 3
Sie können diese Optionen verwenden, um Standardrollen explizit anzugeben, statt die Option --use-default-roles zu verwenden. Die --use-default-roles-Option gibt die Servicerolle an sowie die Rolle für das EC2-Instance-Profil, das in der config-Datei für die AWS CLI definiert ist.
Das folgende Beispiel zeigt den Inhalt einer config Datei für AWS CLI die spezifizierten benutzerdefinierten Rollen für Amazon EMR. Mit dieser Konfigurationsdatei wird der Cluster, wenn die --use-default-roles-Option angegeben ist, mit dem MyCustomServiceRoleForEMR und MyCustomServiceRoleForClusterEC2Instances erstellt. Standardmäßig gibt die config-Datei die standardmäßige service_role als AmazonElasticMapReduceRole und das standardmäßige instance_profile als EMR_EC2_DefaultRole an.
[default] output = json region = us-west-1 aws_access_key_id =myAccessKeyIDaws_secret_access_key =mySecretAccessKeyemr = service_role =MyCustomServiceRoleForEMRinstance_profile =MyCustomServiceRoleForClusterEC2Instances