Tech Paper: Bereitstellen von Google Chrome

Übersicht

Einer der beliebtesten Browser von 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 veranlasste Google, 2017 ein neues Chrome Enterprise Bundle-Paket zu veröffentlichen, das für Unternehmensbereitstellungen viel freundlicher 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 zunächst die neueste Version von Google Chromeherunter. 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 der Erweiterung Chrome Legacy Browser Support 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, egal ob für 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 NOGOOGLEUPDATEPING=1 hinzu.
  • Optional: Installieren Sie die Chrome Legacy Browser-Support-Erweiterung mithilfe des MSI-Installationsprogramms 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 lediglich 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 Chrome als virtuelle Anwendung ausführen beschreibt dieses Problem ausführlicher. Der Citrix-Artikel How to Disable Citrix API Hooks auf einer Pro-Anwendung enthält schrittweise Anweisungen zum Deaktivieren der Hooks für einzelne Prozesse (Anwendungen).

Der Citrix-Artikel, den Chrome auf einem veröffentlichten Desktop nicht startet, befasst sich mit Chrome-Fehlern wie “Aw, Snap!” Seite stürzt ab und grauer Bildschirm 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). Sie finden alle Chrome-bezogenen Richtlinien im Abschnitt Computerkonfiguration\ Richtlinien\ Administrative Vorlagen\ Google.

Die Datei master_preferences verwalten

Google Chrome wird mit einer Datei master_preferences geliefert. Diese Datei enthält die Standardeinstellungen für Chrome. 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 Verzeichnis C:\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 Artikel Andere Einstellungen konfigurieren .

Einstellungen für servergespeicherte Benutzer

Google Chrome bietet drei Möglichkeiten, Benutzereinstellungen zu roamen:

  • Google-Konto
  • Chrome-Roamingprofile
  • Roamingprofile

Google-Konto (bevorzugte Methode)

Sie können ein Google-Konto erstellen und sich damit in all Ihren vertrauenswürdigen Umgebungen und auf allen Ihren vertrauenswürdigen Gerätenanmelden (in Chrome anmelden oder abmelden).

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

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

  • Apps
  • Automatisch ausfüllen
  • Lesezeichen
  • Erweiterungen
  • Verlauf
  • Kennwörter
  • Einstellungen
  • Designs & Wallpapers
  • Tabs öffnen
  • Kreditkarten und Adressen mit Google Pay

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

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 Roaming-Benutzerprofilenerläutert, können Einstellungen wie Lesezeichen, Daten zum automatischen Ausfüllen, 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 Profile Management, synchronisieren das Verzeichnis C:\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 profile.pb-Datei 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 im Registrierungsschlüssel HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome oder HKEY_CURRENT_USER\Software\Policies\Google\Chrome auf 00000001 fest wie im Abschnitt RoamingProfileSupportEnabled im Artikel Policy List auf Chromium.org beschrieben.
  • 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 Roaming-Benutzerprofilen .

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 dem Registrierungswert RoamingProfileLocation im Registrierungsschlüssel HKEY_LOCAL_MACHINE\Software\Policies\Google\Chrome oder HKEY_CURRENT_USER\Software\Policies\Google\Chrome hinzu wie im Abschnitt RoamingProfileLocation im Artikel Policy List auf Chromium.org beschrieben.
  • 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 Roaming-Benutzerprofilen .

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 Verzeichnis C:\Users\%UserName%\**AppData\Local**\Google\Chrome\User Data (siehe auch den Chromium-Artikel Benutzerdatenverzeichnis). Dieses Verzeichnis wird standardmäßig von der Citrix Profilverwaltung synchronisiert.

Diese Methode hat ihre Nachteile und sollte sorgfältig verwendet werden. Wie im Artikel Häufige Probleme und Lösungenbeschrieben, 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 Diskrepanz kann häufig auftreten, wenn ein Chrome-Profil auf mehreren Computern mit unterschiedlichen Chrome-Versionen mit einem Roaming-Profil oder einem Netzlaufwerk synchronisiert wird.

Kurz gesagt, es ist wichtig, nicht verschiedene Versionen von Chrome 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 Citrix empfiehlt, die folgenden vier Unterordner auszuschließen:

  • !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 Andwendungslayer (Citrix App Layering) erlaubt sein. Um automatische Updates zu deaktivieren, gehen Sie wie folgt vor:

  • 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-Dienst (gupdate)
  • Google Update-Dienst (gupdatem)
  • GoogleUpdateTaskMachineCore
  • GoogleUpdateTaskMachineUA

Aktives Setup deaktivieren

Chrome erstellt auch ein Active Setup-Element. Wie von Citrix CTP Helge Klein erklärt: “Active Setup ist ein Mechanismus, mit dem Befehle einmal pro Benutzer zu Beginn der Anmeldung ausgeführt werden können. Active 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.

Das Chrome-Desktopsymbol entfernen

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 sehr 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 physischem Host.

Wussten Sie, dass Chrome über einen eigenen Task-Manager verfügt, mit dem Sie den Ressourcenverbrauch für jede einzelne Registerkarte anzeigen 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-Management und Speicherverwaltung reduzieren die Speicher- und CPU-Auslastung für viele Prozesse und Anwendungen, einschließlich Chrome.
  • 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 hat zwei großartige Artikel zu diesem Thema geschrieben: Auswirkungen der GPU-Beschleunigung auf die CPU-Auslastung des Browsers und Vergleich: CPU- und GPU-Nutzung von 4 Browsern.

Chrome-Erweiterungen verwalten

Beim Erstellen Ihres Worker-Masterimages, egal ob Hosted-Shared oder VDI, neigen Sie möglicherweise dazu, die erforderlichen Google Chrome-Erweiterungen einzubeziehen. Tu es 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 ist: 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 Artikel Bereitstellen von Google Chrome-Erweiterungen mithilfe von Gruppenrichtlinien.

Tech Paper: Bereitstellen von Google Chrome