Problembehandlung bei Windows VSS-basierten EBS-Snapshots - Amazon Elastic Compute Cloud

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.

Problembehandlung bei Windows VSS-basierten EBS-Snapshots

Bevor Sie andere Schritte zur Fehlerbehebung ausprobieren, empfehlen wir Ihnen, die folgenden Details zu überprüfen.

  • Stellen Sie sicher, dass Sie alle Voraussetzungen erfüllt haben.

  • Stellen Sie sicher, dass Sie das neueste Support von Windows-Betriebssystemversionen des AwsVssComponents-Pakets für Ihr Betriebssystem verwenden. Das von Ihnen beobachtete Problem wurde möglicherweise in neueren Versionen behoben.

Überprüfen Sie die Protokolldateien

Wenn beim Erstellen von VSS-fähigen EBS-Snapshots Probleme auftreten oder Fehlermeldungen angezeigt werden, können Sie die Befehlsausgabe in der Systems Manager Manager-Konsole anzeigen.

Für Systems Manager Manager-Dokumente, die VSS-Snapshots erstellen, können Sie den CollectDiagnosticLogs Parameter zur Laufzeit auf "True" setzen. Wenn der CollectDiagnosticLogs Parameter auf "True" gesetzt ist, sammelt VSS zusätzliche Protokolle, um das Debuggen zu erleichtern. Weitere Informationen finden Sie unter Sammeln Sie zusätzliche Diagnoseprotokolle.

Wenn Sie Diagnoseprotokolle sammeln, speichert das Systems Manager Manager-Dokument sie auf Ihrer Instanz am folgenden Ort:C:\ProgramData\Amazon\AwsVss\Logs\timestamp.zip. Die Standardeinstellung für den CollectDiagnosticLogs Parameter ist "False“.

Anmerkung

Wenn Sie zusätzliche Hilfe beim Debuggen benötigen, können Sie die .zip Datei an AWS Support senden.

Die folgenden zusätzlichen Protokolle sind verfügbar, unabhängig davon, ob Sie Diagnoseprotokolle sammeln oder nicht:

  • %ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stdout

  • %ProgramData%\Amazon\SSM\InstanceData\InstanceID\document\orchestration\SSMCommandID\awsrunPowerShellScript\runPowerShellScript\stderr

Sie können auch die Windows-Anwendung Event Viewer öffnen und Windows Logs (Windows-Protokolle), Application (Anwendung) auswählen, um zusätzliche Protokolle anzuzeigen. Um Ereignisse speziell vom EC2 Windows VSS Provider und dem Volume Shadow Copy Service anzuzeigen, filtern Sie nach Source (Quelle) nach den Begriffen Ec2VssSoftwareProvider und VSS.

Wenn Sie Systems Manager mit VPC-Endpunkten verwenden und die Systems Manager SendCommandManager-API-Aktion (Befehl ausführen in der Konsole) fehlgeschlagen ist, stellen Sie sicher, dass Sie den folgenden Endpunkt korrekt konfiguriert haben: com.amazonaws. region .ec2.

Wenn der Amazon EC2 EC2-Endpunkt nicht definiert ist, schlägt der Aufruf zur Aufzählung angehängter EBS-Volumes fehl, was dazu führt, dass der Systems Manager Manager-Befehl fehlschlägt. Weitere Informationen zum Einrichten von VPC-Endpunkten mit Systems Manager finden Sie unter Erstellen eines Virtual Private Cloud-Endpunkts im Benutzerhandbuch für AWS Systems Manager .

Sammeln Sie zusätzliche Diagnoseprotokolle

Um zusätzliche Diagnoseprotokolle zu sammeln, wenn Sie den Befehl send von Systems Manager verwenden, um das VSS-Snapshot-Dokument auszuführen, setzen Sie den CollectDiagnosticLogs Eingabeparameter zur Laufzeit auf True "". Wir empfehlen, diesen Parameter bei der Problembehandlung auf "True" zu setzen.

