Jump to content
lindi200000

unerwarteter Fehler beim WSUS nach Einrichtung eines Replikas Servers

Empfohlene Beiträge

Hallo zusammen,

ich habe ein merkwürdiges Problem.

Ich hab intern einen WSUS auf einen Server 2019 eingerichtet. Dieser lief auch ohne Probleme.

Nun habe ich einen weiteren WSUS in der DMZ eingerichtet. Dieser ist als Replika Server konfiguriert und soll Außendienstmitarbeiter versorgen.

Die Anmeldung der entsprechenden Notebooks klappt auf den Replika Server auch, jedoch wenn ich nun die MMC des lokalen WSUS öffne und den entsprechenden Computer Knoten öffne, dann kommt "Fehler: Unerwarteter Fehler".

An der WSUS-Verwaltungskonsole ist ein unerwarteter Fehler aufgetreten. Möglicherweise ist es ein vorübergehender Fehler. Versuchen Sie, die Verwaltungskonsole erneut zu starten. Wenn der Fehler weiterhin besteht, 

entfernen Sie die gespeicherten Einstellungen für die Konsole, indem Sie die WSUS-Datei unter "%appdata%\Microsoft\MMC\" löschen.


System.InvalidCastException -- Das Objekt des Typs "System.Guid" kann nicht in Typ "System.String" umgewandelt werden.

Source
Microsoft.UpdateServices.BaseApi

Stack Trace:
   bei Microsoft.UpdateServices.Internal.BaseApi.SoapExceptionProcessor.DeserializeAndThrow(SoapException soapException)
   bei Microsoft.UpdateServices.Internal.DatabaseAccess.AdminDataAccessProxy.ExecuteSPSearchComputers(String computerTargetScopeXml)
   bei Microsoft.UpdateServices.Internal.BaseApi.ComputerTarget.SearchComputerTargets(ComputerTargetScope searchScope, UpdateServer updateServer)
   bei Microsoft.UpdateServices.UI.AdminApiAccess.ComputerTargetManager.GetComputerTargets(ComputerTargetScope searchScope)
   bei Microsoft.UpdateServices.UI.AdminApiAccess.BulkComputerPropertiesCache.GetAndCacheComputers(ExtendedUpdateScope updateScope, ComputerTargetScope computerTargetScope)
   bei Microsoft.UpdateServices.UI.SnapIn.Pages.ComputersListPage.GetListRows()

Die WSUS Datei habe ich schon gelöscht, es gibt keine Besserung.

Es sind nur die Computergruppen betroffen, wo sich auf dem Replika Server ein Rechner "eingerichtet" hat.

Die Geräte werden per GPO automatisch in die entsprechenden Gruppen verschoben.

Beide Server haben die WSUS Version 10.0.17763.134

 

Hat jemand eine Idee was man da machen kann?

 

VG

Lindi

bearbeitet von lindi200000

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Die Replikation zwischen den beiden Servern funktioniert sauber? Keine Fehler im Log?

 

 

System.InvalidCastException -- Das Objekt des Typs "System.Guid" kann nicht in Typ "System.String" umgewandelt werden.

 

Irgendwie riecht das nach einem ordentlichen Bug.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Prüf das nach ob der Downstream WSUS sauber läuft. Zusätzlich kannst Du ja in der Konsole den Downstream als eigenen WSUS einbinden. Oder auf dem Downstream direkt die Konsole zum Test öffnen.

 

Du kannst auf dem Downstream die Serverbereinigung ausführen und natürlich auch täglich per Script ausführen. Hier findest Du zwei Scripts, such dir eins aus davon: https://wsus.de/scripts

Und auf beiden Servern kannst Du diese Einstellung im IIS setzen: https://www.404techsupport.com/2016/03/21/iis-wsus-private-memory/

 

EDIT: Auch dieses Script sollte mind. einmal pro Woche laufen: https://gallery.technet.microsoft.com/scriptcenter/6f8cde49-5c52-4abd-9820-f1d270ddea61

 

bearbeitet von Sunny61

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Serverbereinigung läuft schon.

Beide WSUS haben keine Fehler (bis auf das ich beim haupt wsus halt nicht die Computergruppen öffnen kann die beim Replika verwendet werden.)

 

Speicher habe ich auch erhöht und auch neugestartet, das bringt aber leider auch nix.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Das Ist wohl ein Problem beim WSUS 2019.

Die Exception deutet auf fehlerhaft Daten in einer Spalte von Type GUID hin (diesen komischen Datentyp scheint nur MS zu kennen).

Siehe https://social.technet.microsoft.com/Forums/en-US/0806914e-0b5e-445c-b657-4bd6ddff93f3/wsus-2019-all-computers-server-node-crash?forum=winserverwsus

Ich würde mal den Inhalt der relevanten Tabellen checken:

https://social.technet.microsoft.com/Forums/ie/en-US/90dc15d3-c498-42b8-b36a-bd29be35cf99/wsus-console-unexpected-error-when-choosing-all-computers-folder?forum=winserverwsus

oder den Support von Microsoft kontaktieren.

 

