Ausführen von Google Chrome auf Virtual Apps und Desktops

Übersicht

Einer der beliebtesten Browser heute, Google Chrome, ist ein Muss für viele Citrix Virtual Apps and Desktops Umgebungen. Google Chrome war beim Start in erster Linie auf Verbraucher und Desktop-Betriebssysteme ausgerichtet, aber heute ist es im Unternehmen üblich, und immer mehr Administratoren stellen diesen Browser in ihren Virtual Apps and Desktops-Umgebungen bereit. Dies führte dazu, dass Google 2017 ein neues Chrome Enterprise Bundle-Paket veröffentlicht, das viel freundlicher für Enterprise-Bereitstellungen ist als frühere Iterationen. Um Google Chrome ordnungsgemäß zu installieren und zu konfigurieren, müssen Sie einige Details beachten. Dieser Artikel zeigt Ihnen die empfohlenen Schritte für eine erfolgreiche Bereitstellung, Konfiguration und Optimierung von Google Chrome in Ihrem Unternehmen.

Installation

Laden Sie zuerst die neueste Version von Google Chrome herunter. Sie können entweder das Enterprise Bundle oder die eigenständige Version herunterladen. Das Enterprise Bundle enthält die Installationsprogramme für den Chrome-Browser und den Chrome Legacy Browser sowie die Microsoft Group Policy Template (ADMX) -Dateien. Wählen Sie entweder die 32-Bit- oder 64-Bit-Version. Extrahieren Sie die ZIP-Datei nach dem Download.

HINWEIS: Mit Chrome Legacy-Browser-Support-Erweiterung können Benutzer automatisch zwischen Chrome und einem anderen Browser wechseln. Wenn ein Benutzer auf einen Link klickt, für den ein Legacy-Browser geöffnet werden muss (z. B. eine Site, die ActiveX erfordert), wird die URL automatisch in Chrome im Legacy-Browser geöffnet.

Gehen Sie folgendermaßen vor, um Google Chrome auf Ihrem Masterimage zu installieren, unabhängig davon, ob Hosted Shared oder VDI:

  • Installieren Sie Chrome mit dem MSI-Installationsprogramm:msiexec.exe /i "C:\GoogleChromeStandaloneEnterprise64.msi" /qn /norestart /l*v "C:\Logs\GoogleChromeStandaloneEnterprise64.log" Wenn Probleme auftreten, wenn Chrome das Internet nicht erreichen kann, fügen Sie den MSI-Parameter hinzuNOGOOGLEUPDATEPING=1 .
  • Optional: Installieren Sie die Chrome Legacy Browser Support-Erweiterung mit dem MSI-Installationsprogramm:msiexec.exe /i "C:\LegacyBrowserSupport_4.7.0.0_en_x64.msi" /qn /norestart /l*v "C:\Logs\LegacyBrowserSupport_4.7.0.0_en_x64.log"

Wir empfehlen dringend, immer die neueste Version von Google Chrome zu verwenden. Zumindest sollte Version 59 verwendet werden, da Chrome ab dieser Version und höher automatisch erkennt, ob es in einer Remote-Desktop-Umgebung ausgeführt wird, und seine Einstellungen entsprechend anpasst. Darüber hinaus ist das Veröffentlichen von Chrome in Citrix Studio einfacher als früher. Sie müssen nur die folgende Befehlszeile veröffentlichen:

C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

Das Installationsverzeichnis ist für 32-Bit- und 64-Bit-Installationen identisch.

Es ist nicht mehr notwendig, die Parameter–allow-no-sandbox-job –disable-gpu zur Befehlszeile hinzuzufügen.

