FSLogix Container (Office/Profile) in Citrix Umgebungen – Deyda.net (2024)

Table of Contents

In letzter Zeit bin ich vermehrt in Projekte gekommen, in denen Office365 voll umfänglich in Citrix Umgebungen implementiert werden soll. Dies bedeutet das der Kunde nicht nur die Standard Office Anwendungen Outlook, Excel und Word benötigt, sondern auch Teams und OneDrive nutzen möchte.

Genau hier haben wir aber, ohne zusätzliche Software, immense Probleme in nicht persistenten Desktop Umgebungen. Zum Beispiel mit unseren Profilen (Teams Installer speichert seine Daten im Profile) oder damit das Daten jedesmal wieder aus dem Internet heruntergeladen werden (OneDrive Sync Daten im Profile ausschliessen).

Seit kurzem sind wir aber in der glücklichen Lage, hierfür „kostenfrei“ FSLogix zu nutzen, wenn wir folgenden Voraussetzungen erfüllen:

  • Microsoft 365 E3/E5
  • Microsoft 365 A3/A5/ Student Use Benefits
  • Microsoft 365 F1/F3
  • Microsoft 365 Business
  • Windows 10 Enterprise E3/E5
  • Windows 10 Education A3/A5
  • Windows 10 VDA per user
  • Remote Desktop Services (RDS) Client Access License (CAL)
  • Remote Desktop Services (RDS) Subscriber Access License (SAL)

FSLogix Technologien

Kurz aufgelistet die einzelnen FSLogix Komponenten.

Profile Container

Profile Container verschiebt im Grunde genommen alle Profildateien und -ordner in eine VHD / VHDX Datei im Netzwerk und hängt diese dann beim Anmelden als Container in das Zielsystem ein. Dies ersetzt die vorhandenen Profile Lösungen, in denen die Dateien übers Netzwerk in das Zielsystem kopiert werden, wie zum Beispiel Roaming Profile oder Universal Profile Management.

Office Container

Office Container leitet nur den Teil des Profils um, der Office Daten enthält. Hierdurch kann FSLogix parallel zu bereits implementierten Profile Lösungen verwendet werden. Diese Funktionalität ist nützlich für die Outlook OST-Datei, Teams Installer oder OneDrive Offline Dateien.

Application Masking

Application Masking verwaltet den Zugriff auf Anwendungen, Schriftarten, Drucker usw. Der Zugriff kann nach Benutzer, IP-Adressbereich und anderen Kriterien gesteuert werden. Dies reduziert die Anzahl und Komplexität von Golden Master Images erheblich.

FSLogix App Masking in Citrix Umgebungen

Java Version Control

Java Version Control ermöglicht es allen Anwendungen & Websites, mit der Java-Version zu arbeiten, die sie benötigen. Die ausgewählte Java-Version muss auf dem Client-Computer installiert sein. Mehrere Versionen von Java können nebeneinander installiert werden. Alles innerhalb desselben Client-Systems.

MSIX App Attach

MSIX App Attach ordnet Anwendungen, die im MSIX-Format an einem zentralen Ort gespeichert werden, dem Betriebssystem zu. Nach dem Anhängen sehen die Anwendungen, sowohl für den Benutzer als auch auf dem Betriebssystem als lokal installiert aus. Auf der Grundlage von Anwendungsgruppen können Anwendungen sofort, und ohne die Notwendigkeit der Bereitstellung eines neuen Golden Image, bereitgestellt werden.

Bei der Kombination von FSLogix Profile Container und MSIX App Attach bleibt das Betriebssystem völlig sauber und Daten, Profile, sowie Anwendungen sind vollständig getrennt.

MSIX App Attach mit Windows 10 Version 2004 in einer Citrix Umgebung

Einrichtung FSLogix Container

In diesem Blog betrachte ich nicht die komplette FSLogix Technologie Palette im Detail, sondern gehe erstmal nur auf die Features Profile & Office Container ein.

Wichtig !
Da die Container keinerlei Housekeeping durchführen, kann die Nutzung von z.B. Microsoft Teams dazu führen, das die Container sich erheblich aufblähen. Des weiteren verkleinert FSLogix den Container auch nicht, wenn Daten aus dem Container herausgelöscht werden.

Um diese Thematik zu umgehen, sollte das Shrink Script in regelmäßigen Abständen (z.B. als Geplanter Task) ausgeführt werden, um das aufblähen der Container zu unterbinden.

Architektur

Normalerweise werden in Non-Persistenten Umgebungen die Profile, dateibasierend bei der Anmeldung auf den Zielserver und bei der Abmeldung zurück auf den Dateiserver kopiert (Roaming Profile, UPM usw.). Durch die neusten Anforderungen (z.B. Teams oder OneDrive) an die Benutzerprofile, werden diese mittlerweile sehr groß und dadurch werden die An- und Abmeldezeiten oft inakzeptabel. Durch die FSLogix Container Architektur werden die Benutzerprofile in VHD(X)-Dateien platziert und an einem Netzwerkstandort gespeichert. Zur Laufzeit der Session wird dieser gemountet und dadurch die Wartezeit auf das Profile eliminiert.

Voraussetzungen

Ich setze die folgenden Dinge voraus und gehe nicht im Detail auf diese ein:

  • Installierte und Lizenzierte Citrix Umgebung (StoreFront, DDC usw.)
  • Eingerichtete Profile Lösung (hier UPM) für Office Container Feature
  • Installiertes Office365 für Office365 Container Feature
Office365 Installation auf Terminalserver (Shared Computer Activation)

Profile Container

Um das Profile Container Feature nutzen zu können, muss das entsprechende Paket auf dem Golden Master Image installiert und per GPO aktiviert werden.

Falls schon eine andere Profile Methode (Roaming, UPM usw.) genutzt und ersetzt werden soll, muss diese vor der Aktivierung von Profile Container deaktiviert (hier UPM über WEM) werden.

Migrationsmethoden

Um von vorhandene Profile Lösungen zu FSLogix Profile Container zu migrieren, gibt es verschiedene vorhandene Anleitungen.

UPM nach Profile Container

Local Profile nach Profile Container

UPD nach Profile Container

File Server

