Problembehebung und Diagnose - AWS Elastic Beanstalk

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.

Problembehebung und Diagnose

Dieser Abschnitt enthält Anleitungen zur Behebung häufiger Probleme, die bei der Migration von IIS-Anwendungen zu Elastic Beanstalk auftreten können.

Ein EC2 Schlüsselpaar mit Ihrer Umgebung verknüpfen

Sie können sich mit einem Amazon-Schlüsselpaar sicher bei den Amazon Elastic Compute Cloud (Amazon EC2) -Instances anmelden, die für Ihre Elastic Beanstalk Beanstalk-Anwendung bereitgestellt wurden. EC2 Anweisungen zum Erstellen eines key pair finden Sie unter Erstellen eines Schlüsselpaars mit Amazon EC2 im EC2 Amazon-Benutzerhandbuch.

Die Angabe eines Schlüsselnamens für eb migrate hat zur Folge, dass Ihre Elastic Beanstalk Beanstalk-Umgebung mit dem Schlüsselpaar verknüpft wird. Aus Sicherheitsgründen wird dadurch Port 3389 in der Sicherheitsgruppe Ihrer Instance nicht geöffnet. EC2 Sie können zusätzliche EC2 Sicherheitsgruppen zuordnen, die den Datenverkehr über Port 3389 auch eb config nach der ersten Migration zulassen.

PS C:\migrations_workspace> eb migrate ` --keyname "my-keypair" ` --verbose

Wenn Sie ein key pair erstellen, EC2 speichert Amazon eine Kopie Ihres öffentlichen Schlüssels. Wenn Sie es nicht mehr verwenden müssen, um eine Verbindung zu Umgebungsinstanzen herzustellen, können Sie es aus Amazon löschen EC2. Einzelheiten finden Sie unter Löschen Ihres Schlüsselpaars im EC2 Amazon-Benutzerhandbuch.

Weitere Informationen zum Herstellen einer Verbindung zu EC2 Windows-Amazon-Instances finden Sie unter Verbindung zu Windows-Instances herstellen.

Auf Protokolle zugreifen

Die EB CLI bietet eine eb logs Funktion, mit der Sie Logs aus einer Elastic Beanstalk Beanstalk-Umgebung abrufen können, ohne sich bei deren EC2 Instanzen anmelden zu müssen. Nach der Ausführung von können Sie den eb logs --zip Befehl ausführeneb migrate, mit dem Logs heruntergeladen und im .elasticbeanstalk\logs Verzeichnis gespeichert werden.

Alternativ können Sie Logs auch über die AWS Elastic Beanstalk Beanstalk-Konsole anzeigen. Weitere Informationen finden Sie unter Logs von EC2 Amazon-Instances in Ihrer Elastic Beanstalk Beanstalk-Umgebung anzeigen.

Zugreifen auf clientseitige Artefakte

Der eb migrate Befehl speichert Anwendungs- und Fehlerprotokolle, die von msdeploy internen Verzeichnissen für Migrationsartefakte generiert wurden.

./migrations/ ├── latest -> migration_20240308_123456/ └── migration_20240308_123456/ ├── application.log ├── error.log └── upload_target\

Überwachung des Zustands der Umgebung

Elastic Beanstalk unterstützt Sie mit den erweiterten Funktionen zur Gesundheitsüberwachung bei der Überwachung des Zustands. Es handelt sich um ein automatisiertes System zur Gesundheitsüberwachung, das kontinuierlich den Betriebsstatus von Anwendungsinstanzen verfolgt und dabei integrierte Messwerte wie CPU-Auslastung, Latenz, Anzahl der Anfragen und Antwortcodes nutzt.

Das System zur Gesundheitsüberwachung verwendet einen agentenbasierten Ansatz zur Erfassung von Daten auf Instanzebene und ist mit Protokollierung und Warnmeldungen in Echtzeit integriert. Elastic Load Balancing (ELB) und Auto Scaling reagieren dynamisch auf Änderungen des Gesundheitsstatus und sorgen so für hohe Verfügbarkeit und Fehlertoleranz. Erweiterte Überwachungsmodi, einschließlich erweiterter Statusberichte, bieten einen detaillierten Einblick in das Anwendungsverhalten und ermöglichen so eine proaktive Fehlerbehebung und automatische Wiederherstellungsmechanismen.

Führen Sie den EB eb health CLI-Befehl aus, um den Zustand der Umgebung anzuzeigen. Die folgenden Informationen werden angezeigt:

  • Instance-Zustand

  • Kennzahlen zur Reaktion von Anwendungen

  • Auslastung der Systemressourcen

  • Aktuelle Bereitstellungsereignisse

