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 an EMR
Möglicherweise möchten Sie die IAM Servicerollen und -berechtigungen anpassen, um die Rechte Ihren Sicherheitsanforderungen entsprechend einzuschrä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 verfügen, um mit Rollen und Richtlinien arbeiten zu können. Weitere Informationen finden Sie unter Benutzern und Gruppen gestatten, Rollen zu erstellen und zu ändern.
Wenn Sie eine benutzerdefinierte EMR Rolle für erstellenEC2, folgen Sie dem grundlegenden Arbeitsablauf, der automatisch ein Instanzprofil mit demselben Namen erstellt. Amazon EC2 ermöglicht es Ihnen, Instance-Profile und Rollen mit unterschiedlichen Namen zu erstellen, Amazon unterstützt diese Konfiguration jedoch EMR 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 finden Sie unter Verwaltete Richtlinien und Inline-Richtlinien im IAMBenutzerhandbuch undGeben Sie beim Erstellen eines Clusters benutzerdefinierte IAM Rollen an.
Weitere Informationen zum Arbeiten mit IAM Rollen finden Sie in den folgenden Themen im IAMBenutzerhandbuch:
Geben Sie beim Erstellen eines Clusters benutzerdefinierte IAM Rollen an
Sie geben die Servicerolle für Amazon EMR und die Rolle für das EC2 Amazon-Instance-Profil an, wenn Sie einen Cluster erstellen. Der Benutzer, der Cluster erstellt, benötigt Berechtigungen zum Abrufen und Zuweisen von Rollen zu Amazon EMR und EC2 Instances. Andernfalls tritt der EC2 Fehler „Ein Konto ist nicht zum Anrufen autorisiert“ auf. Weitere Informationen finden Sie unter Benutzern und Gruppen gestatten, Rollen zu erstellen und zu ändern.
Mit der Konsole benutzerdefinierte Rollen angeben
Wenn Sie einen Cluster erstellen, können Sie mithilfe der erweiterten Optionen eine benutzerdefinierte Servicerolle für AmazonEMR, eine benutzerdefinierte Rolle für das EC2 Instance-Profil und eine benutzerdefinierte Auto Scaling Scaling-Rolle angeben. Wenn Sie Quick Options verwenden, werden die Standard-Servicerolle und die Standardrolle für das EC2 Instance-Profil angegeben. Weitere Informationen finden Sie unter IAMVon Amazon verwendete Servicerollen EMR.
Verwenden Sie die AWS CLI , um benutzerdefinierte Rollen anzugeben
Sie können eine Servicerolle für Amazon EMR und eine Servicerolle für EC2 Cluster-Instances explizit mithilfe von Optionen mit dem create-cluster
Befehl von angeben AWS CLI. Verwenden Sie die Option --service-role
, um die Servicerolle anzugeben. Verwenden Sie das InstanceProfile
Argument der --ec2-attributes
Option, 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 mit dem zu spezifizieren AWS CLI
-
Der folgende Befehl spezifiziert die benutzerdefinierte Servicerolle:
MyCustomServiceRoleForEMR
, und eine benutzerdefinierte Rolle für das EC2 Instanzprofil,MyCustomServiceRoleForClusterEC2Instances
, beim Starten eines Clusters. In diesem Beispiel wird die EMR Standardrolle von Amazon verwendet.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-label
emr-7.3.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 und die Rolle für das EC2 Instance-Profil an, das in der config
Datei für definiert ist AWS CLI.
Das folgende Beispiel zeigt den Inhalt einer config
Datei für AWS CLI die angegebenen benutzerdefinierten Rollen für AmazonEMR. Mit dieser Konfigurationsdatei wird der Cluster, wenn die --use-default-roles
Option angegeben ist, mit dem MyCustomServiceRoleForEMR
and MyCustomServiceRoleForClusterEC2Instances
. Standardmäßig gibt die config
Datei den Standard service_role
als AmazonElasticMapReduceRole
und den Standard instance_profile
als anEMR_EC2_DefaultRole
.
[default] output = json region = us-west-1 aws_access_key_id =
myAccessKeyID
aws_secret_access_key =mySecretAccessKey
emr = service_role =MyCustomServiceRoleForEMR
instance_profile =MyCustomServiceRoleForClusterEC2Instances