Wichtig !
Für eine optimale Leistung sollten sich der File Server und der Zielserver im selben Rechenzentrumsstandort befinden.
Schließen Sie die VHD(X)-Dateien für Profilcontainer von der Antivirenprüfung aus, um Leistungsengpässe zu vermeiden.
Für die Netzwerkbandbreite wird je nach Art der Nutzung empfohlen, zwischen 5 und 30 MBps pro Benutzer einzuplanen.

Ressourcen-Anforderung
Laufzeit 10 IOPS pro Benutzer
Anmeldung/Abmeldung 50 IOPS pro Benutzer

  • Erstellt auf eurem File Server einen Ordner für die Profile Container der Benutzer
  • Setzt die folgenden Berechtigungen.
User AccountFolderPermissions
CREATOR OWNERSubfolders and Files OnlyFull Control
SYSTEMThis Folder, Subfolders and FilesFull Control
AdministratorThis Folder, Subfolders and FilesFull Control
UsersThis Folder OnlyCreate Folders / Append Data
UsersThis Folder OnlyList Folder / Read Data
UsersThis Folder OnlyRead Attributes
UsersThis Folder OnlyTraverse Folder / Execute File
  • Aktiviert die Freigabe und setzt die Freigabeberechtigung für die Authenticated Users auf Change und Read.

Golden Master Image

  • Startet den Installer FSLogixAppsSetup
  • Klickt im folgenden Fenster auf „I agree to the license terms and conditions
  • Über den Punkt Options kann man den Pfad der Installation anpassen
  • Über Install startet ihr die Installation
  • Nach der Installation könnt ihr im Dienste Menü kontrollieren, das die FSLogix Dienste installiert sind und laufen

FSLogix Apps Service

  • Service name: frxsvc
  • Description: FSLogix Apps Service Component.
  • Path to executable: „C:\Program Files\FSLogix\Apps\frxsvc.exe“
  • Startup type: Automatic

FSLogix Cloud Caching Service

  • Service name: frxccds
  • Description: FSLogix Apps Cloud Caching Service Component.
  • Path to executable: „C:\Program Files\FSLogix\Apps\frxccds.exe“
  • Startup type: Automatic
  • Um die Ausführung des Agents auf dem Worker zu kontrollieren, sind folgenden Gruppen lokal im Worker erstellt worden
  • Über diese Gruppen kann definiert werden (White/Blacklistening) wer die Container Lösung nutzen darf
    • FSLogix ODFC –> Office Container
    • FSLogix Profile –> Profile Container
  • Standardmässig ist der Benutzer Jeder Mitglied der Include Gruppen
  • Zu Empfehlen ist hier, für die benötigten Include und Exclude Listen jeweils eine AD Gruppe zu erstellen und zu hinterlegen.
  • Diese Gruppen können lokal im Golden Master oder per Group Policy Preferences zentral hinterlegt werden

Active Directory Server

  • Kopiert die ADMX & ADML Datei aus dem extrahierten FSLogix Ordner
  • Fügt diese Dateien in euren PolicyDefinitions Ordner ein
  • Öffnet die Group Policy Management Console
  • Erstellt eine GPO in der OU eurer Worker Maschinen
  • Konfiguriert nun die von euch benötigten Einstellungen für Profile Container

Folgend die wichtigsten Einstellungen aus der FSLogix ADMX Datei.

/ Computer Configuration / Policies / Administrative Template / FSLogix / Profile Container

Enabled (Muss konfiguriert werden)

Über diesen Punkt wird das komplette Profile Container Feature aktiviert.

VHD location (Muss konfiguriert werden)

Eine Liste der Speicherort Standorte, an denen nach der VHD(X)-Datei des Profils für den Benutzer gesucht werden kann. Wenn ein Profile nicht gefunden wird, wird eines am ersten aufgeführten Standort erstellt. Wenn der VHD(X)-Pfad nicht existiert, wird er vor der Überprüfung erstellt.

Bei der Definierung des Standorts können Variablen genutzt werden, die bei der Erstellung aufgelöst werden sollen. Unterstützte Variablen sind %username%, %userdomain%, %sid%, %osmajor%, %osminor%, %osbuild%, %osservicepack%, %profileversion% und jede Umgebungsvariable des Zielsystems.

Size in MBs

Definiert die Größe der neu erstellten VHD(X)-Datei in MB. Je nach Art der Nutzung wird empfohlen, zwischen 5 und 15 GB pro Benutzer zu planen. Die Ursprünglich definierten 30 GB sollten definiert bleiben, da es sich hier nur um die maximale Grösse des Containers handelt und nicht um die direkt genutzte Grösse auf dem Datenträger, wennDynamic VHD(X) allocationaktiviert ist.

Eine Änderung dieser Einstellung wirkt sich nur auf neu erstellte Container aus. Bestehende Container müssen per Script erweitert werden.

Expand Container

Dynamic VHD(X) allocation

Wenn Dynamic VHD(X) allocation aktiviert ist, werden die VHD(X)-Dateien dynamisch zugewiesen. Das bedeutet das die Dateigröße der VHD(X)-Datei nur wächst, wenn Daten zum Profile Container hinzugefügt werden.

Wenn diese Option nicht aktiviert ist, werden denn automatisch erstellten VHD(X)-Dateien direkt der vollständig Datenspeicher Platz zugewiesen.

Profile type (Muss konfiguriert werden)

Normal direct-access profile

Der Client versucht bei der Anmeldung, die VHD(X)-Datei direkt anzuhängen (1 zu 1 Verbindung). Es werden keine Difference Disks verwendet. Wenn ein gleichzeitiger weiterer Zugriff versucht wird, schlägt er mit einer Freigabeverletzung fehl (Fehler 20). Bei der Abmeldung wird die VHD(X)-Datei wieder getrennt.

Read-write profile

Der Client versucht bei der Anmeldung die folgende Schritte durchzuführen:

  • Die Difference Disk RW.VHD(X) wird versucht mit Lese-/Schreibzugriff zu öffnen. Wenn dies erfolgreich ist, wird die Difference Disk mit der übergeordneten Profile Disk zusammengeführt. Wenn die Zusammenführung abgeschlossen ist, wird die Datei RW.VHD(X) gelöscht.
  • Es wird eine neue RW.VHD(X) Difference Disk erstellt
  • Die neue RW.VHD(X)-Datei wird als Profil Disk angehängt

