App Layering

Vorbereiten des Betriebssystemimage für Layering in Citrix Hypervisor, Hyper-V oder vSphere

Bevor Sie beginnen, stellen Sie sicher, dass Sie die Anforderungen erfüllen. Während Sie das Image vorbereiten, können Sie bei Bedarf einen Microsoft Ngen.exe -Vorgang beschleunigen, wennSie der Meinung sind, dass er zu lange dauert.

Wenn Sie Windows 10 verwenden, können Sie die Desktop-Startzeiten beschleunigen, solange Sie Citrix Provisioning, Maschinenerstellung oder VMware View nicht ausführen. In dieser Situation können Sie in Windows 10 integrierte Anwendungen entfernen. Wir empfehlen, die Apps auf einer neuen Version der Betriebssystemlayer und nicht im Betriebssystemimage selbst zu entfernen.

Hinweis:

Citrix Hypervisor unterstützt keine UEFI-basierten Maschinen.

Installieren des Betriebssystems auf einer virtuellen Maschine

Es ist wichtig, mit einem Betriebssystem zu beginnen, das neu von ISO installiert wurde, vorzugsweise von Ihrem Hypervisor.

Führen Sie in diesem Verfahren unbedingt die Schritte und Hinweise aus, die für die Windows-Version spezifisch sind, die Sie installieren.

  1. Melden Sie sich bei Ihrem Hypervisor-Client an.
  2. Erstellen Sie eine virtuelle Maschine mit den richtigen CPU-, Arbeitsspeicher-, Datenträger- und Netzwerkeinstellungen für Ihren Betriebssystemtyp. Anleitung:

    • Virtuelle Maschine von Citrix Hypervisor: Stellen Sie sicher, dass nur ein Netzwerk ausgewählt ist.
    • vSphere virtuelle Maschine:
      • Netzwerk: (Erforderlich) Wählen Sie den VMXNET 3-Netzwerkadapter aus.

      Wichtig:

      Sie können ein und nur ein Netzwerkgerät haben, und die E1000 NIC darf nie verwendet wordensein. Der standardmäßige E1000 Adapter (oder sogar eine Ghost-NIC, die von einem E1000 Adapter übrig bleibt) kann zu Anpassungszeitüberschreitungsfehlern auf den virtuellen Maschinen führen.

      • Thin Provision: Wählen Sie Thin Provider
    • Alle Hypervisoren:
      • Hard drive: Stellen Sie sicher, dass die Appliance auf die von Ihnen erstellte Festplatte zugreifen kann.
  3. Schließen Sie das ISO an und installieren Sie das Betriebssystem. Dieser Computer darf nicht mit der Domäne verbunden sein. Der Domänenbeitritt muss im Plattform-Layer erfolgen, und alle Änderungen der Domänengruppenmitgliedschaft müssen über Gruppenrichtlinien vorgenommen werden.
  4. Installieren Sie die Hypervisor-Tools für die Plattform, auf der Sie Layer verpacken möchten. Wenn Sie mehrere Hypervisoren unterstützen, setzen Sie die Tools für den Hypervisor im Plattformlayer ein, den Sie zum Veröffentlichen von Images verwenden möchten.

    • Hyper-V: Verwenden Sie die Microsoft Windows Integration Services-Setupdatenträger, um Hyper-V-Integrationsdienste zu installieren.

Wenn Sie ein Serverbetriebssystem verwenden, installieren Sie das Feature Remotedesktopsitzungshost

Wenn Sie einen Windows Server verwenden, müssen Sie die Funktion zum Host von Remotedesktopsitzungen installieren. Wenn die Rolle Remotedesktopsitzungshost im Betriebssystemlayer installiert ist, wird sie als Teil von Windows aktualisiert. Sie können die Rolle stattdessen mit dem VDA auf dem Plattformlayer installieren, wenn Sie es bevorzugen.

Wenn Sie RDS in des Betriebssystemlayers installieren, müssen Sie lokale Gruppenrichtlinienobjekte verwenden, um die RDS-Lizenzserver zu definieren. Andernfalls verlieren Sie im Laufe der Zeit die Möglichkeit, sich an Verpackungsmaschinen anzumelden.