Es bleibt jedoch ein Problem mit den Citrix API-Hooks. Google Chrome kann nicht ordnungsgemäß gestartet werden und Sie müssen die Chrome-Prozesse chrome.exe und nacl64.exe von diesen Hooks ausschließen. Der Google-Artikel Ausführen von Chrome als virtuelle Anwendung beschreibt dieses Problem genauer. Der Citrix-Artikel Deaktivieren von Citrix API Hooks für eine Anwendung enthält schrittweise Anweisungen zum Deaktivieren der Hooks für einzelne Prozesse (Anwendungen). Beachten Sie, dass Änderungen an der Konfiguration von API-Hooks von XenApp und XenDesktop Version 7.9 und neuer auf einen Neustart folgen muss.

Der Citrix ArtikelChrome kann nicht in einem veröffentlichten Desktop gestartet werdenbehandelt Chrome-Fehler wie “Aw, Snap!” Seite stürzt ab und graue Bildschirme ohne Nachricht. Die Lösung für diese Fehler ist die gleiche wie oben erwähnt; die Prozessechrome.exe undnacl64.exe müssen aus den Citrix API-Hooks ausgeschlossen werden.

Konfiguration

Google Chrome mithilfe von Gruppenrichtlinien verwalten

Google Chrome kann mithilfe von Microsoft-Gruppenrichtlinien verwaltet werden. Wie bereits erwähnt, enthält das Enterprise Bundle die ADMX-Dateien. Kopieren Sie die ADMX-Dateien und die Sprachdateien (*.ADML) in Ihren zentralen Speicher für administrative Vorlagen für Gruppenrichtlinien (z. B. \\contoso.com\SYSVOL\contoso.com\policies\PolicyDefinitions). Alle Chrome-bezogenen Richtlinien finden Sie im Abschnitt Computerkonfigurationsrichtlinien Administrative Vorlagen Google.

Verwalten der Datei master_preferences

Google Chrome wird mit einer Datei master_preferences geliefert. Diese Datei enthält die Standard-Chrome-Einstellungen. Diese Datei kann vom Administrator geändert werden, um sicherzustellen, dass die Einstellungen nach der Installation verfügbar sind. Standardmäßig befindet sich die Datei master_preferences im VerzeichnisC:\Program Files (x86)\Google\Chrome\Application.

Einzelne Benutzereinstellungen werden in einer Datei namens Preferencesgespeichert, die im Benutzerprofil gespeichert ist. Diese Einstellungsdatei wird bei der ersten Verwendung von Chrome erstellt. Standardmäßig befindet sich diese Datei im VerzeichnisC:\Users\%UserName%\AppData\Local\Google\Chrome\User Data\Default.

Weitere Informationen finden Sie im ArtikelAndere Voreinstellungen konfigurieren.

Einstellungen für servergespeicherte Benutzer

Google Chrome bietet drei Möglichkeiten für das Roaming von Benutzereinstellungen:

  • Google-Konto
  • Chrome-Roamingprofile
  • Roamingprofile

Google-Konto (bevorzugte Methode)

Sie können ein Google-Konto erstellen und sich mit diesem in allen vertrauenswürdigen Umgebungen und auf allen vertrauenswürdigen Geräten anmelden (Anmelden oder Verlassen von Chrome).

Dies ist die bevorzugte Methode laut Artikel Häufige Probleme und Lösungen (siehe den Abschnitt Kann ich die Chrome-Profile meiner Benutzer auf einem Roaming-Profil speichern?)

Standardmäßig werden die folgenden benutzerspezifischen Einstellungen gespeichert und synchronisiert:

  • Anwendungen
  • Automatisches Ausfüllen
  • Lesezeichen
  • Erweiterungen
  • Verlauf
  • Kennwörter
  • Einstellungen
  • Themes & Wallpaper
  • Registerkarten öffnen
  • Kreditkarten und Adressen mit Google Pay

Der Benutzer kann anpassen, welche Einstellungen synchronisiert werden (Ihre Kontoeinstellungen synchronisieren).

Chrome-Roamingprofile

