Citrix AD-Identitätsdienst startet nicht

Eine Woche nach dem Update von XenApp 7.18 auf Cirtix Virtual Apps & Desktops (CVAD) 7 1811 startete nach einem Reboot des Delivery Controllers der Citrix AD-Identitätsdienst (CitrixADIdentityService) nicht mehr.

Die Bereitstellung an sich lief ohne Probleme. Allerdings war es nicht möglich die Site im Citrix Studio zu bearbeiten. Der erste Step zum Troubleshooting war, wie so häufig, ein Blick in die Ereignisanzeige, bei dem direkt drei Events auffielen:

  • .Net Runtime mit der Event-ID 1026

Anwendung: Citrix.ADIdentity.exe
Frameworkversion: v4.0.30319
Beschreibung: Der Prozess wurde aufgrund einer unbehandelten Ausnahme beendet.
Ausnahmeinformationen: System.IO.DirectoryNotFoundException
bei System.IO.__Error.WinIOError(Int32, System.String)
bei System.IO.FileSystemEnumerableIterator1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].CommonInit() bei System.IO.FileSystemEnumerableIterator1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]..ctor(System.String, System.String, System.String, System.IO.SearchOption, System.IO.SearchResultHandler1<System.__Canon>, Boolean) bei System.IO.Directory.GetFiles(System.String, System.String) bei Citrix.Fma.Sdk.Dal.Probe.XduSupport.GetXduFiles(System.String) bei Citrix.Fma.Sdk.Dal.Probe.SchemaProbeDAL.DiscoverDbUpdates(System.String, System.String, System.String, Boolean) bei Citrix.Fma.Sdk.ServiceCore.SqlContext.DoDiscoverDbUpdates(System.String) bei Citrix.Fma.Sdk.ServiceCore.SqlContext.StartDal(System.String) bei Citrix.Fma.Sdk.ServiceCore.SqlContext.StartDal() bei Citrix.Fma.Sdk.ServiceCore.SqlContext.Connect() bei Citrix.ADIdentity.Logic.ADIdentityLogic.Initialize() bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].InitializeService()
bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].RunStartupSequence() bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].DoWork()
bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner`1[[System.__Canon, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]].DoWorkShell()
bei System.Threading.ExecutionContext.RunInternal(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
bei System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object, Boolean)
bei System.Threading.ExecutionContext.Run(System.Threading.ExecutionContext, System.Threading.ContextCallback, System.Object)
bei System.Threading.ThreadHelper.ThreadStart()

.Net Runtime Event-ID 1026
  • Application Error mit der Event-ID 1000 (100)

Name der fehlerhaften Anwendung: Citrix.ADIdentity.exe, Version: 7.20.0.50, Zeitstempel: 0x5bef13e6
Name des fehlerhaften Moduls: KERNELBASE.dll, Version: 10.0.14393.2636, Zeitstempel: 0x5bda7edc
Ausnahmecode: 0xe0434352
Fehleroffset: 0x0000000000034048
ID des fehlerhaften Prozesses: 0x758
Startzeit der fehlerhaften Anwendung: 0x01d4ae7e1c93a320
Pfad der fehlerhaften Anwendung: C:\Program Files\Citrix\ADIdentity\Service\Citrix.ADIdentity.exe
Pfad des fehlerhaften Moduls: C:\Windows\System32\KERNELBASE.dll
Berichtskennung: e0dc6929-2b5a-4ca3-8e14-1bc6efa367be
Vollständiger Name des fehlerhaften Pakets:
Anwendungs-ID, die relativ zum fehlerhaften Paket ist:

Application Error Event-ID 1000 (100)
  • Service Control Manager mit der Event-ID 7031

Der Dienst „Citrix AD-Identitätsdienst“ wurde unerwartet beendet. Dies ist bereits 3 Mal vorgekommen. Folgende Korrekturmaßnahmen werden in 60000 Millisekunden durchgeführt: Neustart des Diensts.

Service Control Manager Event-ID 7031

Leider blieb die Auswertung der Events wenig aufschlussreich. Lediglich „System.IO.DirectoryNotFoundException“ aus dem .Net Runtime Fehler lässt evtl. erahnen, wo bzw. was hapert. Daher wurde als nächstes geprüft, ob der Dienst bzw. die ausführbare Datei „Citrix.ADIdentity.exe“ ein Logfile schreibt oder ob sich ein Log erstellen lässt. Daher kurzerhand in „C:\Program Files\Citrix\ADIdentity\Service\“ und den Executable mit dem Parameter „/?“ gestartet:

C:\Program Files\Citrix\ADIdentity\Service>Citrix.ADIdentity.exe -?
Use this command to configure the Citrix AD Identity Service.

It accepts the following parameters:

 -? or -Help        Display this usage message
 -Show              Show existing settings
 -Logfile <file>    Configure logging to go to <file>
 -ClearLogfile      Clear log file configuration
 -ConfigureFirewall Update Windows Firewall exclusions for the configured ports
 -SdkPort <port>    Configure the port for the administration SDK
 -KeyPort <port>    Configure the port for the peer-service SDK
 -SvcPort <port>    Configure the port for the inter-service SDK
 -Uninstall         Remove configuration settings, including Windows Firewall
                    exclusions, and reserved URLs
 -Upgrade           Perform actions needed after an upgrade of the service to
                    a new version
 -Quiet             Do not output status messages
 -Install           Perform basic install actions to activate the service.

Et voilà: „-Logfile <file> Configure logging to go to“. Schnell in der gleichen Eingabeaufforderung

C:\Program Files\Citrix\ADIdentity\Service>Citrix.ADIdentity.exe -Lgofile "C:\install\ADIdentity.log"

gestartet und direkt einen Blick ins Logfile geworfen, ergab dann die Quelle des des nicht gefundenen Verzeichnisses.

17/01/19 18:39:18.375 2332 0009 11340: ADIdentityLog:System.IO.DirectoryNotFoundException: Ein Teil des Pfades „C:\Program Files\Citrix\ADIdentity\Service\UpdateScripts“ konnte nicht gefunden werden.
bei System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
bei System.IO.FileSystemEnumerableIterator1.CommonInit() bei System.IO.FileSystemEnumerableIterator1..ctor(String path, String originalUserPath, String searchPattern, SearchOption searchOption, SearchResultHandler1 resultHandler, Boolean checkHost) bei System.IO.Directory.GetFiles(String path, String searchPattern) bei Citrix.Fma.Sdk.Dal.Probe.XduSupport.GetXduFiles(String dir) bei Citrix.Fma.Sdk.Dal.Probe.SchemaProbeDAL.DiscoverDbUpdates(String path, String targetService, String targetDataStore, Boolean saveMissingUpdates) bei Citrix.Fma.Sdk.ServiceCore.SqlContext.DoDiscoverDbUpdates(String dataStore) bei Citrix.Fma.Sdk.ServiceCore.SqlContext.StartDal(String dataStore) bei Citrix.Fma.Sdk.ServiceCore.SqlContext.StartDal() bei Citrix.Fma.Sdk.ServiceCore.SqlContext.Connect() bei Citrix.ADIdentity.Logic.ADIdentityLogic.Initialize() bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner1.InitializeService()
bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner1.RunStartupSequence() bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner1.DoWork()
bei Citrix.Fma.Sdk.ServiceCore.ServiceRunner`1.DoWorkShell()