So installieren Sie die Funktion des Sitzungshosts:

  1. Wählen Sie im Server-Manager die Option Rollen und Funktionen hinzufügen aus.
  2. Wählen Sie für den Installationstyp die Option Rollenbasierte oder funktionsbasierte Installation.
  3. Wählen Sie für die Serverrolle Remotedesktopdienste > Remotedesktop-Sitzungshost (installiert) aus. Dadurch werden die C++-Bibliothek und die RDS-Rolle installiert.
  4. Schließen Sie den Vorgang zum Hinzufügen der Serverrollen ab.

Stellen Sie sicher, dass die richtigen Versionen von .NET Framework installiert sind (Windows 10 und Windows Server 2016)

Das .NET Framework ist ein von Microsoft bereitgestelltes Software-Framework, das für die Ausführung vieler Drittanbieteranwendungen erforderlich ist. Jede Installation von .NET Framework muss in der Betriebssystemlayer enthalten sein. Dazu gehören .NET 3.5 und .NET 4.0 oder höher.

Hinweis:

.NET 4.8 wird von Citrix Virtual Apps and Desktops (CVAD) 2303 benötigt, um VDAs hinzuzufügen.

Stellen Sie sicher, dass Sie .NET Framework und alle Updates auf Ihrem Betriebssystemlayer installieren.

Installieren Sie Windows-Updates

Installieren Sie unbedingt alle Windows-Updates.

  1. Installieren Sie alle wichtigen Updates.
  2. Suchen Sie nach dem Neustart der virtuellen Maschine erneut nach Updates. Einige Updates wurden erst verfügbar, nachdem andere installiert wurden.
  3. Installieren Sie alle erforderlichen Service Packs:
    • Wenn Sie Windows 2008 mit Citrix Provisioning verwenden, installieren Sie Windows Server 2008 R2 Service Pack 1 (SP1).

      Hinweis:

      Wenn KB3125574 installiert ist, deinstallieren Sie es, bevor Sie dieses Service Pack installieren.

  4. Deaktivieren Sie automatische Updates von Windows und deaktivieren Sie die Windows-Systemwiederherstellung mit dem lokalen Gruppenrichtlinien-Editor gpedit.msc. Das System verarbeitet Wiederherstellungspunkte für Sie. Mit Layer-Versionen können Sie festlegen, wann Aktualisierungen stattfinden.
  5. Windows 10: Löschen Sie den Ruhezustand durch Eingabe dieses Befehls:

    powercfg.exe /hibernate off
    <!--NeedCopy-->
    
  6. Aktivieren Sie den integrierten Administrator und wählen Sie Kennwort läuft nie ab.
  7. Wenn Sie die Schlüsselverwaltungsdienst-Lizenz (Key Management Service, KMS) verwenden, führen Sie ein Befehlsfenster als Administrator aus, und geben Sie die folgenden Befehle ein:

    slmgr /skms <kmsserverhost>
    slmgr /rearm
    reboot
    slmgr /ipk XXXX-YOUR-KMS-KEY-XXXX
    slmgr /ato
    <!--NeedCopy-->
    
  8. Wenn Sie ein Serverbetriebssystem verwenden, führen Sie die folgenden Befehle in PowerShell aus:

    Set-ExecutionPolicy Unrestricted
    Enable-PSRemoting
    <!--NeedCopy-->
    

Beschleunigt einen Microsoft Ngen.exe-Vorgang, falls erforderlich

Sobald alle Softwareupdates installiert wurden, müssen Sie Ngen.exe erlauben, .NET-Byte-Code im Wesentlichen in native Images neu zu kompilieren und die Registrierungseinträge zu erstellen, um sie zu verwalten.

Ngen.exe ist der Microsoft Native Image Generator, der Teil des Systems .NET ist. Windows bestimmt, wann Ngen.exe ausgeführt werden soll, basierend darauf, welche Software installiert wird und was Windows in der Konfiguration erkennt.

Wichtig:

Wenn Ngen.exe läuft, müssen Sie es abschließen lassen. Ein unterbrochener Ngen.exeVorgang kann zu nicht funktionierenden .NET-Assemblies oder anderen Problemen im .NET-System führen.