Wenn die Verwendung eines Google-Kontos zum Synchronisieren der Benutzereinstellungen keine Option für Sie ist, verwenden Sie stattdessen Chrome-Roamingprofile. Wie im Artikel Verwenden von Chrome in Roamingbenutzerprofilen erläutert, können Einstellungen wie Lesezeichen, automatische Ausfülldaten, Kennwörter, Browserverlauf pro Computer, Browsereinstellungen und installierte Erweiterungen in einer Datei namens profile.pb gespeichert werden. Standardmäßig wird diese Datei im Verzeichnis gespeichertC:\Users\%UserName%\AppData\Roaming\Google\Chrome, aber das Standardverzeichnis kann geändert werden.

Alle Profillösungen, einschließlich der Citrix Profilverwaltung, synchronisieren das VerzeichnisC:\Users\%UserName%\AppData\Roaming (=%AppData% ) und stellen so sicher, dass auch die Datei profile.pb synchronisiert wird. Es gibt drei Methoden, wie Sie die Erstellung der Datei profile.pb aktivieren können:

  • Aktivieren Sie die Gruppenrichtlinieneinstellung Aktivieren Sie das Erstellen von Roamingkopien für Google Chrome-Profildaten in Benutzer oder Computerkonfiguration\Richtlinien\Administrative Vorlagen\Google\Google Chrome.
  • Legen Sie den Registrierungswert RoamingProfileSupportEnabled auf 00000001 im Registrierungsschlüssel HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome oder HKEY_CURRENT_USER\Software\Policies\Google\Chrome wie im Abschnitt RoamingProfileSupportEnabled im Artikel Richtlinienliste auf Chromium.org.
  • Fügen Sie das Befehlszeilenflag –enable-local-sync-backend Chrome.exe in der Chrome-Verknüpfung hinzu. Weitere Informationen finden Sie im Artikel Verwenden von Chrome in Roamingbenutzerprofilen.

Es gibt drei Methoden, um das Standardverzeichnis der Datei profile.pb zu ändern:

  • Aktivieren Sie die Gruppenrichtlinieneinstellung. Legen Sie das Roamingprofilverzeichnis in Benutzer- oder Computerkonfiguration\Richtlinien\Administrative Vorlagen\Google\Google Chrome fest.
  • Fügen Sie das Profilverzeichnis zum Registrierungswert RoamingProfileLocation im Registrierungsschlüssel HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome oder HKEY_CURRENT_USER\Software\Policies\Google\Chrome wie im Abschnitt RoamingProfileLocation im Artikel Richtlinienliste auf Chromium.org.
  • Fügen Sie das Befehlszeilenflag –local-sync-backend-dir=path_to_directory Chrome.exe in der Chrome-Verknüpfung hinzu. Weitere Informationen finden Sie im Artikel Verwenden von Chrome in Roamingbenutzerprofilen.

Roamingprofile

Was passiert also, wenn der Benutzer nicht mit einem Google-Konto angemeldet ist oder ein Chrome-Roaming-Profil (“profile.pb”) nicht konfiguriert wurde? In solchen Fällen speichert Google Chrome alle Benutzerdaten im VerzeichnisC:\Users\%UserName%\**AppData\Local**\Google\Chrome\User Data (siehe auch den Chromium-ArtikelBenutzerdatenverzeichnis). Dieses Verzeichnis wird standardmäßig von der Citrix Profilverwaltung synchronisiert.

Diese Methode hat ihre Nachteile und sollte sorgfältig verwendet werden. Wie im Artikel erwähntHäufige Probleme und Lösungen, sind Chrome-Benutzerprofile nicht abwärtskompatibel. Wenn Sie versuchen, nicht übereinstimmende Profile und Chrome-Versionen zu verwenden, können Abstürze oder Datenverlust auftreten. Diese Abweichung kann häufig auftreten, wenn ein Chrome-Profil mit einem servergespeicherten Profil oder einem Netzlaufwerk über mehrere Computer mit unterschiedlichen Chrome-Versionen synchronisiert wird.

