Die Verwendung von Gruppenrichtlinien anstelle von langen und komplizierten Anmeldeskripten wird mehr und mehr genutzt. Ich migriere oft für Kunden deren Anmeldeskripte in Microsoft Gruppenrichtlinien und bietet viele Vorteile. Nichtsdestotrotz können die Gruppenrichtlinien eine Anmeldung aus unterschiedlichen Gründen verlangsamen. Kürzlich habe ich einen Kunden von mir einen einfachen Weg gezeigt, um Anmeldungen bzgl. Gruppenrichtlinien zu analysieren.

Woher weiß ich, dass zu viel Zeit mit den Gruppenrichtlinien benötigt wird? Um das besser einzuschätzen hier meine Daumenwerte für GPO Anmeldezeiten.

  1. Minimum GPO Satz dauert ca. 1-3 Sekunden
  2. Mittel GPO Satz dauert ca. 4-6 Sekunden
  3. Maximum GPO Satz sollte nicht mehr sein als ca. 7-9 Sekunden

Bei der Prüfung der Anmeldedauer in Citrix Director konnte ich sofort einige Probleme erkennen und bei einem war mir gleich klar was das Problem sein würde. Es gab interaktive Sitzungen mit Zeiten von 100 Sekunden plus und GPO Dauer von 15 und 18 Sekunden. Meine Vermutung mit der interaktiven Sitzung war ein Anmeldeskript und ich sollte damit recht behalten. Am Ende des Anmeldeskripts wurden lokale Druckertreiber "aufgeräumt" und hier blieb das Skript warum auch immer stecken. Nachdem wir diesen Teil übersprungen haben hatte die Dauer der interaktiven Sitzung wieder normale Werte.

Was ist aber jetzt mit den GPO Zeiten und was ist der Grund für die lange Zeit? Hier gibt es einen einfachen Weg das herauszufinden und es werden keine besonderen Tools benötigt, einfach nur was das System zu bieten hat. Als Erstes muss die Anmeldezeit- und Zielsystem des Benutzers gefunden werden z.B: über den Director oder womit auch immer. Dann wird auf dem Zielsystem das Ereignisprotokoll geöffnet und dann zu  Anwendungs- und Dienstprotokolle | Microsoft | Windows | GroupPolicy und hier nach unten Scrollen bis zur Anmeldezeit des Benutzers. Hier nach Event 5324 bzw. der Anmeldebenachrichtigung suchen, wobei nur die Sitzungs-ID des Benutzers zu finden ist. Die Sitzungs-ID dann prüfen, ob diese tatsächlich zu dem Benutzer gehört z.B: über "quser".

Als nächstes langsam und geduldig nach oben Scrollen und dann sollte zu finden sein wie das System die in Frage kommenden GPO's vom Domain Contoller herunterlädt. Danach werden die GPO's einzeln abgearbeitet und die Dauer für jeden Teil wird in ms angegeben. Das bedeutet alles was mehr als 1.000ms Zeit benötigt könnte interessant sein weiter zu untersuchen. Für den Kunden habe ich für zwei unterschiedliche Benutzer, zwei unterschiedliche Probleme gefunden. Bei dem ersten wurden rund 8.000ms verwendet, um eine GPO abzuarbeiten und bedeutet mehr als die Hälfte der gesamten Zeit! Nach Durchsicht der GPO fand ich ein Verbinden eines Netzlaufwerks über eine WAN-Verbindung. Das WAN war dabei aber nicht das Problem, sondern das für die Freigabe nicht der FQDN verwendet wurde und das System damit den Servernamen nicht auflösen konnte. D.h. das Netzlaufwerk konnte nicht verbunden werden und führe zu einem Timeout und Fehler von 8 Sekunden was auch im Detail zu finden war.

 

Das zweite Problem hatte eine 11 Sekunden Dauer von insgesamt 18 Sekunden für die Verarbeitung der GPO. Dieses Mal wurde ein Netzwerkdrucker über WAN verbunden via RPC und ist das schlechteste was man machen kann. Wir haben das Ganz herausgenommen und den Netzwerkdrucker über das Citrix Client Druckmapping und indirekten Druck eingebunden. Danach war die gesamte Dauer der Gruppenrichtlinien nur noch 7 Sekunden und damit in einem normalen Bereich.

Dies ist nur ein Beispiel Event und hat 2,6 Sekunden für das Abarbeiten der Drucker benötigt


Diese drei Probleme zu finden und zu beheben hat nur einige Minuten gedauert (deutlich weniger als darüber zu schreiben). Ich hoffe, es hat sich gezeigt, wie einfach aber doch effektiv die Analyse der Verarbeitung von Gruppenrichtlinien sein kann.


Kommentar schreiben