Bei der Abmeldung werden die folgende Schritte durchgeführt:

  • Die RW.VHD(X) Difference Disk (lokale Profile Disk) wird getrennt
  • Es wird versucht die Difference Disk RW.VHD(X) mit Lese-/Schreibzugriff zu öffnen. Wenn dies erfolgreich ist, führt es die Difference Disk mit der Profile Disk zusammen. Wenn die Zusammenführung abgeschlossen ist, wird die Datei RW.VHD(X) gelöscht.

Die RW Difference Disk wird im Netzwerk direkt bei der Profile Disk gespeichert.

Read-only profile

Der Client versucht bei der Anmeldung die folgende Schritte durchzuführen:

  • Es wird versucht die vorherige RO-Difference Disk zu löschen (falls vorhanden)
  • Eine neue RO-Difference Disk wird erstellt
  • Die neue RO-Difference Disk wird als Profil Disk des Benutzers angehängt

Bei der Abmeldung werden die folgende Schritte durchgeführt:

  • Die RO-Difference Disk (lokale Profile Disk) wird getrennt
  • Die RO-Difference Disk wird gelöscht

Die RO Difference Disks werden im lokalen Temp-Verzeichnis des Clients gespeichert und heißen %usersid%_RO.VHD(X).

Try for read-write profile and fallback to read-only

Der Client prüft, ob eine RW.VHD(X)-Datei existiert. Wenn keine Datei vorhanden ist führt er die gleichen Schritte wie bei Read-write profile aus. Wenn die Datei RW.VHD(X) vorhanden ist, übernimmt der Client die Rolle Read-only profile und führt diese Schritte aus.

Wichtig !
Beachtet folgende Limitierungen bei der Konfiguration von Multiplen Zugriffen auf einen Container (Nicht Normal direct-access Profile), wenn kein Office Container parallel genutzt wird:

  • Microsoft OneDrive unterstützt keine Multiplen Verbindungen, dies kann zu Datenverlust führen.
  • Microsoft Outlook (OST-Dateien) bietet eingeschränkte Unterstützung für Multiple Verbindungen.

Store search database in profile container

Windows Search Service muss gestartet und auf automatisch gesetzt sein für dieses Feature. Verzögerter Start darf nicht aktiviert sein. Das Citrix Provisioning Server Optimization Programm deaktiviert den Windows Search Service und daher sollte dies per GPO wieder aktiviert werden.

Diese Option sollte bei Windows Server 2019 Betriebssystemen nicht genutzt werden, da dies zu Fehlern führen kann.

In Windows Server 2019 nutzt bitte den folgenden Artikel von James Kindon, um dies zu implementieren.

Windows Search in Server 2019 and Multi-Session Windows10

Multi-user search

Mit Multi-user search wird der Benutzerteil des Suchindexes extrahiert und im Profile Container gespeichert. Der benutzerspezifische Teil der .edb-Datei, der die Outlook-Suche übernimmt, wird extrahiert und in den Profile Container eingebunden. Der benutzerspezifische Teil der .edb-Datei und die zur Unterstützung der Suche notwendigen Dateien werden im Ordner \WSearch in der VHD(X) gespeichert.

Diese Funktion ermöglicht das Roaming der Outlook-Suchinformationen eines Benutzers übere mehrere Systeme.

Single-user search

Durch Single-user search wird die gesamte Suchdatenbank im Profile Container des Benutzers gespeichert. Die .edb-Datei aus dem Ordner ProgramData wird also in den Profile Container des Benutzers eingebunden. Die umgeleitete .edb-Datei und die zur Unterstützung der Suche notwendigen Dateien werden im Ordner \WSearch auf der VHD(X) gespeichert.

Durch das Umleiten der Windows-Suchdatenbank ist die Windows-Suche sofort nach der Anmeldung verfügbar und es muss keine erneute Indizierung durchgeführt werden.

Set Outlook cached mode on successful container attach

Wenn dieses Feature aktiviert ist und der Profile Container erfolgreich angehängt wurde, wird die Outlook-Einstellung, die den Cache-Modus aktiviert, vorübergehend für die laufende Session gesetzt, bis der Container entfernt wird. Auf diese Weise kann sichergestellt werden, dass der Cache-Modus nur dann verwendet wird, wenn der Container angehängt ist.

Delete local profile when FSLogix Profile should apply

Wenn dies aktiviert ist, wird das lokale Profile des Benutzer dauerhaft gelöscht, wenn für diesen Profile Container aktiviert ist. Der Benutzer wird daraufhin dann mit dem FSLogix-Profil angemeldet.

Allow concurrent user sessions

Diese Einstellung sollte verwendet werden, wenn das Zielsystem Multi-Session ist und die gleichzeitige Anmeldungen für dasselbe Windows-Konto auf demselben Server zulässt.

/ Computer Configuration / Policies / Administrative Template / FSLogix / Profile Container / Advanced

Provide RedirXML file to customize redirections

Hier wird die Datei redirections.xml hinterlegt, mit der definiert wird, welche Dateien und Ordner nicht im Profile Container gespeichert werden sollen.

Bei der Anmeldung kopiert der FSLogix-Agent die Datei redirections.xml vom angegebenen Speicherort nach <Profile>\AppData\Local\FSLogix (innerhalb der VHD(x)) und verarbeitet sie sofort. Der Benutzer muss Leserechte für die Datei haben.

Typischerweise befindet sich dieser Speicherort im Stammverzeichnis oder in einem Unterverzeichnis des Speicherorts, in dem die Profile gespeichert sind: \\<FileServer>\\Container$\Redirection\ (die redirections.xml würde im Redirection Ordner abgelegt).

Die Grundstruktur der redirections.xml Datei ist wie folgt:

XHTML

1

2

3

4

5

6

7

8

9

10

11

<?xml version="1.0" encoding="UTF-8"?>

<FrxProfileFolderRedirection ExcludeCommonFolders="<OPTIONAL>">

<Excludes>