C:\install\ADIdentity.log

Somit hat „System.IO.DirectoryNotFoundException“ einen Namen bekommen: „C:\Program Files\Citrix\ADIdentity\Service\UpdateScripts„. Ein Blick ins Verzeichnis ergab, dass dort tatsächlich der Ordner „UpdateScripts“ fehlte. Als der Ordner angelegt wurde, startet der Citrix AD-Identitätsdienst (CitrixADIdentityService) sofort. Vorsichtshalber habe ich das Verzeichnis in einer anderen CVAD 7 1811 Umgebung geprüft und verglichen. Dabei wurde festgestellt, dass weitere Ordner und Dateien fehlten. Daher auf der aktuellen Citrix Virtual Apps & Desktops 7 1811 ISO ins Verzeichnis „C:\install\CVAD7_1811\x64\Citrix Desktop Delivery Controller“ gewechselt und das „ADIdentity_Service_x64.msi“ Paket repariert. Danach waren auch alle anderen Ordner und Verzeichnisse vorhanden.

Zum Schluss sei noch angemerkt, dass man das Logging der Citrix.ADIdentity.exe wieder deaktivieren sollte, da das Logfile rasch anwächst. Zum Deaktivieren ist der Parameter „-ClearLogfile“ gedacht.

C:\Program Files\Citrix\ADIdentity\Service>Citrix.ADIdentity.exe -clearlogfile
Stopping service: Citrix AD Identity Service
Starting service: Citrix AD Identity Service

Citrix Virtual Apps and Desktops 7 1811

Was der Citrix Blog zu Citrix Virtual Apps and Desktops 7 1811 veröffentlicht klingt ja mehr als vielversprechend! Mal sehen, wie es nach dem ersten Update auf 1811 aussieht.

Vielleicht kommt nach dem nächsten Citrix Virtual Apps and Desktops Update ja tatsächlich mal ein User um die Ecke und sagt:

In CVAD 1811 you can enjoy HDX like never before. Trust me, your users will come to you saying, “I don’t know what you did, but the experience is twice as good!” The real number is 5x: We are going to be five times more efficient than XenApp and XenDesktop 7.15 over WAN links.

https://www.citrix.com/blogs/2018/12/12/hdx-the-story-behind-a-roadmap

https://www.citrix.com/blogs/2018/12/12/hdx-the-story-behind-a-roadmap/

https://www.citrix.com/blogs/2018/12/12/get-insights-into-user-profiles-with-citrix-director/

https://www.citrix.com/blogs/2018/12/12/ring-in-the-new-year-with-citrix-virtual-apps-and-desktops-7-1811/

https://docs.citrix.com/en-us/citrix-virtual-apps-desktops/whats-new.html

Weiter geht es in 2019 mit Citrix Virtual Apps (CVAD) 1903!