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.
UNGÜLTIGE Rechenumgebung
Möglicherweise haben Sie eine verwaltete Computerumgebung falsch konfiguriert. Wenn Sie dies getan haben, wechselt die Computerumgebung in einen INVALID Zustand und kann keine Stellen zur Stellenausschreibung annehmen. In den folgenden Abschnitten werden die möglichen Ursachen beschrieben und anhand der Ursache eine Problembehandlung durchgeführt.
Wichtig
AWS Batch erstellt und verwaltet mehrere AWS Ressourcen in Ihrem Namen und innerhalb Ihres Kontos, darunter Amazon EC2 Launch Templates, Amazon EC2 Auto Scaling Groups, Amazon EC2 Spot Fleets und Amazon ECS Clusters. Diese verwalteten Ressourcen sind speziell konfiguriert, um einen optimalen Betrieb zu gewährleisten. AWS Batch
Manuelles Ändern dieser Batch-managed Ressourcen kann, sofern nicht ausdrücklich in der AWS Batch
Dokumentation angegeben, zu unerwartetem Verhalten führen, was zu einer INVALID Rechenumgebung, einem suboptimalen Verhalten bei der Instanzskalierung, verzögerter Workload-Verarbeitung oder unerwarteten Kosten führt. Diese manuellen Änderungen können vom Service nicht deterministisch unterstützt werden. AWS Batch Verwenden Sie immer die unterstützten Batch-APIs oder die Batch-Konsole, um Ihre Rechenumgebungen zu verwalten.
Falscher Rollenname oder ARN
Der häufigste Grund dafür, dass eine Rechenumgebung in einen INVALID Status gerät, ist, dass die AWS Batch Service-Rolle oder die Amazon EC2 Spot Fleet-Rolle einen falschen Namen oder Amazon-Ressourcennamen (ARN) hat. Dies ist häufiger bei Computerumgebungen der Fall, die mithilfe der AWS CLI oder der AWS SDKs erstellt werden. Wenn Sie eine Rechenumgebung in der erstellen AWS-Managementkonsole, AWS Batch hilft Ihnen das bei der Auswahl der richtigen Service- oder Spot-Flottenrollen. Nehmen wir jedoch an, Sie geben den Namen oder den ARN manuell ein und geben sie falsch ein. Dann ist es auch die resultierende RechenumgebungINVALID.
Nehmen wir jedoch an, Sie geben den Namen oder ARN für eine IAM-Ressource manuell in einen AWS CLI
Befehl oder Ihren SDK-Code ein. In diesem Fall AWS Batch kann die Zeichenfolge nicht überprüft werden. Stattdessen AWS Batch
muss der falsche Wert akzeptiert und versucht werden, die Umgebung zu erstellen. Wenn AWS Batch die Umgebung nicht erstellt werden kann, wechselt die Umgebung in einen INVALID Zustand, und es werden die folgenden Fehler angezeigt.
Bei einer ungültigen Servicerolle:
CLIENT_ERROR - Not authorized to perform sts:AssumeRole (Service:
AWSSecurityTokenService; Status Code: 403; Error Code: AccessDenied; Request ID:
dc0e2d28-2e99-11e7-b372-7fcc6fb65fe7)
Bei einer ungültigen Spot-Flottenrolle:
CLIENT_ERROR - Parameter: SpotFleetRequestConfig.IamFleetRole is invalid. (Service:
AmazonEC2; Status Code: 400; Error Code: InvalidSpotFleetRequestConfig; Request ID:
331205f0-5ae3-4cea-bac4-897769639f8d) Parameter: SpotFleetRequestConfig.IamFleetRole is
invalid
Eine häufige Ursache für dieses Problem ist das folgende Szenario. Sie geben nur den Namen einer IAM-Rolle an, wenn Sie die AWS CLI oder die AWS SDKs verwenden, und nicht den vollständigen Amazon-Ressourcennamen (ARN). Je nachdem, wie Sie die Rolle erstellt haben, kann der ARN ein aws-service-role Pfadpräfix enthalten. Wenn Sie beispielsweise die AWS Batch
Servicerolle mithilfe der Verfahren in manuell erstellenVerwenden Sie serviceverknüpfte Rollen für AWS Batch, könnte Ihr ARN für die Servicerolle wie folgt aussehen.
arn:aws:iam::123456789012:role/AWSBatchServiceRole
Wenn Sie die Servicerolle heute jedoch im Rahmen des Assistenten zur ersten Ausführung der Konsole erstellt haben, sieht Ihr ARN für die Servicerolle möglicherweise wie folgt aus.
arn:aws:iam::123456789012:role/aws-service-role/AWSBatchServiceRole
Dieses Problem kann auch auftreten, wenn Sie die AWS Batch Service-Level-Richtlinie (AWSBatchServiceRole) an eine Rolle anhängen, die nichts mit Service zu tun hat. In diesem Szenario erhalten Sie beispielsweise möglicherweise eine Fehlermeldung, die der folgenden ähnelt:
CLIENT_ERROR - User: arn:aws:sts::account_number:assumed-role/batch-replacement-role/aws-batch is not authorized to perform:actionon resource ...
Gehen Sie wie folgt vor, um dieses Problem zu beheben.
-
Verwenden Sie eine leere Zeichenfolge für die Servicerolle, wenn Sie die AWS Batch Rechenumgebung erstellen.
-
Geben Sie die Servicerolle im folgenden Format an:
arn:aws:iam::.account_number:role/aws-service-role/batch.amazonaws.com/AWSServiceRoleForBatch
Wenn Sie nur den Namen einer IAM-Rolle angeben, wenn Sie die AWS CLI oder die AWS SDKs verwenden, AWS Batch wird davon ausgegangen, dass Ihr ARN das aws-service-role Pfadpräfix nicht verwendet. Aus diesem Grund empfehlen wir, dass Sie beim Erstellen von Rechenumgebungen den vollständigen ARN für Ihre IAM-Rollen angeben.
Informationen zum Reparieren einer Computerumgebung, die auf diese Weise falsch konfiguriert ist, finden Sie unter. Reparieren Sie eine UNGÜLTIGE Computerumgebung
Reparieren Sie eine UNGÜLTIGE Computerumgebung
Wenn sich eine Computerumgebung in einem INVALID Zustand befindet, aktualisieren Sie sie, um den ungültigen Parameter zu reparieren. Aktualisieren Sie für einen Falscher Rollenname oder ARN die Computerumgebung mit der richtigen Servicerolle.
So Reparieren Sie eine falsch konfigurierte Datenverarbeitungsumgebung
-
Öffnen Sie die AWS Batch Konsole unter https://console.aws.amazon.com/batch/
. -
Wählen Sie in der Navigationsleiste die AWS-Region zu verwendende aus.
-
Wählen Sie im Navigationsbereich Datenverarbeitungs-Umgebungen aus.
-
Wählen Sie auf der Seite „Computerumgebungen“ das Optionsfeld neben der zu bearbeitenden Rechenumgebung aus. Sie müssen eine Computerumgebung auswählen, bevor die Optionen im Menü „Aktionen“ verfügbar sind.
-
Wählen Sie Aktionen und dann Bearbeiten.
-
Wählen Sie auf der Seite „Rechenumgebung aktualisieren“ für die Rolle „Service“ die IAM-Rolle aus, die Sie mit Ihrer Computerumgebung verwenden möchten. Die AWS Batch -Konsole zeigt nur mit der richtigen Vertrauensstellung für Datenverarbeitungsumgebungen an.
Tipp
Anweisungen zum Erstellen einer serviceverknüpften Rolle finden Sie unterVerwenden von Rollen für AWS Batch.
-
Wählen Sie Speichern aus, um Ihre Datenverarbeitungsumgebung zu aktualisieren.