<Exclude Copy="<VALUE>">AppData\Low\FolderToDiscard\</Exclude>

<Exclude>… another exclude folders… </Exclude>

</Excludes>

<Includes>

<Include>AppData\Low\FolderToDiscard\FolderToKeep</Include>

<Include>… another include folders… </Include>

</Includes>

</FrxProfileFolderRedirection>

Was Included / Excluded ist, wird nur beim Einloggen berücksichtigt. Wenn Änderungen vorgenommen werden, muss eine Abmelde-/Anmeldesequenz durchgeführt werden, um die Dateien zu synchronisieren.

Es können eine beliebige Anzahl von Elementen in den Tags Includes und Excludes angegeben werden. Ordner sind nur relativ zum Benutzerprofil (deshalb wird AppData in diesem Beispiel gezeigt).

Exclude Ordner werden zur Basis umgeleitet (d.h. zum von FSLogix erstellten Ordner \Users\local_%username%) und Include Ordner werden verwendet, wenn bestimmte Ordner im virtuellen Profil bleiben sollen. Includes werden normalerweise verwendet, wenn ein kompletter Ordner umgeleitet wird und nur einige Unterordner nicht ausgeschlossen werden sollen.

<OPTIONAL> sollte durch einen der folgenden Werte ersetzt werden:

Wenn das Attribut ExcludeCommonFolders angegeben ist, werden Ordner, die durch den Bitmaskenwert angegeben sind, ausgeschlossen, so dass sie lokal umgeleitet werden.

1 = Contacts Ordner
2 = Desktop Ordner
4 = Documents Ordner
8 = Downloads Ordner
16 = Links Ordner
32 = Music and Podcasts Ordner
64 = Pictures and Videos Ordner
128 = Ordner wie z.B. AppData\LocalLow

Wenn Sie beispielsweise den Ordner Contacts & Links ausschließen möchten, stellen Sie den Wert 17 (1+16) ein.

Wenn vermieden werden soll, dass Daten aus einen Common Folder von / zur Basis kopiert werden, können Sie ein Exclude-Element setzen. Excludes haben Vorrang zu ExcludeCommonFolders.

Wenn derselbe Ordner als Exclude und als Include Element angegeben ist, hat der Exclude Priorität.

<VALUE> sollte durch einen der folgenden Werte ersetzt werden:

0 = Es werden keine Dateien ein- oder ausgelagert. Nur die Ordner werden im Verzeichnis local_<user_name> angelegt.
1 = Dateien werden in das lokale Profil kopiert. Jede vorhandene Datei in einem Exclude Ordner wird in das lokale Profil kopiert.
2 = Dateien werden wieder in das virtuelle Profil kopiert. Jede geänderte Datei im lokalen Profil wird beim Abmelden des Benutzers wieder in den Profile Container kopiert.
3 = Dateien werden von & in das lokale Profil kopiert. Kombination von Wert 1 und 2.

Wichtig !
Redirections sollten nur minimal eingesetzt werden, da diese einen immensen negativen Effekt auf die benötigten iOPS hat. Die Größe des Containers hat keinen negativen Einfluss auf die Anmeldegeschwindigkeit.

Diese Funktion sollte nicht genutzt werden, um das Profile stark zu beschneiden, wie z.B. bei UPM, oder um Platzsparende Profile zu erstellen. Wenn weniger Speicherplatz pro Profile verbraucht werden soll, sollen Datei basierende Profilelösungen, wie UPM genutzt werden.

Wichtig !
Folgender Pfad sollte nicht exkludiert werden:

AppData\Local\GroupPolicy

/ Computer Configuration / Policies / Administrative Template / FSLogix / Profile Container / Container and Directory Naming

Virtual disk type

Definiert den Typ der automatisch erstellten Profile Container Datei (VHDX oder VHD). Hier sollte VHDX konfiguriert werden.

Swap directory name components

Wenn es aktiviert ist, werden neue Verzeichnisse mit dem Benutzernamen zuerst, gefolgt von der SID, benannt.

Die Standardeinstellung ist %SID%_%USERNAME% und daher bei der Suche nach einem bestimmten User eher ärgerlich. Wenn man diese Einstellung im Nachgang ändert werden bestehende Container nicht angefasst und daher neu erstellt. Mit dem folgenden Script kann dies im voraus umbenannt und die Container verschoben werden.

Migration von SID_Username zu Username_SID

Ergebnis

Nach erfolgreicher Einrichtung, kann man sich das Ergebnis wie folgt anschauen.

  • Startet compmgmt.msc über cmd oder Ausführen
  • Unter Disk Management seht ihr nun den angehängten Profile Container (hier Profile-manuel)
  • Klickt mit der rechten Maustaste auf die Profile Disk und ordnet diesem einen Laufwerksbuchstaben zu
  • Nun könnt ihr auf das Laufwerk zugreifen und die Daten prüfen

Office Container

Der Office Container ist eine Unterart des Profile Container. Obwohl alle Vorteile des Office Container auch im Profile Container zur Verfügung stehen, kann es manchmal vorteilhaft sein, sie gemeinsam zu nutzen.

  1. Unterschiedliche Datenklasse (Backup des Profile Container und kein Backup für Office Container)
  2. Office Container benötigt höhere IOPS

Um das Office Container Feature nutzen zu können, muss das entsprechende Paket auf dem Golden Master Image installiert und per GPO aktiviert werden.

Office365 Container kann parallel zu vorhanden Profile Methoden (Roaming, UPM usw.) genutzt werden .

File Server

  • Erstellt auf eurem File Server einen Ordner für die Office365 Container der Benutzer
  • Setzt die folgenden Berechtigungen.
User AccountFolderPermissions
CREATOR OWNERSubfolders and Files OnlyFull Control
SYSTEMThis Folder, Subfolders and FilesFull Control
AdministratorThis Folder, Subfolders and FilesFull Control
UsersThis Folder OnlyCreate Folder / Write Data
UsersThis Folder OnlyList Folder / Read Data
UsersThis Folder OnlyRead Attributes
UsersThis Folder OnlyTraverse Folder / Execute File
  • Aktiviert die Freigabe und setzt die Freigabeberechtigung für die Authenticated Users auf Change und Read.

