Warum kann ich meine EC2-Instance nicht starten oder aufrufen?

Lesedauer: 7 Minute
0

Ich kann keine neue Amazon Elastic Compute Cloud (Amazon EC2)-Instance starten oder meine bestehende Instance starten.

Lösung

Es gibt mehrere mögliche Gründe dafür, dass Sie Ihre EC2-Instance nicht aufrufen oder starten können. Wenn Sie bei dem Versuch, die Instance zu starten, keinen Fehlercode erhalten, gehen Sie wie folgt vor:

1.    Suchen Sie in AWS CloudTrail nach dem Ereignis StartInstances.

-oder-

Führen Sie den Befehl describe-instances in AWS Command Line Interface (AWS CLI) aus und geben Sie die Instance-ID an, um den Grund für das Problem zu ermitteln. Ersetzen Sie im folgenden Beispiel MYINSTANCE durch die ID der Instance, die Sie starten möchten.

aws ec2 describe-instances --instance-id MYINSTANCE --output json

Überprüfen Sie die Meldung StateReason in der JSON-Antwort, die der Befehl zurückgibt. Im folgenden Beispiel ist die Meldung client.InternalError der zurückgegebene StateReason:

"StateReason": {
     "Message": "Client.InternalError: Client error on launch",
     "Code": "Client.InternalError"
   },

**Hinweis:**Wenn Sie beim Ausführen von Befehlen in AWS CLI Fehlermeldungen erhalten, stellen Sie sicher, dass Sie die neueste Version von AWS CLI verwenden.

2.    Gehen Sie die folgenden häufig auftretenden Fehler durch, um das Problem zu beheben.

InsufficientInstanceCapacity

Der folgende Fehler tritt auf, wenn eine neue oder gestoppte Instance gestartet wird und nicht genügend On-Demand-Kapazität verfügbar ist, um Ihre Anfrage zu erfüllen:

An error occurred (InsufficientInstanceCapacity) when calling the StartInstances operation (reached max retries: 4): Insufficient capacity.)

Dieser Fehler tritt auf, wenn die On-Demand-Kapazität nicht ausreicht, um Ihre Anfrage abzuschließen.

Informationen zur Lösung finden Sie unter . Wie behebe ich InsufficientInstanceCapacity-Fehler beim Starten oder Aufrufen einer EC2-Instance?

InstanceLimitExceeded

Der folgende Fehler tritt auf, wenn Sie mehr Instances als Ihre maximal zulässige Anzahl in einer AWS-Region starten:

InstanceLimitExceeded: Your quota allows for 0 more running instance(s).

Wenn Sie diese Meldung erhalten, beantragen Sie beim AWS Support eine Kontingenterhöhung. Stellen Sie sicher, dass Sie in Ihrer Anfrage den Typ der Instance angeben, die Sie starten möchten, und die AWS-Region, in der sie sich befindet.

Informationen zur Behebung dieses Fehlers finden Sie unter . Wie behebe ich den Fehler „InstanceLimitExceeded“ beim Starten oder Aufrufen einer EC2-Instance?

UnauthorizedOperation (Nicht autorisierter Vorgang)

Der Fehler UnauthorizedOperation tritt auf, wenn der Benutzer, der versucht, die Instance zu starten, nicht über die erforderlichen Berechtigungen verfügt. Informationen zur Behebung dieses Fehlers finden Sie unter . Wie kann ich eine Meldung über einen Autorisierungsfehler entschlüsseln, nachdem ich beim Start einer EC2-Instance den Fehler „UnauthorizedOperation“ erhalten habe?

Die angeforderte Konfiguration wird derzeit nicht unterstützt.

Eines der folgenden zwei Probleme verursacht diesen Fehler:

1.    Der angegebene Instance-Typ wird in der angeforderten Availability Zone nicht unterstützt. Um die Verfügbarkeit der Instance-Typen in bestimmten Availability Zones zu überprüfen, führen Sie den Befehl aws ec2 describe-instance-type-offerings in AWS CLI aus. Starten Sie dann die Instance in einer unterstützten Availability Zone.