Kurz gesagt, es ist wichtig, verschiedene Versionen von Chrome nicht in einem einzigen Roaming-Profil zu mischen. Wenn Sie diese Methode verwenden möchten, um die Einstellungen Ihres Benutzers zu synchronisieren, erstellen Sie unbedingt separate Roamingprofile für jede Umgebung oder jeden Gerätetyp. Diese Methode kann für Ihre Organisation funktionieren, aber Sie tun dies auf eigenes Risiko.

Beachten Sie, dass die folgenden vier Unterordner Citrix empfiehlt ausgeschlossen werden:

  • !ctx_localappdata!\Google\Chrome\User Data\Default\Cache=
  • !ctx_localappdata!\Google\Chrome\User Data\Default\Cached Theme Images=
  • !ctx_localappdata!\Google\Chrome\User Data\Default\JumpListIcons=
  • !ctx_localappdata!\Google\Chrome\User Data\Default\JumpListIconsOld=

Optimierungen

Automatische Updates deaktivieren

Auf nicht persistenten Computern sollte Chrome nicht erlaubt sein, sich automatisch zu aktualisieren. Das Installieren von Updates sollte nur beim Ändern oder Erstellen des Masterimages oder beim Aktualisieren der Anwendungsebene (Citrix App Layering) zulässig sein. Gehen Sie folgendermaßen vor, um automatische Updates zu deaktivieren:

  • Deaktivieren Sie die Gruppenrichtlinieneinstellung Update-Richtlinienüberschreibung im Abschnitt Computerkonfiguration\ Richtlinien\ Administrative Vorlagen\ Google Update\ Anwendungen\ Google Chrome in der Organisationseinheit im Active Directory, die Ihre produktiven Mitarbeiter enthält.
  • Deaktivieren Sie die folgenden Dienste und geplanten Aufgaben (verantwortlich für automatische Updates):
  • Google Update Service (gupdate)
  • Google Update Service (gupdatem)
  • GoogleUpdateTaskMachineCore
  • GoogleUpdateTaskMachineUA

Aktives Setup deaktivieren

Chrome erstellt auch ein Active Setup-Element. Wie Citrix CTP Helge Klein erläutert: “Active Setup ist ein Mechanismus, um Befehle einmal pro Benutzer frühzeitig während der Anmeldung auszuführen. Das aktive Setup wird von einigen Betriebssystemkomponenten wie Internet Explorer verwendet, um eine Erstkonfiguration für neue Benutzer einzurichten, die sich zum ersten Mal anmelden.” Active Setup wird bei der Anmeldung durch den Prozess explorer.exe ausgeführt, was bedeutet, dass es nicht mit veröffentlichten Anwendungen funktioniert. In der Regel empfehle ich, Active Setup vollständig zu deaktivieren, um die Anmeldezeit der Benutzer zu verbessern. Falls Sie den Chrome Active Setup-Befehl einmal bei der Benutzeranmeldung ausführen möchten, empfehle ich die Verwendung eines Anmeldeskripts, das die Befehlszeile automatisch aus dem Registrierungswert stubpath liest und den Befehl ausführt.

Entfernen des Chrome-Desktop-Symbols

Ein letztes Element, das Sie konfigurieren können, ist das Entfernen des automatisch erstellten Desktop-Symbols. Dies erfordert zwei Schritte:

  • Löschen Sie die Verknüpfungsdatei Google Chrome.lnk, im Verzeichnis %Public%\Desktop, das standardmäßig auf C:\Users\Public verweist.
  • Fügen Sie die folgenden Zeilen zur Datei master_preferences von Chrome hinzu (zuvor im Abschnitt “Konfiguration” erläutert), um zu verhindern, dass Verknüpfungen für neue Benutzer erstellt werden:
    • "create_all_shortcuts": false,
    • "do_not_create_desktop_shortcut": true,
    • "do_not_create_quick_launch_shortcut": true

Speicher- und CPU-Optimierung