Golden Master Image

  • Startet den Installer FSLogixAppsSetup
  • Klickt im folgenden Fenster auf „I agree to the license terms and conditions
  • Über den Punkt Options kann man den Pfad der Installation anpassen
  • Über Install startet ihr die Installation
  • Nach der Installation könnt ihr im Dienste Menü kontrollieren, das die FSLogix Dienste installiert sind und laufen
  • Um die Ausführung des Agents auf dem Worker zu kontrollieren, sind folgenden Gruppen lokal im Worker erstellt worden
  • Über diese Gruppen kann definiert werden (White/Blacklistening) wer die Container Lösung nutzen darf
    • FSLogix ODFC –> Office Container
    • FSLogix Profile –> Profile Container
  • Standardmässig ist der Benutzer Jeder Mitglied der Include Gruppen
  • Zu Empfehlen ist hier, für die benötigten Include und Exclude Listen jeweils eine AD Gruppe zu erstellen und zu hinterlegen.
  • Diese Gruppen können lokal im Golden Master oder per Group Policy Preferences zentral hinterlegt werden

Active Directory Server

  • Kopiert die ADMX & ADML Datei aus dem extrahierten FSLogix Ordner
  • Fügt diese Dateien in euren PolicyDefinitions Ordner ein
  • Öffnet die Group Policy Management Console
  • Erstellt eine GPO in der OU eurer Worker Maschinen
  • Konfiguriert nun die von euch benötigten Einstellungen für Office 365 Container


Folgend die wichtigsten Einstellungen aus der FSLogix ADMX Datei.

/ Computer Configuration / Policies / Administrative Template / FSLogix / Office 365 Container

Enabled (Muss konfiguriert werden)

Über diesen Punkt wird das komplette Office365 Container Feature aktiviert.

VHD location (Muss konfiguriert werden)

Eine Liste der Speicherort Standorte, an denen nach der VHD(X)-Datei des Office365 Container für den Benutzer gesucht werden kann. Wenn der Container nicht gefunden wird, wird einer am ersten aufgeführten Standort erstellt. Wenn der VHD(X)-Pfad nicht existiert, wird er vor der Überprüfung erstellt.

Bei der Definierung des Standorts können Variablen genutzt werden, die bei der Erstellung aufgelöst werden sollen. Unterstützte Variablen sind %username%, %userdomain%, %sid%, %osmajor%, %osminor%, %osbuild%, %osservicepack%, %profileversion% und jede Umgebungsvariable des Zielsystems.

Size in MBs

Definiert die Größe der neu erstellten VHD(X)-Datei in MB. Je nach Art der Nutzung wird empfohlen, zwischen 2 und 5 GB Inhalt pro Benutzer zu planen. Die Ursprünglich definierten 30 GB sollten definiert bleiben, da es sich hier nur um die maximale Grösse des Containers handelt und nicht um die direkt genutzte Grösse auf dem Datenträger, wenn Dynamic VHD(X) allocation aktiviert ist.

Eine Änderung dieser Einstellung wirkt sich nur auf neu erstellte Container aus. Bestehende Container müssen per Skript erweitert werden.

Expand Container

Dynamic VHD(X) allocation

Wenn Dynamic VHD(X) allocation aktiviert ist, werden die VHD(X)-Dateien dynamisch zugewiesen. Das bedeutet das die Dateigröße der VHD(X)-Datei nur wächst, wenn Daten zum Office365 Container hinzugefügt werden. Wenn diese Option nicht aktiviert ist, werden denn automatisch erstellten VHD(X)-Dateien direkt der vollständig Datenspeicher Platz zugewiesen.

Virtual disk type

Definiert den Typ der automatisch erstellten Container Datei (VHDX oder VHD). Hier sollte VHDX konfiguriert werden.

VHD access type

Difference disk stored on local machine

Bei der Anmeldung werden die folgenden Schritte durchgeführt:

  • Er versucht, eine vorherige Difference Disk (%usersid%_ODFC.VHD(X)) für diesen Benutzer aus dem temporären Ordner zu entfernen.
  • Es wird eine neue Difference Disk namens %usersid%_ODFC.VHD(X) erstellt. Diese Difference Disk wird im Temp Verzeichnis erstellt.
  • Der Client hängt die Difference Disk als O365 VHD an.

Bei der Abmeldung werden folgende Schritte durchgeführt:

  • Die O365 Difference Disk wird getrennt.
  • Es wird versucht, die Difference Disks zusammenzuführen. Der Zusammenschluss kann nur erfolgreich durchgeführt werden, wenn die letzte Sitzung des Benutzers beendet wurde.
  • Die Difference Disk wird gelöscht.
Difference disk stored on network

Bei der Anmeldung:

  • Es wird versucht, die Difference Disk merge.vhd(x) mit Lese-/Schreibzugriff zu öffnen. Wenn dies erfolgreich ist, führt es die Difference Disk mit dem ursprünglichen Office 365 Container zusammen. Wenn die Zusammenführung abgeschlossen ist, wird die Difference Disk gelöscht.
  • Alle vorherigen Difference Disks für das angemeldete System (%Computername%_ODFC.VHD(X)) werden gelöscht.
  • Eine neue Difference Disk namens %computername%_ODFC.VHD(X) wird erstellt. Diese Difference Disk wird auf der Netzwerkfreigabe neben der übergeordneten VHD(X)-Datei erstellt.
  • Die Difference Disk wird als O365 VHD angehängt.

Bei der Abmeldung:

  • Die Difference Disk wird getrennt.
  • Die Difference Disk wird in merge.vhd(x) umbenannt. Wenn diese Umbenennung erfolgreich ist, wird versucht, die Difference Disks zusammenzuführen. Der Zusammenschluss kann nur erfolgreich durchgeführt werden, wenn die letzte Sitzung des Benutzers beendet wurde.
  • Die Difference Disk wird gelöscht.
Direct access

Bei der Anmeldung wird versucht, die VHD(X) Datei direkt anzuhängen. Es werden keine Difference Disks verwendet (Dies ist eine 1 zu 1 Verbindung). Wenn ein gleichzeitiger Zugriff versucht wird, schlägt er mit einer Freigabeverletzung fehl (Fehler 20).