Um ein Befehlszeilenbeispiel zu sehen, wählen Sie eine der folgenden Registerkarten aus.

AWS CLI

Im folgenden Beispiel wird das AWSEC2-CreateVssSnapshot Systems Manager Manager-Dokument ausgeführt in AWS CLI:

aws ssm send-command \ --document-name "AWSEC2-CreateVssSnapshot" \ --instance-ids "i-1234567890abcdef0" \ --parameters '{"description":["Example - create diagnostic logs at runtime."],"tags":["Key=tag_name,Value=tag_value"],"CollectDiagnosticLogs":["True"]}'
PowerShell

Im folgenden Beispiel wird das AWSEC2-CreateVssSnapshot Systems Manager Manager-Dokument ausgeführt in PowerShell:

Send-SSMCommand -DocumentName AWSEC2-CreateVssSnapshot -InstanceId "i-1234567890abcdef0" -Parameter @{'description'='Example - create diagnostic logs at runtime.';'tags'='Key=tag_name,Value=tag_value';'CollectDiagnosticLogs'='True'}

Verwenden Sie VSS auf Instanzen, für die der Proxy konfiguriert ist

Wenn beim Erstellen von VSS-fähigen EBS-Snapshots in Instances, die einen Proxy zum Erreichen von EC2-Endpunkten verwenden, Probleme auftreten, stellen Sie Folgendes sicher:

  • Der Proxy ist so konfiguriert, dass die EC2-Dienstendpunkte in der Region und im IMDS der Instance erreichbar AWS Tools for Windows PowerShell sind, wenn er als SYSTEM ausgeführt wird.

  • AwsVssComponents-Version 2.0.1 oder höher ist installiert. Ab AwsVssComponents-Version 2.0.1 unterstützt der EC2 VSS-Anbieter die Verwendung des konfigurierten WinHTTP-Proxys des Systems. Weitere Informationen zum Konfigurieren des WinHTTP-Proxys finden Sie unter Netsh-Befehle für Windows Hypertext Transfer Protocol (WINHTTP) auf der Microsoft-Website.

Fehler: Zeitüberschreitung bei der Thaw-Pipe-Verbindung, Fehler beim Thaw, Zeitüberschreitung beim Warten auf VSS Freeze oder andere Zeitüberschreitungsfehler

Der EC2 Windows VSS Provider kann aufgrund von Aktivitäten oder Diensten auf der Instance, die verhindert, dass VSS-fähige Snapshots rechtzeitig ausgeführt werden, die Zeit überschreiten. Das Windows VSS Framework bietet ein nicht konfigurierbares 10-Sekunden-Fenster, in dem die Kommunikation mit dem Dateisystem unterbrochen wird. Während dieser Zeit erstellt AWSEC2-CreateVssSnapshot Snapshots Ihrer Volumes.

Die folgenden Probleme können dazu führen, dass der EC2 Windows VSS Provider während eines Snapshots auf Zeitlimits stößt:

  • Übermäßiger I/O für ein Volume

  • Langsame Reaktion der EC2-API auf der Instance

  • Fragmentierte Volumes

  • Inkompatibilität mit einigen Antivirensoftwares

  • Probleme mit einem VSS Application Writer

  • Wenn die Modulprotokollierung für eine große Anzahl von PowerShell Modulen aktiviert ist, kann dies dazu führen, dass PowerShell Skripts langsam ausgeführt werden

