Wie man es repariert "Der WS-Management-Client erhielt zu viele Ergebnisse vom Server".
Beschreibung
Dieser Fehler tritt auf, wenn ein Windows Remote Management (WinRM) oder PowerShell Remoting Befehl Daten von einem Remote-Server anfordert und die Größe oder das Volumen der zurückgegebenen Daten die konfigurierten Datenlimits auf dem Client-Computer übersteigt. Um Denial-of-Service (DoS) -Angriffe und übermäßigen Speicherverbrauch zu verhindern, erzwingt WinRM strenge Quoten für die Datenübertragung. Wenn eine Abfrage (wie das Abrufen großer Ereignisprotokolle, aktive Verzeichnisobjekte oder massive Dateilisten) diese Grenzen überschreitet, beendet der Client abrupt die Verbindung und wirft diesen Fehler ab.
Schrittweise Lösungen
Sie können dieses Problem lösen, indem Sie die maximale Umschlaggröße oder die maximale Anzahl der Zeichen pro Paket auf dem Clientcomputer, dem Remote-Server oder beidem erhöhen.
Methode 1: Erhöhen Sie die WinRM MaxEnvelopeSize mit PowerShell
Es erhöht die Gesamtgröße des Datenpakets, das der Client empfangen kann.
- Klicken Sie auf Start Menü auf Ihrem lokalen Windows-Rechner.
- Typ PowerShell.
- Mit der rechten Maustaste. Windows PowerShell und wählen Run as administrator.
- Geben Sie den folgenden Befehl ein, um Ihre aktuelle maximale Umschlaggröße zu überprüfen (Standard ist normalerweise 500 KB):
Get-WSManInstance -ResourceURI winrm/config | Select-Object MaxEnvelopeSizekb - Führen Sie diesen Befehl aus, um die Größenbegrenzung auf 8192 KB (8 MB) zu erhöhen:
Set-WSManInstance -ResourceURI winrm/config -ValueSet @{MaxEnvelopeSizekb = "8192"} - Führen Sie den gleichen Befehl auf dem Remote-Server aus, wenn Sie nach der Änderung des Clients immer noch Probleme haben.
Methode 2: Anpassung von MaxProviderAntworten über WSMan Provider
Wenn der Server zu viele einzelne XML-Elemente oder -Objekte sendet, müssen Sie die Antwortgrenzen des Providers anpassen.
- Öffnen. Windows PowerShell als Administrator.
- Führen Sie diesen Befehl aus, um die aktuelle Konfiguration Ihres WSMan-Clients anzuzeigen:
Get-Item WSMan:\localhost\Client\* - Erhöhen Sie die Antwortgrenzen durch Ausführen:
Set-Item WSMan:\localhost\Client\MaxEnvelopeSizekb -Value 8192 - Sie können den WinRM-Dienst neu starten, um Änderungen sofort anzuwenden:
Restart-Service winrm
Methode 3: Änderung der Konzernrichtlinie (Alternative für Unternehmensumgebungen)
Wenn Sie mehrere Computer verwalten, können Sie diese Lösung über Ihr Netzwerk mit dem lokalen Gruppenrichtlinien-Editor bereitstellen.
- Drücken Sie die... Windows Key + R auf Ihrer Tastatur, um das Dialogfeld Ausführen zu öffnen.
- Typ gpedit.msc und drücken. Enter.
- Navigieren Sie zum folgenden Pfad in der linken Seitenleiste:
- Computer Configuration > Administrative Templates > Windows Components > Windows Remote Management (WinRM) > WinRM Client
- Suchen Sie nach dem Namen der Police. Specify maximum envelope size in KB in der rechten Scheibe.
- Doppelklicken Sie darauf, wählen Enabled, und setzen Sie den Wert auf 8192.
- Klicken Apply und dann klicken Sie OK.
- Öffnen Sie die Eingabeaufforderung als Administrator und starten Sie
gpupdate /forcedie Politik umzusetzen.
Methode 4: Filtern Sie Ihre Fragen (Best Practice)
Wenn das Ändern der Systemkonfiguration nicht ideal ist, ändern Sie Ihr Skript oder Befehl, um weniger Ergebnisse auf einmal anzufordern.
- Verwenden Sie, wenn verfügbar, die Parameter für die Paginierung.
- Filtern Sie Daten auf der Serverseite mit Parametern wie
-FilterByoder...-FilterServerSideAnstatt alles herunterzuladen und lokal zu filtern mitWhere-Object. - Einschränken Sie Ergebnisse mit Klauseln wie
-First 100oder...Select-Object -First 100um zu prüfen, ob kleinere Chargen erfolgreich sind.
Es kann einige Fehler geben.. Learn Microsoft