Ein angepasstes HVM AMI kann auf EC2 nicht gebootet werden

Ein angepasstes HVM AMI kann auf EC2 nicht gebootet werden

Ich versuche, ein vorhandenes Debian Jessie HVM AMI (ami-116d857a) anzupassen und es als mein privates AMI zu speichern. Obwohl der AMI-Erstellungsprozess erfolgreich ist, kann ich nicht davon booten. Die Instanz wird als gestartet angezeigt, aber ich kann keine Verbindung über SSH herstellen und die Überwachung zeigt auch, dass keine SSH-Konnektivität verfügbar ist. Ich sehe das gleiche Problem mit allen anderen HVM-AMIs. Das gleiche Verfahren funktioniert perfekt, wenn es sich um ein PVM-AMI handelt.

Hier ist das Verfahren, das ich befolge

  • Booten Sie von einem verfügbaren AMI.
  • Installieren Sie zusätzliche Pakete vom Paketmanager.
  • Installieren Sie npm-Module. (nodejs und npm wurden im vorherigen Schritt installiert)
  • Installieren Sie alle verfügbaren Systemupgrades.
  • Laden Sie ec2-ami-tools herunter und entpacken Sie es in /opt.
  • Privater SCP-Schlüssel und Zertifikat für die Instanz.
  • Erstellen Sie ein Image der Instanz mit dem folgenden Befehl

    /opt/ec2-ami-tools-1.5.7/bin/ec2-bundle-vol -c /home/admin/cert.pem -k /home/admin/pk.pem -u $aws_account_id -p $image_prefix -B ami=sda,root=/dev/sda1 --batch --debug

  • Laden Sie es dann in einen vorhandenen S3-Bucket hoch.

    /opt/ec2-ami-tools-1.5.7/bin/ec2-upload-bundle -b meine-ami-images -m /mnt/$image_prefix.manifest.xml -a $access_key -s $access_secret --retry --de bug

  • Und dann registrieren Sie schließlich die AMI

    aws ec2 register-image --name $image_prefix --image-location meine-ami-images/$image_prefix.manifest.xml --region us-east-1 --virtualization-type hvm --root-device-name /dev/xvda1

Alle diese Schritte verlaufen ohne Fehler und ich kann das AMI in meinem Konto mit dem Root-Gerät als Instanzspeicher und dem Virtualisierungstyp als HVM aufgelistet sehen.

Antwort1

Ihr aktueller AMI-Erstellungsprozess erstellt ein S3-gestütztes (Instance Store) AMI-Image. Aber Ihr Quell-AMI ist ein EBS-gestütztes AMI. Sie müssen eine andere Methode verwenden, um Ihr AMI zu erstellen, wodurch ein EBS-gestütztes AMI erstellt wird.

Anstatt Ihre Instanz zu bündeln und das AMI zu registrieren, gehen Sie wie folgt vor:

  1. Stoppen Sie Ihre EC2-Instance.
  2. Wählen Sie in der AWS-Managementkonsole Ihre EC2-Instanz aus und wählen Sie im Menü „Aktionen“ die Option „Image erstellen“. Dadurch wird ein EBS-gestütztes AMI-Image erstellt.

Weitere Informationen zum Erstellen von EBS-gestützten AMI-Images finden Sie hier:

Erstellen eines Amazon EBS-gestützten Linux-AMI | Amazon Elastic Compute Cloud

verwandte Informationen