PS: Noch ein link: https://social.technet.microsoft.com/Forums/en-US/693ac0f5-83c1-4629-b5ea-0dcbea01da1d/wsus-2019-downstreamserver-bug-downstream-computers-not-available-on-upstream?forum=winserverwsus

bearbeitet von zahni

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
Am 14.2.2019 um 09:42 schrieb Sunny61:

System.InvalidCastException -- Das Objekt des Typs "System.Guid" kann nicht in Typ "System.String" umgewandelt werden.

Das ist der Fehler, das kann nur MSFT fixen.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
Am 15.2.2019 um 09:11 schrieb zahni:

Das Ist wohl ein Problem beim WSUS 2019.

Die Exception deutet auf fehlerhaft Daten in einer Spalte von Type GUID hin (diesen komischen Datentyp scheint nur MS zu kennen).

GUID nur MS? Nicht doch, ist doch mittlerweile fast "überall" quasi-Standard als eindeutige ID Datenbanken und auch für sonstiges. ;)

Allerdings ist die Umwandlungs-Api von Windows etwas altbacken (sofern überhaupt via Api gegangen wird). Wenn Sie z.B. einen Wert "Null" erhält, gibts eine Exception die man auffangen muss. Möglicherweise fehlt einfach irgendwo eine GUID in einem Feld wo normalerweise etwas drinn ist oder irgend ein Entwickler hat vergessen die Exception zu Kapseln.

bearbeitet von Weingeist

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen
vor 6 Stunden schrieb Weingeist:

GUID nur MS? Nicht doch, ist doch mittlerweile fast "überall" quasi-Standard als eindeutige ID Datenbanken und auch für sonstiges. ;)

Allerdings ist die Umwandlungs-Api von Windows etwas altbacken (sofern überhaupt via Api gegangen wird). Wenn Sie z.B. einen Wert "Null" erhält, gibts eine Exception die man auffangen muss. Möglicherweise fehlt einfach irgendwo eine GUID in einem Feld wo normalerweise etwas drinn ist oder irgend ein Entwickler hat vergessen die Exception zu Kapseln.

Was ist denn bei einem BIGINT nicht eindeutig? Ansonsten kannst Du in Varchar gern eine GUID reinschreiben. Mir ist nicht klar, wozu man da  einen eigenen Datentyp nehmen muss, den eh irgendwann wieder einen String umwandeln muss. Wir nutzen hier hauptsächlich DB2. Den Datentype gibt es dort nicht. Mit ein paar Zeilen Code mag man sich eine UUID generieren. Und als PK sind sie nicht der Weisheit letzter Schuss. https://tomharrisonjr.com/uuid-or-guid-as-primary-keys-be-careful-7b2aa3dcb439 

bearbeitet von zahni

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Sorry für die späte Antwort, habe keine Benachrichtigung gesehen.

Vorteil der GUID ist halt, dass diese auch eine Software generieren kann und nicht zwingend durch eine DB-System erfolgen muss. Sprich man kann ein komplettes Datenkonstrukt übergeben ohne komplizierte Stored Procedures erstellen zu müssen. Ganz simples Beispiel: Man generiert z.B. Aufträge mit den entsprechenden Auftragspositionen auf dem Client. Anstatt das nun eine Anwendung warten muss, biss es den PK vom DB-System bekommt, kann es diese gleich mitliefern. Die Logik kann halt teilweise einfacher an eine Anwendung delegiert werden, sofern das gewünscht ist.

Das kann entweder ein Offline-PC sein oder ein LAN-PC der die Daten nur im Cache hat und dann überträgt. Ich arbeite sehr gerne mit GUID's. Ist aber Geschmackssache, wie so vieles.

Wenn man viel mit Multi-User Access-Datenbanken gearbeitet hat, lernt man sie aber eh ganz anders zu schätzen als wenn man alles mit einem DB-System erschlagen kann. Da gehört die komplette PK-Problematik mit Auto-Inkrement der Vergangenheit an. Aber auch bei grossen Systemen hat es seine Vorzüge, je nach Umsetzung spart es doch einiges an IOPS auf den Server-Systemen weil man sich gewisse Übertragungen und Prüfungen ersparen kann. Verwendet man die Spalten allerdings mit Indexen, kann es wieder langsamer sein. Wie alles hat es immer zwei Seiten und man muss entscheiden was man lieber will.

 

Für MS und auch andere Software-Entwickler hat es aber auch grosse Vorteile. Da die GUID relativ eindeutig ist, kann jeder Entwickler seine eigenen GUID's für Pakete generieren. Die Chance das für den gleichen Zweck exakt die gleiche GUID von unterschiedlichen Maschinen generiert wird, ist extrem klein.

 

Zwingend in einen String umwandeln muss man ja gar nicht solange man sich die GUID nicht in Klartext anzeigen will. Ist ja ein komplett eigener Datentyp.  Okto-Irgendwas, korrekter Name ist mir grad entfallen. Joins mit umgewandelten Strings sind sowieso nicht performant.

Diesen Beitrag teilen


Link zum Beitrag
Auf anderen Seiten teilen

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden

Werbepartner:



×