Normalerweise ist Ngen.exe eine Hintergrundoperation, die pausiert, wenn Vordergrundaktivitäten auftreten. Wenn Sie eine Ngen.exe-Operation beschleunigen möchten, können Sie die Aufgabe in den Vordergrund rücken, um sie so schnell wie möglich abzuschließen.

So stellen Sie die Aufgabe in den Vordergrund:

  1. Öffnen Sie eine Eingabeaufforderung als Administrator.
  2. Wechseln Sie in das Verzeichnis Microsoft.NET\Framework für die derzeit verwendete Version:

    cd C:\Windows\Microsoft.NET\FrameworkNN\vX.X.XXXXX
    <!--NeedCopy-->
    
  3. Geben Sie den folgenden Ngen.exe-Befehl ein, um alle Elemente in der Warteschlange auszuführen. Mit diesem Befehl werden Komponenten in der Warteschlange verarbeitet, bevor Assemblys erstellt werden.

    ngen eqi 3
    <!--NeedCopy-->
    

    Hinweis:

    Diese Variante des Befehls ngen wurde getestet und ist die Variante, die in dieser Situation im App Layering funktioniert.

    Die Aufgabe Ngen.exe wird in der Eingabeaufforderung in den Vordergrund verschoben und listet die Assemblys auf, die kompiliert werden. Es ist OK, wenn Sie Kompilierungsnachrichten sehen.

    Sie können den Task-Manager verwenden, um zu sehen, ob eine Instanz von MSCORSVW.EXE ausgeführt wird. Wenn dies der Fall ist, lassen Sie es abschließen oder führen Sie ngen eqi 3 aus.

    Warnung:

    Starten Sie nicht neu, um die Aufgabe zu beenden. Erlauben Sie die Aufgabe abzuschließen!

  4. Stellen Sie sicher, dass alle Ngen.exe-Prozesse bis zum Abschluss laufen.

Führen Sie die App Layering-OS Machine Tools auf dem Image aus

Um das Betriebssystemimage für das Ausführen in einem Layer vorzubereiten, führen Sie die OS Machine Tools-Datei auf dem Image aus. Diese ausführbare Datei führt ein GPO-Setup.cmd (gposetup.cmd) und ein Skript zum Festlegen der KMS-Version (Key Management Service) aus. Das Skript heißt SetKMSVersion.hta.

  1. Laden Sie die folgende Zip-Datei auf das Betriebssystem-Image herunter: App_Layering_Citrix_App_Layering_OS_Machine_Tools_20.x.zip
  2. Extrahieren Sie die Dateien nach:

    c:\windows\setup\scripts
    <!--NeedCopy-->
    

    Hinweis:

    Die Datei muss in das Verzeichnis extrahiert werden. Ändern Sie das Verzeichnis nicht.

Konfigurieren Sie bei Verwendung von KMS die Lizenzaktivierung

Sobald die Key Management Service (KMS) -Skripts extrahiert sind, werden Sie vom Dienstprogramm SetKMSVersion aufgefordert, zu entscheiden, ob Sie die KMS-Lizenzierung verwenden möchten.

Hinweis:

Das Veröffentlichen von Images in Umgebungen, in denen sowohl KMS als auch Active Directory-basierte Aktivierung (ADBA) gleichzeitig verwendet werden, verursacht Probleme bei der Aktivierung.

  1. Wählen Sie im angezeigten Dialogfeld aus, ob die Lizenzierung des Schlüsselverwaltungsdienstes (Key Management Service, KMS) verwendet werden soll.

    KMS-Versionsimage festlegen

Gehen Sie wie folgt vor, um Skripts für KMS zu konfigurieren.

  1. Navigieren Sie zu:

    c:\windows\setup\scripts

  2. Führen Sie SetKMSVersion.hta als Administrator aus, um ein Skript im c:\windows\setup\scripts\kmsdir folder zu erstellen.

Wenn das Betriebssystem gestartet wird, wird das entsprechende KMS-Aktivierungsskript ausgeführt.

Installieren der App Layering Services

  1. Führen Sie im Ordner c:\windows\setup\scripts setup_x86.exe (32-Bit) oder setup_x64.exe (64-Bit) aus.

Sie sind bereit, das Image in einen neuen Betriebssystemlayer zu importieren .