EC2 Leistungsoptimierung

eb migrateWählt standardmäßig den Instance-Typ c5.2xlarge aus, um ein optimales Ersterlebnis mit Elastic Beanstalk zu bieten. Sie können dieses Verhalten mit dem Argument überschreiben: --instance-type

PS C:\migrations_workspace> eb migrate ` --instance-type "t3.large"

Für Produktionsumgebungen sollten Sie bei der Auswahl eines Instance-Typs die folgenden Faktoren berücksichtigen:

  • Speicheranforderungen Ihrer Anwendungen

  • CPU-Anforderungen für die Verarbeitung von Workloads

  • Anforderungen an die Netzwerkleistung

  • Ziele zur Kostenoptimierung

Konfiguration des EBS-Volumes

Standardmäßig erstellt Elastic Beanstalk nur ein Root-Block-Device-Volume (C:\) für Ihre Umgebung. Sie können zusätzliche Amazon Elastic Block Store-Snapshot-Volumes mit der folgenden --ebs-snapshots Option übergeben:

PS C:\migrations_workspace> eb migrate ` --ebs-snapshots "snap-123456789abc"

Beispiele dafür, wie Sie Blockgeräte-Mappings mit Elastic Beanstalk konfigurieren können, finden Sie im Blogartikel Customize Ephemeral and EBS Volumes in Elastic Beanstalk Environments.

Für Anwendungen mit hohen Speicheranforderungen sollten Sie die folgenden Optionen in Betracht ziehen:

  • EBS-Volumes für persistente Daten verwenden

  • Implementierung von Amazon S3 für statische Inhalte

  • Amazon FSx for Windows File Server für gemeinsam genutzte Dateisysteme verwenden

Häufige Probleme und Lösungen

Ereignis: Fehlende Web Deploy-Installation

Wenn Sie auf Fehler stoßen, die darauf zurückzuführen sind, dass Web Deploy nicht gefunden wurde, installieren Sie Web Deploy 3.6 oder höher über den Microsoft Web Platform Installer. Im folgenden Beispiel wird eine mögliche Fehlermeldung angezeigt.

Couldn't find msdeploy.exe. Follow instructions here: https://learn.microsoft.com/en-us/iis/install/installing-publishing-technologies/installing-and-configuring-web-deploy

Ereignis: Berechtigungsprobleme während der Migration

Wenn Sie auf berechtigungsbezogene Fehler stoßen, stellen Sie sicher, dass Sie die EB-CLI mit Administratorrechten ausführen. Im folgenden Beispiel wird eine mögliche Fehlermeldung angezeigt.

[ERROR] Access to the path 'C:\inetpub\wwwroot\web.config' is denied.

Ereignis: Identitätsprobleme mit dem Anwendungspool

Wenn Ihre Anwendung aufgrund von Problemen mit der Identität des Anwendungspools nicht gestartet werden kann, erstellen Sie ein benutzerdefiniertes Skript, um die Identitäten des Anwendungspools zu konfigurieren, wie unter beschrieben. Benutzerdefinierte Einstellungen für den Anwendungspool

Ereignis: Fehler bei der Konfiguration des SSL-Zertifikats

Wenn HTTPS-Bindungen nicht funktionieren, stellen Sie sicher, dass Sie mit dem eb mibrate --ssl-certificates Optionsparameter einen gültigen ACM-Zertifikat-ARN angegeben haben.

Ereignis: Timeout bei der Erstellung der Umgebung

Wenn bei der Erstellung der Umgebung ein Timeout auftritt, überprüfen Sie die AWS CloudFormation Ereignisse in der AWS Management Console auf bestimmte Fehler bei der Ressourcenerstellung. Zu den häufigsten Ursachen gehören VPC-Konfigurationsprobleme oder Servicebeschränkungen.

Supportanfragen

Wenn Sie auf Probleme stoßen, die Sie nicht lösen können, AWS -Support holen Sie sich vor der Kontaktaufnahme die folgenden Informationen ein:

  • Umgebungs-ID (eb status)

  • Anwendungsprotokolle (eb logs --zip)

  • Migrationsartefakte von .\migrations\latest\

  • IIS-Quellkonfiguration (Ausgabe voneb migrate explore --verbose)

  • Detaillierte Fehlermeldungen

Weitere Informationen zur Fehlerbehebung bei Elastic Beanstalk finden Sie unter. Fehlerbehebung in Ihrer Elastic Beanstalk Beanstalk-Umgebung