Fehlerbehebung bei Amazon ECS Service Connect mit gemeinsam genutzten AWS Cloud Map-Namespaces
Verwenden Sie die folgenden Informationen, um Probleme mit gemeinsam genutzten AWS Cloud Map-Namespaces und Service Connect zu beheben. Weitere Informationen zum Auffinden von Fehlermeldungen finden Sie unter Amazon-ECS-Fehlerbehebung.
Fehlermeldungen im Zusammenhang mit Berechtigungsproblemen werden angezeigt, wenn Berechtigungen fehlen oder der Zugriff auf den Namespace gesperrt wurde.
Wichtig
Sie müssen die AWSRAMPermissionCloudMapECSFullPermission-verwaltete Berechtigung verwenden, um den Namespace gemeinsam zu nutzen, damit Service Connect ordnungsgemäß mit dem Namespace funktioniert.
Die Fehlermeldung wird in einem der folgenden Formate angezeigt:
Ein Fehler ist aufgetreten (ClientException) beim Aufrufen des <OperationName>-Vorgangs: Benutzer: arn:aws:iam::<account-id>:user/<user-name> ist nicht berechtigt, <ActionName> auf der Ressource: <ResourceArn> auszuführen, da keine Ressourcen-basierte Richtlinie die <ActionName>-Aktion zulässt
Die folgenden Szenarien können zu einer Fehlermeldung in diesem Format führen:
- Fehler bei der Cluster-Erstellung oder -aktualisierung
-
Diese Probleme treten auf, wenn Amazon-ECS-Vorgänge wie
CreateClusteroderUpdateClusteraufgrund fehlender AWS Cloud Map-Berechtigungen fehlschlagen. Der Vorgang erfordert Berechtigungen für die folgenden AWS Cloud Map-Aktionen:-
servicediscovery:GetNamespace
Stellen Sie sicher, dass die Einladung zur Ressourcenfreigabe im Verbraucherkonto akzeptiert wurde und dass der richtige Namespace-ARN in der Service-Connect-Konfiguration verwendet wird.
-
- Fehler bei der Service-Erstellung oder -Aktualisierung
-
Diese Probleme treten auf, wenn Amazon-ECS-Vorgänge wie
CreateServiceoderUpdateServiceaufgrund fehlender AWS Cloud Map-Berechtigungen fehlschlagen. Der Vorgang erfordert Berechtigungen für die folgenden AWS Cloud Map-Aktionen:-
servicediscovery:CreateService -
servicediscovery:GetNamespace -
servicediscovery:GetOperation(zum Erstellen eines neuen AWS Cloud Map-Service) -
servicediscovery:GetService(wenn ein AWS Cloud Map-Service bereits existiert)
Stellen Sie sicher, dass die Einladung zur Ressourcenfreigabe im Verbraucherkonto akzeptiert wurde und dass der richtige Namespace-ARN in der Service-Connect-Konfiguration verwendet wird.
-
ListServicesByNamespace-Vorgang schlägt fehl-
Dieses Problem tritt auf, wenn der
ListServicesByNamespace-Vorgang von Amazon ECS fehlschlägt. Der Vorgang erfordert Berechtigungen für die folgenden AWS Cloud Map-Aktionen:-
servicediscovery:GetNamespace
So beheben Sie dieses Problem
-
Stellen Sie sicher, dass das Verbraucherkonto über die
servicediscovery:GetNamespace-Berechtigung verfügt. -
Verwenden Sie beim Aufrufen der API den Namespace-ARN, nicht den Namen.
-
Stellen Sie sicher, dass die Ressourcenfreigabe aktiv ist und die Einladung akzeptiert wurde.
-
Benutzer: <iam-user> ist nicht berechtigt: <ActionName> auf Ressource: <ResourceArn> mit einem ausdrücklichen Deny in einer identitätsbasierten Richtlinie auszuführen.
Die folgenden Szenarien können zu einer Fehlermeldung in diesem Format führen:
- Das Löschen des Services schlägt fehl und bleibt im
DRAINING-Status hängen -
Dieses Problem tritt auf, wenn
DeleteService-Vorgänge von Amazon ECS aufgrund fehlenderservicediscovery:DeleteService-Berechtigungen fehlschlagen, wenn der Zugriff auf den Namespace gesperrt wird. Der Service scheint zunächst erfolgreich gelöscht zu werden, bleibt aber imDRAINING-Status hängen. Die Fehlermeldung wird als Amazon-ECS-Service-Ereignis angezeigt.Um dieses Problem zu lösen, muss der Namespace-Besitzer den Namespace mit dem Verbraucherkonto teilen, damit das Löschen des Services abgeschlossen werden kann.
- Aufgaben im Service können nicht ausgeführt werden
-
Dieses Problem tritt auf, wenn Aufgaben aufgrund fehlender Berechtigungen nicht gestartet werden können. Die Fehlermeldung wird als Aufgabe-Beendet-Fehler angezeigt. Weitere Informationen finden Sie unter Aufgabe-Beendet-Fehler in Amazon ECS beheben.
Die folgenden AWS Cloud Map-Aktionen sind für die Ausführung einer Aufgabe erforderlich:
-
servicediscovery:GetOperation -
servicediscovery:RegisterInstance
Stellen Sie sicher, dass das Verbraucherkonto über die erforderlichen Berechtigungen verfügt und dass auf den gemeinsam genutzten Namespace zugegriffen werden kann.
-
- Aufgaben können nicht ordnungsgemäß angehalten werden oder bleiben im
DEACTIVATING- oderDEPROVISIONING-Status hängen -
Dieses Problem tritt auf, wenn Aufgaben während des Herunterfahrens aufgrund fehlender Berechtigungen nicht vom AWS Cloud Map-Service abgemeldet werden können. Der Fehler wird als
statusReasonim Aufgabenanhang angezeigt, der über dieDescribeTasks-API abgerufen werden kann. Weitere Informationen finden Sie unter DescribeTasks in der API-Referenz zu Amazon Elastic Container Service.Die folgenden AWS Cloud Map-Aktionen sind für das Anhalten einer Aufgabe erforderlich:
-
servicediscovery:DeregisterInstance -
servicediscovery:GetOperation
Wenn der Zugriff auf den gemeinsam genutzten Namespace gesperrt wird, können Aufgaben im
DEACTIVATING- oderDEPROVISIONING-Status verbleiben, bis der Namespace-Zugriff wiederhergestellt ist. Bitten Sie den Namespace-Besitzer, den Zugriff auf den Namespace wiederherzustellen. -