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. Die Daten bleiben immer in der Datenbank und werden nicht in die Looker-Instanz kopiert.
Bereitstellungsspezifikationen
Wenn Sie Looker in einem Netzwerk ausführen, das keine Internetverbindung hat, müssen Sie möglicherweise einen Proxyserver für die Kommunikation mit dem Lizenzserver von Looker einrichten oder serverlose Webdienste verwenden, die nur Webaufrufe ausführen, z. B. BigQuery.
Installieren Sie die Looker-Anwendung auf einer dedizierten Maschine, die die folgenden Mindestanforderungen erfüllt:
- 1,2 GHz CPU; Looker empfiehlt zwei oder mehr Kerne.
- 8 GB freier RAM-Speicher.
- 10 GB freier Speicherplatz.
- 2 GB Auslagerungsdatei.
- Linux: Wir verwenden Ubuntu Linux (LTS-Releases) für unser internes Looker-Hosting und empfehlen es Kunden, die keine Linux-Präferenz haben. Wir unterstützen jedoch Looker in Release-Versionen aller großen Linux-Distributionen für Unternehmen, einschließlich RedHat, CentOS und Amazon Linux.
- Java OpenJDK 11.0.12+, OpenJDK 8.0.181+ oder HotSpot 1.8 Update 161+. Looker verwendet OpenJDK (Version 11) zur Verbesserung der Leistung und Speichernutzung. Looker empfiehlt anstelle der JRE das JDK, um die zusätzlichen Tools zur Fehlerbehebung nutzen zu können. Außerdem empfiehlt Looker, auf neue Java-Updates zu aktualisieren, sobald diese veröffentlicht werden. Andere Versionen von Java, Oracle JDK und OpenJDK werden derzeit nicht unterstützt.
libssl
undlibcrypt.so
müssen im 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-VCP-Netzwerk eine Verbindung zu AWS Redshift herstellt, müssen Sie die MTU auf 1500 festlegen. Weitere Informationen zu dieser Einstellung finden Sie in diesem Artikel zu Amazon Web Services im Abschnitt MTU einer Instanz konfigurieren. Wenn Looker erkennt, dass die MTU-Einstellung während eines Datenbankverbindungstests 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. Wenn Sie für einen Neustart beibehalten möchten, legen Sie sie in
/etc/sysctl.conf
oder einer Datei im Verzeichnis/etc/sysctl.d
fest:net.ipv4.tcp_keepalive_time=200 net.ipv4.tcp_keepalive_intvl=200 net.ipv4.tcp_keepalive_probes=5
Ein Nutzer namens
looker
in der Gruppelooker
, um die Looker-Anwendung auszuführen.Ein Ulimit für den
looker
-Nutzer 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 gleichwertig.
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, aber das ist nicht erforderlich.
Git 1.8 oder höher ist erforderlich. Die aktuelle stabile Version von Git ist zwar nicht erforderlich, kann aber bei der Behebung von Git-Problemen hilfreich sein.
Netcat ist auch hilfreich, um Probleme mit der Netzwerkverbindung zu beheben. Ein gängiger Befehl zur Installation von Netcat auf einem Ubuntu-basierten Server lautet:
sudo apt-get install netcat
Bei Bedarf können Sie einen Proxyserver für die HTTP(S)-Anfragen einrichten, die Looker an den lokalen Host senden muss. Für die Kommunikation mit dem lokalen Proxyserver von Looker müssen Sie in
lookerstart.cfg
einige spezielle Argumente hinzufügen: Fügen Siehttp.nonProxyHosts=localhost
hinzu, um den Zugriff auf den lokalen Looker-Server zu ermöglichen, ohne den Proxy zu verwenden. Unter Looker mit BigQuery über ein Webproxy-Community-Thema verbinden finden Sie ein Beispiel für das Erstellen dieser Verbindung.
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. Sie sorgt dafür, dass die Systemuhr Ihres Hosts immer die richtige Zeit verwendet, die Looker ordnungsgemäß funktionieren muss. Looker erfordert keine bestimmte Zeitsynchronisierungssoftware, solange die Zeiten synchron bleiben. Ein NTP-Server ist nicht erforderlich, sondern nur der NTP-Client. 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-Galois/Counter Mode-Verschlüsselung (AES), um sensible Daten zu verschlüsseln, die intern gespeichert werden, darunter:
- Sicherungen der internen Datenbank von Looker
- Informationen zur Datenbank und zur Dienstverbindung
- Informationen zur Nutzerauthentifizierung
- Nutzerattributwerte
- Kundendaten, die im Cache gespeichert oder zur Auslieferung bereit sind
Eine detaillierte Liste der von Looker verschlüsselten Daten erhalten Sie von Ihrem Looker-Account Manager oder in der Looker-Hilfe, indem Sie auf Kontakt klicken.
Die Daten werden mit einem eindeutigen Datenschlüssel verschlüsselt und enthalten einen signierten und versionierten Verschlüsselungsumschlag, um die Bestätigung zu gewährleisten. In diesem Modus ist ein externer Kunden-Masterschlüssel (CMK) erforderlich. Der CMK wird zum Ableiten, Verschlüsseln und Entschlüsseln des Schlüsselverschlüsselungsschlüssels (Key Encryption Key, KEK) verwendet, der wiederum zum Ableiten, Verschlüsseln und Entschlüsseln von Datenschlüsseln verwendet wird.
Die Verschlüsselung wird nur für die interne Datenbank und den Cache von Looker verwendet. Kundendatenbanken sind von der Verschlüsselung von Looker in keiner Weise betroffen. Außerdem werden nur statische Daten (Daten, die auf der Festplatte gespeichert sind) auf diese Weise verschlüsselt.
Vom Kunden gehostete Installationen können ihre eigenen AWS KMS-Konten oder ihre eigenen benutzerdefinierten Schlüsselverwaltungssysteme verwenden. Alle Datenschlüssel und der KEK sind verschlüsselt und werden intern bei 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. Der Verlust des CMK nach der Verschlüsselung der internen Datenbank kann zum Verlust Ihrer Instanz führen.
Wenn Sie AWS KMS verwenden
Wenn Sie AWS KMS verwenden, erstellen Sie einen CMK über die AWS-Verwaltungskonsole oder die API.
Nachdem Sie die CMK erstellt haben, empfiehlt Looker, eine neue IAM-Rolle zu erstellen, die für Ihren CMK eindeutig ist, und sie mit Ihrer Looker-Instanz anzuhängen.
Das folgende Beispiel zeigt 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 die 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 Ihrer CMK fest:
export AWS_REGION=<AWS_region>
export LKR_AWS_CMK=alias/<CMK_alias>
Optional können Sie 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-CMK mit 32 Byte. Sie können den CMK entweder in einer Umgebungsvariablen oder in einer Datei speichern:
Sie können 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>
Um den CMK zu generieren und in einer Datei zu speichern, können Sie den folgenden Befehl verwenden. Dabei ist
<path_to_key_file>
der Pfad und der Dateiname zum Speichern des CMK:openssl rand -base64 32 > <path_to_key_file>
Legen Sie nach dem Generieren der CMK-Datei die Berechtigungen für die Schlüsseldatei auf den aktuellen Lesezugriff für den Nutzer fest:
chmod 0400 <path_to_key_file>
Nachdem Sie ein CMK generiert haben, sollten Sie es an einem sicheren und dauerhaften Ort aufbewahren, bevor Sie fortfahren. Der Verlust des CMK nach der Verschlüsselung der internen Datenbank kann zum Verlust Ihrer Instanz führen.
Nachdem Sie die CMK generiert und gespeichert haben, legen Sie die Umgebungsvariable LKR_MASTER_KEY_ENV
fest:
Wenn Sie den CMK in einer Umgebungsvariablen speichern, legen Sie die Umgebungsvariable
LKR_MASTER_KEY_ENV
auf den Wert des CMK fest:export LKR_MASTER_KEY_ENV=<CMK_value>
Wenn Sie Ihre 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 ein CMK generiert haben, sollten Sie es an einem sicheren und dauerhaften Ort aufbewahren, bevor Sie fortfahren. Der Verlust des CMK nach der Verschlüsselung der internen Datenbank kann zum Verlust Ihrer Instanz führen.
Looker-Anwendung installieren
Gruppe „
looker
“ erstellen.sudo groupadd looker
Erstellen Sie den Nutzer
looker
und sein Basisverzeichnis.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 Stammverzeichnis 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
lauten.Laden Sie die gewünschten Looker-JAR-Dateien über eine der Methoden auf der Dokumentationsseite zum Herunterladen der Looker-JAR-Dateien herunter. Achten Sie darauf, dass beide JAR-Dateien dieselbe Version haben. Die Verwendung unterschiedlicher Versionen der Kern- und Abhängigkeits-JAR-Dateien kann zu Instabilität in der Looker-Installation führen.
Laden Sie das neueste Startskript in dieses GitHub-Repository herunter. Wenn Looker beim Systemstart ausgeführt werden soll, können Sie es herunterladen und sowohl die Skriptoptionen
systemd
als auchinit
verwenden.Verschieben Sie das Startskript mit dem Namen
looker
und die Looker-JAR-Dateien mit dem 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 bestimmt automatisch, wie viel Java-Speicher Looker zugewiesen werden soll. Weitere Informationen zum manuellen Anpassen dieses Werts finden Sie auf der Seite Empfohlene Java-Speichereinstellungen.
Machen Sie das Looker-Startskript ausführbar. Legen Sie dazu die Berechtigungen auf
0750
fest.chmod 0750 looker
Starten Sie den Looker-Prozess über die Shell als
looker
-Nutzer../looker start
Hilfe zum Flag „Beim Start“ verwenden Sie:
java -jar looker.jar --help
Für Hilfe zum Startbefehl können Sie auch Folgendes verwenden:
java -jar looker.jar help
Öffnen Sie einen Browser für
https://hostname:9999
, wobeihostname
der DNS-Name des Hosts ist, auf dem Looker ausgeführt wird.Sie sollten
https
in der URL verwenden, damit eine Sicherheitswarnung entsteht, die Sie umgehen müssen. Diese Warnung bleibt bestehen, bis auf dem Server ein gültiges SSL-Zertifikat installiert ist.Geben Sie den Lizenzschlüssel ein, den Sie vom 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 einen looker.[yourdomain].com
-DNS-Eintrag für den Server hinzu. Dieser Schritt ist optional, wird aber empfohlen.
Looker automatisch bereitstellen
Looker kann mit einem Konfigurationsverwaltungstool wie Ansible oder Chef bereitgestellt werden. Eine entsprechende Rolle für die automatisierte Bereitstellung finden Sie auf der Dokumentationsseite Tools zur Konfigurationsverwaltung.
Hypervisor-Feinabstimmung
Looker wird als virtuelle Java-Maschine ausgeführt. Wenn sich Ihre Looker-Instanz auf einem VMware-Gast befindet, müssen Sie möglicherweise die Leistung optimieren. Weitere Informationen finden Sie in den Best Practices für Java.
Auf anderen Virtualisierungsplattformen kann sich die Leistung verbessern, um den Arbeitsspeicher des Looker-Hosts vom Hypervisor zu reservieren. Dies ist bei Amazon EC2 nicht steuerbar. Für andere Anbieter sollten Sie jedoch in der Dokumentation nachlesen.
Optionale MySQL-Back-End-Datenbank einrichten
Standardmäßig verwendet Looker eine HyperSQL-In-Memory-Datenbank, um seine Konfiguration, Nutzer und andere Daten zu speichern. Sie können jedoch eine externe MySQL-Datenbank verwenden, um die internen Informationen von Looker zu speichern. Informationen zum Konfigurieren und Optimieren einer MySQL-Back-End-Datenbank finden Sie auf der Dokumentationsseite Zu MySQL migrieren.
Nächste Schritte
Nachdem Sie Looker installiert haben, können Sie Looker-Startoptionen konfigurieren.