Beim abmelden wird die VHD(X) getrennt.

Wichtig !
Beachtet folgende Limitierungen bei der Konfiguration von Multiplen Zugriffen auf einen Container (Nicht bei Direct Access oder Unique Disk per Session):

  • Microsoft OneDrive unterstützt keine Multiplen Verbindungen, dies kann zu Datenverlust führen
  • Microsoft Outlook (OST-Dateien) bietet eingeschränkte Unterstützung für Multiple Verbindungen
Unique disk per session

Bei dieser Methode wird keine Parent Disk erzeugt und jeder Container wird initial leer erzeugt. Die Daten aus den Session Containern werden auch nicht zentral zusammengeführt und können daher unterschiedlich sein, aber deswegen wird dieser Modus auch mit OneDrive und für OST-Dateien unterstützt.

Die VHD(X)-Dateien werden ODFC-%username%-SESSION-<sessionnumber>.VHD(X) genannt, wobei sessionnumber eine ganze Zahl von 0 – 9 ist.

Die maximale Anzahl der VHD(X)-Dateien pro Sitzung beträgt 10.

Beim anmelden werden die folgenden Schritte ausgeführt:

  • Es wird nach einer VHD(X) Datei für die Sitzung gesucht, die derzeit nicht verwendet wird.
  • Wenn eine gefunden wird, wird sie direkt angehängt und verwendet.
  • Wenn keine freie gefunden wird, wird eine neue erstellt und verwendet.
  • Wenn eine neue VHD erstellt wird und damit die Anzahl der VHDs pro Sitzung größer ist als die angegebene Anzahl unter Number of per-Session VHDs to persist, wird diese VHD(X) zum Löschen markiert und beim Abmelden gelöscht.

Bei der Abmeldung:

  • Die VHD(X) Datei wird getrennt.
  • Wenn die VHD(X) zum Löschen markiert ist, wird sie gelöscht.

Wichtig !
Beachtet folgende Limitierungen bei der Konfiguration von Multiplen Zugriffen auf einen Container (Nicht bei Direct Access oder Unique Disk per Session):

  • Microsoft OneDrive unterstützt keine Multiplen Verbindungen, dies kann zu Datenverlust führen.
  • Microsoft Outlook (OST-Dateien) bietet eingeschränkte Unterstützung für Multiple Verbindungen.

Es können vorhandene Difference Disk Container migriert werden in Unique Disk per Session, damit der Inhalt nicht erneut komplett aus der Cloud heruntergeladen werden muss. Mit dem folgenden Script kann einer oder mehrere Session Container erstellt werden (Der bestehende Container kann gelöscht werden oder wird nicht angerührt).

Script zur Migration

Wichtig !
Kopiert diese neuen Unique Disk per Session Container nicht in den selben Ordner wie die bestehenden Difference Disk Container.

Wenn beide Methoden auf den gleichen Pfad zugreifen, wird die Methode gewinnen, die als erstes genutzt wird. Die andere Methode kann keinen Container mehr benutzen.

Wenn keine Difference Disk Container mehr vorhanden sind im Verzeichnis, und ein Computer diese Methode versucht zu nutzen, wird der Unique Disk per Session Container, wenn nicht schon in Benutzung, dafür missbraucht. Der Session Container wird als Parent Disk, für dann neu erstellte Difference Disk genommen.

Number of per-Session VHDs to persist

Diese Einstellung wird verwendet, wenn der VHD Access type auf Unique disk per session gesetzt ist. Dies steuert die Anzahl der Session VHDs, die persistent sind.

Wenn dies beispielsweise auf ‚2‘ gesetzt ist und der Benutzer eine dritte Sitzung erstellt, wird eine neue Session-VHD erstellt und verwendet, die jedoch nach Beendigung der dritten Sitzung gelöscht wird.

Sync OST to VHD

Wie soll mit vorhandenen lokalen OST-Dateien umgegangen werden.

Copy OST to VHD

Vorhandene lokale OST-Datei (falls vorhanden) wird in die Office365 Container VHD(X) Datei synchronisiert.

Do not mirror OST to VHD

Vorhandene lokale OST-Datei wird nicht in den Office365 Container verschoben.

Move OST to VHD

Vorhandene lokale OST-Datei (falls vorhanden) wird initial in die Office365 Container VHD(X) Datei verschoben.

Store search database in Office 365 container

Windows Search Service muss gestartet und auf automatisch gesetzt sein für dieses Feature. Verzögerter Start darf nicht aktiviert sein. Das Citrix Provisioning Server Optimization Programm deaktiviert den Windows Search Service und daher sollte dies per GPO wieder aktiviert werden.

Diese Option sollte bei Windows Server 2019 Betriebssystemen nicht genutzt werden, da dies zu Fehlern führen kann.

Multi-user search

Mit Multi-user search wird der Benutzerteil des Suchindexes extrahiert und im Office365 Container gespeichert. Der benutzerspezifische Teil der .edb-Datei, der die Outlook-Suche übernimmt, wird extrahiert und in den Office365 Container eingebunden. Der benutzerspezifische Teil der .edb-Datei und die zur Unterstützung der Suche notwendigen Dateien werden im Ordner \WSearch in der VHD(X) gespeichert.

Diese Funktion ermöglicht das Roaming der Outlook-Suchinformationen eines Benutzers über mehrere Systeme.

Single-user search

Durch Single-user search wird die gesamte Suchdatenbank im Office365 Container des Benutzers gespeichert. Die .edb-Datei aus dem Ordner ProgramData wird also in den Office365 Container des Benutzers eingebunden. Die umgeleitete .edb-Datei und die zur Unterstützung der Suche notwendigen Dateien werden im Ordner \WSearch auf der VHD(X) gespeichert.

Durch das Umleiten der Windows-Suchdatenbank ist die Windows-Suche sofort nach der Anmeldung verfügbar und es muss keine erneute Indizierung durchgeführt werden.

Set Outlook cached mode on successful container attach

Wenn dieses Feature aktiviert ist und der Office365 Container erfolgreich angehängt wurde, wird die Outlook-Einstellung, die den Cache-Modus aktiviert, vorübergehend für die laufende Session gesetzt, bis der Container entfernt wird. Auf diese Weise kann sichergestellt werden, dass der Cache-Modus nur dann verwendet wird, wenn der Container angehängt ist.