Die meisten Zeitüberschreitungsprobleme, die bei der Ausführung des AWSEC2-CreateVssSnapshot-Befehlsdokuments auftreten, hängen damit zusammen, dass die Workload auf der Instance zum Zeitpunkt der Sicherung zu hoch ist. Die folgenden Aktionen können Ihnen dabei helfen, einen erfolgreichen Snapshot zu erstellen:

  • Wiederholen Sie den Befehl AWSEC2-CreateVssSnapshot, um zu sehen, ob der Snapshot-Versuch erfolgreich ist. Wenn der Wiederholungsversuch in einigen Fällen erfolgreich ist, kann das Reduzieren der Instance-Last Snapshots erfolgreicher machen.

  • Warten Sie eine Weile, bis der Workload der Instance abnimmt, und wiederholen Sie den Befehl AWSEC2-CreateVssSnapshot. Alternativ können Sie Snapshots versuchen, wenn bekannt ist, dass die Instance unter geringem Stress steht.

  • Versuchen Sie VSS-Snapshots, wenn die Antivirensoftware auf dem System ausgeschaltet ist. Wenn das Problem dadurch behoben wird, lesen Sie die Anweisungen der Antivirensoftware und konfigurieren Sie sie so, dass VSS-Snapshots zulässig sind.

  • Wenn Ihr Konto in derselben Region, in der Sie einen Snapshot ausführen, eine große Anzahl von Amazon-EC2-API-Aufrufen enthält, kann die API-Drosselung Snapshot-Vorgänge verzögern. Um die Auswirkungen der Drosselung zu reduzieren, verwenden Sie das neueste AwsVssComponents-Paket (Version 2.1.0 und höher, mit den erforderlichen Berechtigungen). Dieses Paket verwendet die EC2-API-Aktion CreateSnapshots, um die Anzahl mutierender Aktionen wie das Erstellen und Taggen von Snapshots pro Volume zu reduzieren.

  • Wenn Sie mehrere AWSEC2-CreateVssSnapshot-Befehlsskripte gleichzeitig ausführen, können Sie die folgenden Schritte unternehmen, um Gleichzeitigkeitsprobleme zu verringern.

    • Erwägen Sie die Planung von Snapshots in Zeiten geringerer API-Aktivität.

    • Wenn Sie Run Command in der Systems-Manager-Konsole (oder SendCommand in der API) verwenden, um das Befehlsskript auszuführen, können Sie die Systems-Manager-Ratensteuerung verwenden, um die Gleichzeitigkeit zu reduzieren.

      Sie können auch Systems Manager-Ratensteuerungen verwenden, um die Parallelität von Diensten wie AWS Backup denen zu reduzieren, die Systems Manager zur Ausführung des Befehlsskripts verwenden.

  • Führen Sie den Befehl vssadmin list writers in einer Shell aus und prüfen Sie, ob er Fehler im Feld Last error (Letzter Fehler) für alle Autoren auf dem System meldet. Wenn Autoren einen time out (Timeout)-Fehler melden, sollten Sie Snapshots erneut versuchen, Snapshots erneut zu versuchen, wenn die Instance weniger belastet ist.

  • Wenn Sie kleinere Instance-Typen wie t2 | t3 | t3a.nano oder t2 | t3 | t3a.micro verwenden, kann es aufgrund von Speicher- und CPU-Einschränkungen zu Timeouts kommen. Die folgenden Aktionen können dazu beitragen, Timeout-Probleme zu reduzieren.

    • Versuchen Sie, speicher- oder CPU-intensive Anwendungen zu schließen, bevor Sie Snapshots erstellen.

    • Versuchen Sie, Snapshots in Zeiten mit geringerer Instance-Aktivität zu erstellen.

Fehler: Methode kann nicht aufgerufen werden. Der Methodenaufruf wird in diesem Sprachmodus nur für Kerntypen unterstützt.

Dieser Fehler tritt auf, wenn der PowerShell Sprachmodus nicht auf FullLanguage eingestellt ist. Die Dokumente AWSEC2-CreateVssSnapshot und AWSEC2-ManageVssIo SSM PowerShell müssen für den FullLanguage Modus konfiguriert werden.

Um den Sprachmodus zu überprüfen, führen Sie den folgenden Befehl auf der Instanz in einer PowerShell Konsole aus:

$ExecutionContext.SessionState.LanguageMode

Weitere Informationen über Sprachmodi finden Sie unter about_Language_Modes in der Microsoft-Dokumentation.