Browser können ziemlich RAM- und CPU-intensiv sein und Chrome ist keine Ausnahme. Auf einem nativen Client ist dies möglicherweise kein großes Problem, aber es liegt in einer Citrix Virtual Apps and Desktops-Umgebung, in der (normalerweise) alle Arbeiter virtuelle Maschinen sind, die die zugrunde liegende Hardware gemeinsam nutzen. Ressourcenintensive Anwendungen reduzieren die maximale Benutzerdichte pro physischen Host.

Wussten Sie, dass Chrome mit einem eigenen Task-Manager ausgestattet ist, mit dem Sie den Ressourcenverbrauch für jede einzelne Registerkarte sehen können? Um auf den Chrome-Task-Manager zuzugreifen, verwenden Sie entweder die Tastenkombination SHIFT+ESC oder gehen Sie zum Menü (die drei vertikalen Punkte) und navigieren Sie zu Mehr Tools\ Task-Manager. Mit dem Task-Manager können Sie ermitteln, welche Webseiten die meisten Ressourcen verbrauchen.

Es ist möglich, die Speicher- und CPU-Auslastung von Chrome zu reduzieren:

  • Verwenden Sie zunächst Citrix Workspace Environment Manager (WEM). Die Funktionen CPU-Verwaltung und Speicherverwaltung reduzieren die Speicher- und CPU-Auslastung für viele Prozesse und Anwendungen, Chrome im Lieferumfang enthalten.
  • Eine weitere Möglichkeit, den Footprint von Chrome zu reduzieren, besteht in der Verwendung einer Chrome-Erweiterung zur Verwaltung von Registerkarten, um Systemressourcen frei Diese Erweiterungen setzen nicht verwendete Tabs aus und reduzieren so den Speicher und (insbesondere!) CPU-Verbrauch. Testen Sie dieses Plug-in und verwenden Sie den Chrome-Task-Manager, um zu sehen, wie sich der Ressourcenverbrauch jeder angehaltenen Registerkarte erheblich verringert
  • Falls Ihre physischen Hosts mit einer GPU (Graphics Processing Unit) ausgestattet sind, werden bestimmte Verarbeitungsaufgaben an die GPU ausgelagert, wodurch die CPU freigegeben wird. Citrix CTP Helge Klein schrieb zwei tolle Artikel zu diesem Thema:Auswirkungen der GPU-Beschleunigung auf die CPU-Auslastung des BrowsersundVergleich: CPU & GPU Nutzung von 4 Browsern.

Chrome-Erweiterungen verwalten

Wenn Sie Ihr Worker-Masterimage erstellen, egal ob hosted oder VDI, sind Sie möglicherweise geneigt, die erforderlichen Google Chrome-Erweiterungen einzuschließen. Tun Sie das nicht! Chrome-Erweiterungen können mithilfe von Microsoft-Gruppenrichtlinien verwaltet und bereitgestellt werden. Noch wichtiger ist, dass Chrome-Erweiterungen pro Benutzer installiert werden! Sie müssen Ihr Image nicht aktualisieren, um eine Erweiterung hinzuzufügen oder zu entfernen. Wenn Sie zahlreiche Erweiterungen durch Richtlinien hinzufügen, sollten Sie sich darüber im Klaren sein, dass dies negative Auswirkungen auf die Startzeiten von Google Chrome haben kann.

Das Installationsverzeichnis lautet:C:\Users\%UserName%\AppData\Local\Google\Chrome\User Data\Default\Extensions

Die Verwendung von Microsoft Group Policy zur Verwaltung Ihrer Erweiterungen funktioniert auch bei der Verwendung des Citrix Provisioning Servers (PVS) zur Bereitstellung Ihrer Images, nicht nur mit Machine Creation Services (MCS).

Weitere Informationen zum Verwalten von Chrome-Erweiterungen mithilfe von Microsoft-Gruppenrichtlinien finden Sie im ArtikelBereitstellen von Google Chrome-Erweiterungen mithilfe von Gruppenrichtlinien.

Ausführen von Google Chrome auf Virtual Apps und Desktops