Allow concurrent user sessions

Diese Einstellung sollte verwendet werden, wenn das Zielsystem Multi-Session ist und die gleichzeitige Anmeldungen für dasselbe Windows-Konto auf demselben Server zulässt.

Include OneDrive data in container

Aktiviert wird der OneDrive Cache in den Office365 Container aufgenommen.

Wichtig !
Ab der FSLogix Version 2009 unterstützt FSLogix die Abarbeitung mehrere Business Accounts und von Personal OneDrive Konten. Vor der Version 2009 wurde nur ein einziges Business Konto unterstützt.

Include Teams data in container

Wenn Aktiviert werden die Teams Dateien in den Office365 Container aufgenommen.

Include Office activation data in container

Wenn dies aktiviert ist, werden die Aktivierungsdaten der Office Lizenz im Office365 Container gespeichert.

Include Outlook data in container

Aktiviert werden die Outlook Datendateien in den Office365 Container aufgenommen.

/ Computer Configuration / Policies / Administrative Template / FSLogix / Office 365 Container / Container and Directory Naming

Swap directory name components

Wenn es aktiviert ist, werden neue Verzeichnisse mit dem Benutzernamen zuerst, gefolgt von der SID, benannt.

Die Standardeinstellung ist %SID%_%USERNAME% und daher bei der Suche nach einem bestimmten User eher ärgerlich. Wenn man diese Einstellung im Nachgang ändert werden bestehende Container nicht angefasst und daher neu erstellt. Mit dem folgenden Script kann dies im voraus umbenannt und die Container verschoben werden.

Migration von SID_Username zu Username_SID

Bestehende Profile Lösung

Folgende Pfade solltet ihr in eurer bestehenden Profile Lösung ausschliessen, damit Office365 Container sauber funktioniert.

OneDrive

%USERPROFILE%\AppData\Local\Microsoft\OneDrive

%USERPROFILE%\OneDrive –<TenantName>

Outlook

%USERPROFILE%\AppData\Local\Microsoft\Outlook

Ergebnis

Nach erfolgreicher Einrichtung, kann man sich das Ergebnis wie folgt anschauen.

  • Startet compmgmt.msc über cmd oder Ausführen
  • Unter Disk Management seht ihr nun den angehängten Office365 Container (hier O365-mwinkel)
  • Klickt mit der rechten Maustaste auf die Office365 Disk und ordnet diesem einen Laufwerksbuchstaben zu
  • Nun könnt ihr auf das Laufwerk zugreifen und die Daten prüfen

Update bestehender FSLogix Installation

Da ich mit mehreren Version von FSLogix, keine guten Erfahrungen mit Inplace Upgrades gemacht habe, hier meine Empfehlung für den Update Ablauf.

  • Ersetzen der FSLogix ADMX Dateien
  • Deinstallation der vorhandenen FSLogix Komponenten
  • Neustart der Maschine
  • Installation der neuen FSLogix Version

Troubleshooting

Einige Notizen zum Troubleshooting bezüglich FSLogix.

Log Standort

Die Log Dateien werden unter dem folgenden Pfad im Zielsystem gespeichert. Über die GPO kann definiert werden, welche Logs erstellt werden.

C:\ProgramData\FSLogix\

FSLogix Tools

Unter dem folgenden Pfad befinden sich noch zwei weitere nützliche Tools.

C:\Program Files\FSLogix\Apps

FSLogix Profile Status

Hinter der frxtray.exe versteckt sich das FSLogix Profile Status Tool. In der Basic View zeigt es nur den Verbrauch eines Profile Containers an. Die Screenshots sind aus einer Umgebung nur mit Office Container, daher die Gelbe Ampel und keine Anzeige bezüglich Speicherverbrauch.

FSLogix Container (Office/Profile) in Citrix Umgebungen – Deyda.net (61)

Diese Anzeige kann noch erweitert werden, durch klick auf Advanced View. In der Advanced View sehen wir unter Events alle FSLogix bezogenen Einträge im lokalen Event Viewer.

FSLogix Container (Office/Profile) in Citrix Umgebungen – Deyda.net (62)

Unter Logs werden die oben genannten Log Files ausgelesen. Hinter ODFC befindet sich der Office Container.

FSLogix Container (Office/Profile) in Citrix Umgebungen – Deyda.net (63)

FSLogix Profiles Configuration Tool

Hinter der ConfigurationTool.exe versteckt sich das FSLogix Profiles Configuration Tool. Diese Tool wurde in der Vergangenheit zur Konfiguration von Profile Container genutzt.
Ich persönlich nutze es heutzutage nur noch um redirection.xml zu erzeugen. Hierfür muss ein vorhandener Container geladen werden und danach kann man sich die Einträge erstellen.

FSLogix Container (Office/Profile) in Citrix Umgebungen – Deyda.net (64)

Anti-Virus Ausnahmen

Zielsystem (Worker)

Exkludierte Dateien & Ordner

  • %Program Files%\FSLogix\Apps\frxdrv.sys
  • %Program Files%\FSLogix\Apps\frxdrvvt.sys
  • %Program Files%\FSLogix\Apps\frxccd.sys
  • %TEMP%\*.VHD
  • %TEMP%\*.VHDX
  • %Windir%\TEMP\*.VHD
  • %Windir%\TEMP\*.VHDX
  • \\server\share\*\*.VHD
  • \\server\share\*\*.VHDX

Exkludierte Prozesse

  • %Program Files%\FSLogix\Apps\frxsvc.exe
  • %Program Files%\FSLogix\Apps\frxccd.exe
  • %Program Files%\FSLogix\Apps\frxccds.exe

FileServer

  • VHD(X) Verzeichnis, inklusive Unterverzeichnis

Registry

In der Registry kann geprüft werden, welche Einstellungen momentan gezogen werden. Diese sind ersichtlich unter folgendem Registry Pfad.

Profile Container

HKLM\SOFTWARE\FSLogix\Profiles

Registry Reference

Office Container

HKLM\SOFTWARE\Policies\FSLogix\ODFC