Verwenden Sie beispielsweise den folgenden Befehl, um die Verfügbarkeit des Instance-Typs c5.2xlarge in allen Availability Zones in us-east-1 zu überprüfen:

aws ec2 describe-instance-type-offerings --location-type availability-zone --filters Name=instance-type,Values=c5.2xlarge --region us-east-1

2.    Das Amazon Machine Image (AMI), das zum Starten der Instance verwendet wird, unterstützt den ausgewählten Instance-Typ nicht. Bevor Sie den Instance-Typ oder die Instance-Familie auswählen, lesen Sie die AMI-Beschreibungen im AWS Marketplace. Dieses Problem tritt häufig auf, wenn Sie AWS-Marketplace-AMIs verwenden und mit AWS CLI versuchen, nicht unterstützte Instances zu starten. Wenn Sie Instances von der Amazon-EC2-Konsole aus starten, sind nicht unterstützte Instances nicht verfügbar.

Client.InternalError

Diese Fehlermeldung tritt häufig aus den folgenden Gründen auf:

  • Ein Volume im Amazon Elastic Block Store (Amazon EBS) ist nicht korrekt an die Instance angeschlossen.
  • Ein EBS-Volume, das an die Instance angeschlossen ist, befindet sich im Status ERROR.
  • Ein verschlüsseltes EBS-Volume ist an die Instance angeschlossen. Sie sind jedoch nicht berechtigt, zur Entschlüsselung auf die AWS Key Management Services (AWS KMS) zuzugreifen.

Informationen zur Lösung dieser Probleme finden Sie unter Wie behebe ich Probleme mit einer Amazon-EC2-Instance, die angehalten oder beendet wird, wenn ich versuche, sie zu starten?

Fehler bei voller Festplatte

Wenn Ihnen auf einer Instance der Speicherplatz ausgeht und der Audit-Service den Computer beim Hochfahren stoppt, erscheint eine Fehlermeldung, dass die Festplatte voll ist.

**Hinweis:**Bevor Sie fortfahren, erstellen Sie am besten ein Snapshot, um die Daten Ihrer Volumes zu sichern.

**Wichtig:**Für diese Lösungsschritte müssen Sie die Instance starten und stoppen. Beachten Sie Folgendes:

  • Wenn die Instance gestoppt wird, gehen die Daten in Ihren Instance-Speicher-Volumes verloren. Weitere Informationen finden Sie unter Root-Gerätetyp Ihrer Instance ermitteln.
  • Wenn Sie eine Instance stoppen, die Teil einer Amazon-EC2-Auto-Scaling-Gruppe ist, beenden Sie möglicherweise die Instance. Instances, die über Amazon EMR, AWS CloudFormation oder AWS Elastic Beanstalk gestartet werden, sind möglicherweise Teil einer AWS-Auto-Scaling-Gruppe. Die Beendigung der Instance hängt in diesem Szenario von den Instance-Scale-In-Schutzeinstellungen für Ihre Auto-Scaling-Gruppe ab. Wenn Ihre Instance Teil einer Auto-Scaling-Gruppe ist, entfernen Sie sie vorübergehend aus der Auto-Scaling-Gruppe, bevor Sie fortfahren.
  • Wenn Sie Ihre Instance stoppen und wieder starten, ändert sich ihre öffentliche IP-Adresse. Es empfiehlt sich, beim Weiterleiten von externem Datenverkehr an Ihre Instance eine Elastic-IP-Adresse anstelle einer öffentlichen IP-Adresse zu verwenden.

Gehen Sie wie folgt vor, um Fehler aufgrund einer vollen Festplatte zu beheben:

1.    Öffnen Sie die Amazon-EC2-Konsole.

2.    Wählen Sie im Navigationsbereich Instances und dann die entsprechende Instance aus.

3.    Stoppen Sie die Instance.

4.    Trennen Sie das EBS-Root-Volume (/dev/xvda für Linux) von der gestoppten Instance.

