Auf dieser Seite wird beschrieben, wie Sie die Looker-Anwendung für eine vom Kunden gehostete Bereitstellung installieren.
Das Hosting der Looker-Anwendung ist unabhängig davon, wo sich Ihre Daten befinden. Daten verbleiben immer in der Datenbank und werden nicht in die Looker-Instanz kopiert.
Bereitstellungsspezifikationen
Wenn Sie Looker in einem Netzwerk ausführen möchten, das keine Verbindung zum Internet herstellt, müssen Sie möglicherweise einen Proxyserver einrichten, um mit dem Looker-Lizenzserver zu kommunizieren, oder serverlose Webservices verwenden, die nur Webaufrufe ausführen, z. B. BigQuery.
Installieren Sie die Looker-Anwendung auf einem dedizierten Computer, der die folgenden Mindestanforderungen erfüllt:
- CPU mit 1,2 GHz; Looker empfiehlt mindestens zwei Kerne.
- 8 GB freier RAM
- 10 GB freier Speicherplatz.
- 2 GB Auslagerungsdatei.
- Linux: Wir verwenden Ubuntu Linux (LTS-Versionen) für unser internes Looker-Hosting und empfehlen es Kunden, die keine Linux-Präferenz haben. Wir unterstützen Looker jedoch auf Release-Versionen aller wichtigen Enterprise-Linux-Distributionen, einschließlich RedHat, CentOS und Amazon Linux. Looker wird nur auf Linux-Versionen mit x64-Befehlssätzen unterstützt.
Java OpenJDK 11.0.12+ oder HotSpot 1.8 Update 161+. Looker verwendet OpenJDK (Version 11) zur Verbesserung von Leistung und Arbeitsspeicher. Looker empfiehlt das JDK anstelle der JRE, um die zusätzlichen Tools zur Fehlerbehebung nutzen zu können. Außerdem empfiehlt Looker, dass Sie zu neuen Java-Updates wechseln, sobald sie veröffentlicht werden. Andere Versionen von Java, Oracle JDK und OpenJDK werden derzeit nicht unterstützt.
libssl
undlibcrypt.so
müssen auf dem System vorhanden sein.Sie müssen eingehenden Traffic zu Ihrer Looker-Instanz über den TCP-Port
9999
zulassen.Wenn Nutzer API-Zugriff benötigen, müssen Sie eingehenden Traffic zu Ihrer Looker-Instanz über den TCP-Port
19999
zulassen.Wenn Looker über ein privates AWS-VPC-Netzwerk eine Verbindung zu AWS Redshift herstellt, müssen Sie die MTU auf 1.500 festlegen. Weitere Informationen zu dieser Einstellung finden Sie in diesem Amazon Web Services-Artikel im Abschnitt Konfigurieren der MTU einer Instanz. Wenn Looker bei einem Datenbankverbindungstest feststellt, dass die MTU-Einstellung größer als 1500 ist, wird der folgende Fehler angezeigt:
MTU of network interface eth0 is too large (> 1500). If Looker instance and Redshift cluster are within the same VPC, this warning can be ignored.
Die folgenden TCP-Keepalive-Einstellungen. Damit diese Einstellungen auch nach einem Neustart bestehen bleiben, müssen sie in
/etc/sysctl.conf
oder in einer Datei im Verzeichnis/etc/sysctl.d
festgelegt werden:net.ipv4.tcp_keepalive_time=200 net.ipv4.tcp_keepalive_intvl=200 net.ipv4.tcp_keepalive_probes=5
Ein Nutzer mit dem Namen
looker
in der Gruppe mit dem Namenlooker
, um die Looker-Anwendung auszuführen.Ein ulimit für den Nutzer
looker
von4096
oder höher. Fügen Sie dazu/etc/security/limits.conf
die folgenden Zeilen hinzu:looker soft nofile 4096 looker hard nofile 4096
Zeitsynchronisierung über NTP oder ein ähnliches Protokoll.
Der Ordner
/tmp
darf nicht mit der Option „noexec“ bereitgestellt werden.Das Basisverzeichnis
looker
sollte nicht auf einem NFS-Volume bereitgestellt werden.Es wird empfohlen, die Zeitzone des Servers auf UTC festzulegen, dies ist jedoch nicht erforderlich.
Für Looker 23.6 und höher ist Git 2.39.1 oder höher erforderlich.
Netcat ist zwar nicht erforderlich, kann aber bei der Behebung von Problemen mit der Netzwerkverbindung hilfreich sein. Um Netcat beispielsweise auf einem Ubuntu-basierten Server zu installieren, ist ein gängiger Befehl:
sudo apt-get install netcat
Bei Bedarf können Sie einen Proxyserver einrichten, um die HTTP(S)-Anfragen zu verarbeiten, die Looker an „core“ auf localhost senden muss. Für die Kommunikation mit dem lokalen Looker-Proxyserver müssen Sie einige spezielle Argumente in
lookerstart.cfg
hinzufügen: Fügen Siehttp.nonProxyHosts=localhost
hinzu, um den Zugriff auf den lokalen Looker-Host zu ermöglichen, ohne den Proxy zu durchlaufen.
Um Wartungs- und Ressourcenkonflikte zu vermeiden, sollten Sie den Looker-Server nicht zum Hosten anderer Anwendungen verwenden.
ntpd oder chronyd aktivieren
NTP steht für Network Time Protocol. Dadurch wird sichergestellt, dass die Systemuhr Ihres Hosts immer die richtige Zeit anzeigt, was für die korrekte Funktion von Looker erforderlich ist. Für Looker ist keine bestimmte Software zur Zeitsynchronisierung erforderlich, solange die Zeiten synchron bleiben. Es ist nicht erforderlich, einen NTP-Server auszuführen. Es wird nur der NTP-Client benötigt. Sie können chronyd durch NTP ersetzen.
Informationen zum Aktivieren von ntpd oder chronyd finden Sie in der Dokumentation Ihres Betriebssystemanbieters.
Verschlüsselungsschlüssel erstellen
Looker verwendet die AES‑256-Verschlüsselung im Galois/Counter Mode (GCM), um vertrauliche Daten zu verschlüsseln, die intern gespeichert werden, darunter:
- Backups der internen Looker-Datenbank
- Informationen zur Datenbank- und Dienstverbindung
- Informationen zur Nutzerauthentifizierung
- Nutzerattributwerte
- Kundendaten, die im Cache gespeichert oder für die Zustellung vorbereitet werden
Eine detaillierte Liste der Daten, die von Looker verschlüsselt werden, erhalten Sie, wenn Sie eine Supportanfrage stellen.
Die Daten werden mit einem eindeutigen Datenschlüssel verschlüsselt und enthalten einen signierten und versionierten Verschlüsselungsumschlag zur Überprüfung. Für diesen Modus ist die Verwendung eines externen Customer Master Key (CMK) erforderlich. Der CMK wird verwendet, um den Schlüsselverschlüsselungsschlüssel (Key Encryption Key, KEK) abzuleiten, zu verschlüsseln und zu entschlüsseln. Der KEK wird wiederum verwendet, um Datenschlüssel abzuleiten, zu verschlüsseln und zu entschlüsseln.
Die Verschlüsselung wird nur für die interne Datenbank und den Cache von Looker verwendet. Kundendatenbanken sind von der Looker-Verschlüsselung in keiner Weise betroffen. Außerdem werden nur statische Daten (auf der Festplatte gespeicherte Daten) auf diese Weise verschlüsselt.
Bei vom Kunden gehosteten Installationen können eigene AWS KMS-Konten oder eigene benutzerdefinierte Schlüsselverwaltungssysteme verwendet werden. Alle Datenschlüssel und der KEK werden verschlüsselt und intern in der vom Kunden gehosteten Looker-Installation verwendet. Wenn Sie AWS KMS nicht verwenden, sollte der externe CMK an einem sicheren und dauerhaften Ort aufbewahrt werden. Wenn Sie den CMK nach der Verschlüsselung der internen Datenbank verlieren, kann dies zum Verlust Ihrer Instanz führen.
Wenn Sie AWS KMS verwenden
Wenn Sie AWS KMS verwenden, erstellen Sie einen CMK entweder über die AWS Management Console oder die API.
Nachdem Sie den CMK erstellt haben, empfiehlt Looker, eine neue IAM-Rolle zu erstellen, die für Ihren CMK eindeutig ist, und sie an Ihre Looker-Instanz anzuhängen.
Im Folgenden sehen Sie ein Beispiel für eine IAM-Rolle, die die für Ihren CMK erforderlichen Mindestberechtigungen enthält:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "kms:GenerateRandom",
"Resource": "*"
},
{
"Sid": "VisualEditor1",
"Effect": "Allow",
"Action": [
"kms:Decrypt",
"kms:Encrypt",
"kms:Generate*",
],
"Resource": "arn:aws:kms:*:*:key/*"
}
]
}
Nachdem Sie den CMK und die neue IAM-Rolle erstellt haben, legen Sie die Umgebungsvariable AWS_REGION
auf Ihre AWS-Region und die Umgebungsvariable LKR_AWS_CMK
auf den Alias Ihres CMK fest:
export AWS_REGION=<AWS_region>
export LKR_AWS_CMK=alias/<CMK_alias>
Optional können Sie auch die Umgebungsvariable LKR_AWS_CMK_EC
festlegen, um einen benutzerdefinierten AWS-Verschlüsselungskontext festzulegen. Wenn Sie diese Umgebungsvariable nicht festlegen, verwendet Looker den Standardverschlüsselungskontext, den String Looker_Encryption_Context
.
export LKR_AWS_CMK_EC=<My_Encryption_Context>
Wenn Sie AWS KMS nicht verwenden
Wenn Sie AWS KMS nicht verwenden, generieren Sie einen Base64-codierten, 32 Byte großen CMK. Sie können den CMK entweder in einer Umgebungsvariablen oder in einer Datei speichern:
Mit dem folgenden Befehl können Sie den CMK generieren und in einer Umgebungsvariablen speichern:
openssl rand -base64 32
Nachdem Sie den CMK generiert haben, kopieren Sie ihn und verwenden Sie den folgenden Befehl, um den CMK in der Umgebungsvariable
LKR_MASTER_KEY_ENV
zu speichern (wobei<CMK_value>
der CMK ist, den Sie mit dem vorherigen Befehl generiert haben):export LKR_MASTER_KEY_ENV=<CMK_value>
Mit dem folgenden Befehl können Sie den CMK generieren und in einer Datei speichern. Dabei ist
<path_to_key_file>
der Pfad und Dateiname zum Speichern des CMK:openssl rand -base64 32 > <path_to_key_file>
Nachdem Sie die CMK-Datei generiert haben, legen Sie die Berechtigungen für die Schlüsseldatei auf „Nur lesen“ für den aktuellen Nutzer fest:
chmod 0400 <path_to_key_file>
Nachdem Sie einen CMK generiert haben, sollten Sie ihn an einem sicheren und dauerhaften Ort speichern, bevor Sie fortfahren. Wenn Sie den CMK nach der Verschlüsselung der internen Datenbank verlieren, kann dies zum Verlust Ihrer Instanz führen.
Nachdem Sie Ihren CMK generiert und gespeichert haben, legen Sie die Umgebungsvariable LKR_MASTER_KEY_ENV
fest:
Wenn Sie Ihren CMK in einer Umgebungsvariable speichern, legen Sie die Umgebungsvariable
LKR_MASTER_KEY_ENV
auf den Wert des CMK fest:export LKR_MASTER_KEY_ENV=<CMK_value>
Wenn Sie Ihren CMK in einer Datei speichern, legen Sie die Umgebungsvariable
LKR_MASTER_KEY_FILE
auf den Pfad der CMK-Datei fest:export LKR_MASTER_KEY_FILE=<path_to_key_file>
Nachdem Sie einen CMK generiert haben, sollten Sie ihn an einem sicheren und dauerhaften Ort speichern, bevor Sie fortfahren. Wenn Sie den CMK nach der Verschlüsselung der internen Datenbank verlieren, kann dies zum Verlust Ihrer Instanz führen.
Looker-Anwendung installieren
Erstelle die Gruppe
looker
.sudo groupadd looker
Erstellen Sie den Nutzer
looker
und sein Home-Verzeichnis.sudo useradd -m -g looker looker
Wechseln Sie zum Nutzer
looker
. Führen Sie Looker nicht als Root aus.sudo su - looker
Erstellen Sie im Home-Verzeichnis das Unterverzeichnis
looker
.mkdir ~/looker
Wechseln Sie in das Unterverzeichnis
looker
.cd ~/looker
Achten Sie darauf, dass Sie sich im richtigen Verzeichnis befinden.
pwd
Wenn sich Ihre Nutzerverzeichnisse unter
/home
befinden, sollte die Ausgabe dieses Befehls/home/looker/looker
sein.Laden Sie die ausgewählten Looker-JAR-Dateien mit einer der Methoden auf der Dokumentationsseite Looker-JAR-Dateien herunterladen herunter. Achten Sie darauf, dass beide JAR-Dateien dieselbe Version haben. Die Verwendung unterschiedlicher Versionen der Core- und Abhängigkeits-JAR-Dateien kann zu Instabilität in Ihrer Looker-Installation führen.
Laden Sie das aktuelle Start-up-Script aus dem GitHub-Repository looker-open-source herunter. Wenn Looker beim Systemstart ausgeführt werden soll, können Sie das looker_init-Skript herunterladen und sowohl die Skriptoptionen
systemd
als auchinit
verwenden.Verschieben Sie das Startskript (mit dem Namen
looker
) und die Looker-JAR-Dateien (mit den Namenlooker-x.x.x.jar
undlooker-dependencies-x.x.x.jar
, wobeix.x.x
die Versionsnummer ist) in das neue Verzeichnis~/looker
.Benennen Sie
looker-x.x.x.jar
zulooker.jar
undlooker-dependencies-x.x.x.jar
zulooker-dependencies.jar
um.Das Startskript ermittelt automatisch, wie viel Java-Arbeitsspeicher Looker zugewiesen werden soll. Wenn Sie diesen Wert manuell anpassen möchten, finden Sie weitere Informationen auf der Dokumentationsseite Empfohlene Java-Speichereinstellungen.
Machen Sie das Looker-Startskript ausführbar (legen Sie die Berechtigungen auf
0750
fest).chmod 0750 looker
Starten Sie den Looker-Prozess über die Shell als
looker
-Nutzer../looker start
So rufen Sie Hilfe zu Startflags auf:
java -jar looker.jar --help
Oder rufen Sie mit dem folgenden Befehl die Hilfe zum Startbefehl auf:
java -jar looker.jar help
Öffnen Sie einen Browser und rufen Sie
https://hostname:9999
auf. Dabei isthostname
der DNS-Name des Hosts, auf dem Looker ausgeführt wird.Verwenden Sie
https
in der URL. Dadurch wird eine Sicherheitswarnung angezeigt, die Sie umgehen müssen. Diese Warnung wird so lange angezeigt, bis ein gültiges SSL-Zertifikat auf dem Server installiert ist.Geben Sie den Lizenzschlüssel ein, den Sie von Ihrem Looker-Analysten erhalten haben.
Geben Sie einen Namen, eine E-Mail-Adresse und ein Passwort ein, um Ihr erstes Konto zu erstellen.
DNS-Eintrag erstellen
Fügen Sie für den Server einen looker.[yourdomain].com
-DNS-Eintrag hinzu. Dieser Schritt ist optional, wird aber empfohlen.
Looker automatisch bereitstellen
Looker kann mit einem Konfigurationsverwaltungstool wie Ansible oder Chef bereitgestellt werden. Ein Beispiel für eine Ansible-Rolle für die automatisierte Bereitstellung finden Sie auf der Dokumentationsseite Tools zur Konfigurationsverwaltung.
Hypervisor-Abstimmung
Looker wird als Java-VM ausgeführt. Wenn sich Ihre Looker-Instanz auf einem VMware-Gast befindet, müssen Sie möglicherweise einige Leistungsoptimierungen vornehmen. Weitere Informationen finden Sie im Java-Best-Practices-Leitfaden von VMware.
Auf anderen Virtualisierungsplattformen kann es die Leistung verbessern, wenn Sie den Arbeitsspeicher des Looker-Hosts im Hypervisor reservieren. Dies ist bei Amazon EC2 nicht möglich. Bei anderen Anbietern finden Sie weitere Informationen in der jeweiligen Dokumentation.
Optionale MySQL-Backend-Datenbank einrichten
Standardmäßig verwendet Looker eine speicherinterne HyperSQL-Datenbank zum Speichern der Konfiguration, der Nutzer und anderer Daten. Sie können jedoch eine externe MySQL-Datenbank verwenden, um die internen Looker-Informationen zu speichern. Informationen zum Konfigurieren und Optimieren einer MySQL-Backend-Datenbank finden Sie auf der Dokumentationsseite Zu MySQL migrieren.
Nächste Schritte
Nach der Installation von Looker können Sie Looker-Startoptionen konfigurieren.