Registry Reference

Cloud Cache

HKLM\SYSTEM\CurrentControlSet\Services\frxccd\Parameters

HKLM\SYSTEM\CurrentControlSet\Services\frxccds\Parameters

Registry Reference

Grösse der Container

Hier ein Skript (Danke an Jim Moyle) um vorhandene Container zu verkleinern, nachdem zum Beispiel der Inhalt gelöscht wurde.

Shrink Script

Richtet dies auf dem jeweiligen File Server oder einem Admin Server ein.


Hier abgebildet das Shrink Script als mehrfach am Tag angesprochener Geplanter Task.


Und ein Skript (Danke an Kasper Johansen) zum Vergrößern der Container, falls diese am Anfang zu klein gesized worden sind.

Expand Script

Fehlendes Startmenü bei zweiter Anmeldung

Wenn der Pfad \AppData\Local\GroupPolicy in Profile Containern exkludiert wird, kann dies zu schwerwiegenden Fehlern in der Session führen (Event ID 1085). Weitere Informationen und Lösungen sind im folgenden Artikel von James Rankin zu finden.

Related posts:

  1. Office365 Installation auf Terminalserver (Shared Computer Activation)
  2. Aktivierung von Office365 über mehrere Citrix Worker (Activation Token Roaming)
FSLogix Container (Office/Profile) in Citrix Umgebungen – Deyda.net (2024)

FAQs

How do I access my FSLogix profile container? ›

Profile Container (PC) is enabled via a simple registry entry in HKLM\SOFTWARE\FSLogix\Profiles after it is downloaded and installed. Here you enable the Profile Container and point it at a UNC of a file share location where the profile VHD file will be created when users log in.

What is the Citrix Profile Management Profile Container? ›

The Citrix Profile Management Profile Container is a VHDX-based profile solution that allows you to store the profile folders of your choice or the entire user profile on the VHDX profile disk. A VHDX file is created per user on your profile storage share and mounted to the VDA session when the users log on.

What is FSLogix citrix? ›

FSLogix enhances and enables a consistent experience for Windows user profiles in virtual desktop computing environments. FSLogix isn't limited to virtual desktop environments, but could be used on physical desktops where a more portable user experience is desired.

How do I enable multi-session write back for profile containers in Citrix? ›

Open the Group Policy Management Editor. Under Computer Configuration > Administrative Templates > Citrix Components > Profile Management > Advanced settings, double-click the Enable multi-session write-back for profile containers policy.

How does FSLogix profile container work? ›

Using the profile container in a single container configuration is highly recommended. FSLogix profile containers are a complete roaming profile solution for virtual environments. The profile container (single container), redirects the entire Windows user profile into a VHD stored on a storage provider.

Is FSLogix profile a Windows temporary profile? ›

An FSLogix temporary profile is created when Windows can't find the existing user profile and it's not possible to create a new user profile based on the default profile. A temporary profile gets deleted when you log off of the endpoint device.

What is a container profile? ›

Container Profiles allow the archivist to record information about a specific type of container, which is used by Alma in its Internal Note 2 field to record dimensions about a physical item (used by HC staff in space planning) and by ArchivesSpace to calculate the extent of a collection in linear feet.

What is the default profile in Citrix? ›

If a user has no Citrix user profile, but a local or roaming Windows user profile exists, by default the local profile is used. And the local profile is migrated to the user store, if this policy is not disabled.

Where are Citrix profiles stored? ›

User profiles are fetched from the remote user store to the local computer on logon and written back on logoff. Container-based. User profiles are stored in profile containers. Those containers are attached on logon and detached on logoff.

Why do I need FSLogix? ›

We recommend using FSLogix profile containers with Azure Virtual Desktop to manage user profiles and personalization. FSLogix is designed to roam profiles in remote computing environments, such as Azure Virtual Desktop. It stores a complete user profile in a single container.

Is FSLogix owned by Microsoft? ›

Microsoft acquires FSLogix to enhance the Office 365 virtualization experience. The way Microsoft 365 enables customers to shift to a modern desktop experience puts it at the heart of workplace transformation.

What is stored in FSLogix? ›

When enabled, FSLogix Profile Containers create a new container for each user the first time they log in. This container stores their local settings such as Start Menu shortcuts, bookmarks, and Microsoft Outlook account, as well as files saved to their Documents or Desktop folder.

How do I recreate a user profile in Fslogix? ›

Recreating The Users Profile

To create a new profile, login to the File Server, navigate to D:\Profile, and locate the profile folder for the user that you want to create a new profile for.

How do I migrate existing profiles in Citrix? ›

In the left pane of Citrix Studio, click Policies. In the Create Policy window, type the policy in the search box. For example, type “Automatic migration of existing application profiles.” Click Select to open the Automatic migration of existing application profiles policy.

How do I access my Azure storage container? ›

Sign in to at least one Azure account using the sign-in steps. In the Select Resource panel of the Connect to Azure Storage dialog, select Blob container, ADLS Gen2 container, or Queue. Select Sign in using Microsoft Entra ID and select Next.

Where are the storage locations for FSLogix profile containers? ›

By default, this will include the user's entire profile. Think of everything that would be in a user's C:\User\<username> folder and this will be stored in their FSLogix profile container. When a user logs in, the FSLogix app will go to the storage location and mount that user's profile container to the AVD host.

How do I access my ICC profile? ›

On all Windows Operating Systems, the profiles are located: C:\Windows\System32\spool\drivers\color. If you cannot find your profile in the default location, try a search for *.

Top Articles
Latest Posts
Recommended Articles
Article information

Author: Terrell Hackett

Last Updated:

Views: 5809

Rating: 4.1 / 5 (52 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Terrell Hackett

Birthday: 1992-03-17

Address: Suite 453 459 Gibson Squares, East Adriane, AK 71925-5692

Phone: +21811810803470

Job: Chief Representative

Hobby: Board games, Rock climbing, Ghost hunting, Origami, Kabaddi, Mushroom hunting, Gaming

Introduction: My name is Terrell Hackett, I am a gleaming, brainy, courageous, helpful, healthy, cooperative, graceful person who loves writing and wants to share my knowledge and understanding with you.