5.    Starten Sie eine neue EC2-Instance in derselben Availability Zone, in der sich die beeinträchtigte Instance befindet. Die neue Instance wird zu Ihrer Rettungs-Instance.

6.    Schließen Sie das Root-Volume, das Sie in Schritt 4 getrennt haben, als sekundäres Gerät an die Rettungs-Instance an.

**Hinweis:**Wenn Sie sekundäre Volumes anschließen, können Sie unterschiedliche Gerätenamen verwenden.

7.    Stellen Sie über SSH eine Verbindung zu Ihrer Rettungs-Instance her.

8.    Erstellen Sie ein Mountingpunkt-Verzeichnis für das neue Volume, das Sie in Schritt 6 an die Rettungs-Instance angeschlossen haben. Im folgenden Beispiel ist das Mountingpunkt-Verzeichnis /mnt/rescue.

**Hinweis:**Die folgenden Befehle vom Typ $ sudo gelten nur für Linux-Umgebungen:

$ sudo mkdir /mnt/rescue

9.    Mounten Sie das Volume in dem Verzeichnis, das Sie in Schritt 8 erstellt haben:

$ sudo mount /dev/xvdf /mnt/rescue

**Hinweis:**Das Gerät (in diesem Beispiel /dev/xvdf) hat möglicherweise einen anderen Gerätenamen für die Rettungs-Instance, an die es angeschlossen ist. Verwenden Sie den Befehl lsblk, um Ihre verfügbaren Festplattengeräte zusammen mit ihren Mountingpunkten anzuzeigen und die richtigen Gerätenamen zu ermitteln.

10.    Erhöhen Sie die Größe des Root-Volumes.

11.    Erweitern Sie die Partition.

12.    Führen Sie den Befehl umount aus, um das Mounten des Volumes zu beenden:

$ sudo umount /mnt/rescue

13.    Trennen Sie das Volume von der temporären Instance.

14.    Schließen Sie das Volume mit dem Gerätenamen (/dev/xvda für Linux) an die ursprüngliche Instance an und starten Sie dann die Instance, um sich zu vergewissern, dass sie erfolgreich hochfährt.

  1.    Überprüfen Sie die Konfiguration des Audit-Service, um sicherzustellen, dass er nicht über die Möglichkeit verfügt, den Computer anzuhalten (herunterzufahren), wenn der Speicherplatz knapp wird. Stellen Sie für Amazon Linux, Amazon Linux 2 und Amazon Linux 2023 sicher, dass die Audit-Service-Konfiguration die folgenden Optionen in /etc/audit/auditd.conf enthält:
max_log_file_action = ROTATE
admin_space_left_action = SUSPEND
disk_full_action = SUSPEND
disk_error_action = SUSPEND

Client.InvalidParameterValue

InvalidParameterValue bedeutet, dass ein in der Anfrage angegebener Parameter ungültig ist, nicht unterstützt wird oder nicht verwendet werden kann. Die zurückgegebene Nachricht enthält eine Erläuterung des Fehlerwerts. Wenn beispielsweise je nach AMI kein Root-Volume an die Instance unter /dev/sda1 oder /dev/xvda angehängt ist, startet die Instance nicht. In diesem Fall erscheint in AWS CloudTrail ein Eintrag wie der folgende:

An error occurred (InvalidParameterValue) when calling the StartInstances operation: Invalid value 'i-xxxxxxxxxxxxxxxxx' for instanceId. Instance does not have a volume attached at root (/dev/sda1)

Um dieses Problem zu beheben, ändern Sie den entsprechenden Parameter mit der Fehlermeldung als Referenz. Um beispielsweise den obigen Beispielfehler zu beheben, hängen Sie das Root-Volume an die Instance unter /dev/sda1 an und starten Sie dann die Instance. Weitere Informationen finden Sie unter Fehlercodes für die Amazon EC2-API.

Verwandte Informationen

Beheben von Problemen beim Aufrufen von Instances – Linux

Beheben von Problemen beim Aufrufen von Instances – Windows

Leitfaden zu bewährten Methoden für Amazon ECS

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr