Metabase ist ein kostenloses und Open-Source-Business-Intelligence-Tool, das verwendet werden kann, um Datensätze zu durchsuchen und Informationen anzuzeigen. Es ist ein einfaches und leistungsstarkes Analysetool, mit dem Sie ohne technische Kenntnisse aus den Daten Ihres Unternehmens lernen können. Es ermöglicht Ihnen, Diagramme und Dashboards zu erstellen, Abfragen ohne Verwendung von SQL zu stellen und detaillierte Informationen zu Zeilen in Ihrer Datenbank anzuzeigen.
Metabase ist die richtige Wahl für Sie, wenn Sie nach einer leistungsstarken Datenbanksuchplattform für Ihr Unternehmen suchen.
In diesem Tutorial erklären wir, wie man Metabase auf Ubuntu 20.04 mit Nginx und Let’s Encrypt SSL installiert.
Voraussetzungen
- Ein Server mit Ubuntu 20.04.
- Ein gültiger Domainname, auf den Ihre Server-IP verweist.
- Ein Root-Passwort wird auf dem Server konfiguriert.
Installieren Sie Java
Metabase ist eine Java-basierte Anwendung. Daher muss Java auf Ihrem Server installiert sein. Sie können es mit dem folgenden Befehl installieren:
apt-get install openjdk-11-jdk openjdk-11-jre -y
Nach erfolgreicher Installation können Sie die Java-Version mit dem folgenden Befehl überprüfen:
Java-Version
Sie sollten die folgende Ausgabe sehen:
openjdk version „11.0.8“ 2020-07-14OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu -0ubuntu120.04, gemischter Modus, Teilen)
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
MariaDB installieren und konfigurieren
Als nächstes müssen Sie den MariaDB-Datenbankserver in Ihrem System installieren. Sie können es installieren, indem Sie den folgenden Befehl ausführen:
apt-get install mariadb-server -y
Melden Sie sich nach der Installation des MariaDB-Servers mit dem folgenden Befehl bei der MariaDB-Shell an:
mysql
Erstellen Sie nach der Anmeldung eine Datenbank und einen Benutzer für Metabase mit dem folgenden Befehl:
MariaDB [(keine)]> CREATE DATABASE metabase;
MariaDB [(keine)]> GEWÄHRT ALLE PRIVILEGIEN AUF Metabase.* TO 'metabase'@'localhost' IDENTIFIED BY "password";
Löschen Sie als Nächstes die Berechtigungen und verlassen Sie die MariaDB-Shell mit dem folgenden Befehl:
MariaDB [(keine)]> FLUSH PRIVILEGES;
MariaDB [(keine)]> EXIT;
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Metabase herunterladen
Erstellen Sie zuerst ein Verzeichnis für Metabase im /opt-Verzeichnis mit dem folgenden Befehl:
mkdir /opt/metabase
Wechseln Sie als Nächstes in das Verzeichnis /opt/metabase und laden Sie die neueste Version von Metabase mit dem folgenden Befehl herunter:
cd /opt/metabase
wget https://downloads.metabase.com/v0.36.2/metabase.jar
Als Nächstes müssen Sie einen separaten Benutzer und eine separate Gruppe erstellen, um Metabase auszuführen. Sie können sie mit dem folgenden Befehl erstellen:
addgroup --quiet --system Metabase
adduser --quiet --system --ingroup Metabase --no-create-home --disabled-password Metabase
Ändern Sie als Nächstes den Besitz von /opt/metabase auf metabase und erteilen Sie die entsprechende Berechtigung mit dem folgenden Befehl:
chown -R metabase:metabase /opt/metabase
chmod -R 755 /opt/metabase
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Erstellen Sie eine Systemd-Dienstdatei für Metabase
Als Nächstes müssen Sie eine systemd-Dienstdatei erstellen, um den Metabase-Dienst zu verwalten. Sie können es mit dem folgenden Befehl erstellen:
nano /etc/systemd/system/metabase.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=Metabase-Server[Service]WorkingDirectory=/opt/metabase/ExecStart=/usr/bin/java -jar /opt/metabase/metabase.jarUser=metabaseType=simpleRestart=on-failureRestartSec=10[Install ]WantedBy=multi-user.target
Speichern und schließen Sie die Datei und laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Metabase-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl start metabase
systemctl enable metabase
Sie können jetzt den Status von Metabase mit dem folgenden Befehl überprüfen:
Systemctl-Status-Metabasis
Sie sollten die folgende Ausgabe sehen:
An diesem Punkt wird Metabase gestartet und überwacht Port 3000. Sie können dies mit dem folgenden Befehl überprüfen:
netstat -tunelp | grep 3000
Sie sollten die folgende Ausgabe sehen:
tcp6 0 0 :::3000 :::* LISTEN 109 35366 9650/java
Konfigurieren Sie Nginx als Reverse-Proxy für Metabase
Als nächstes müssen Sie Nginx als Reverse-Proxy für Metabase konfigurieren. Installieren Sie zuerst den Nginx-Webserver mit dem folgenden Befehl:
apt-get install nginx -y
Erstellen Sie nach der Installation von Nginx mit dem folgenden Befehl eine neue Konfigurationsdatei für den virtuellen Nginx-Host:
nano /etc/nginx/sites-available/metabase.conf
Fügen Sie die folgenden Zeilen hinzu:
Upstream-Metabase { server 127.0.0.1:3000;}server { listen 80; Servername metabase.linuxbuz.com; access_log /var/log/nginx/metabase.linuxbuz.com-access.log; error_log /var/log/nginx/metabase.linuxbuz.com-error.log; Ort / { Proxy_Pass http://metabase/; Proxy_http_Version 1.1; Proxy_set_header Upgrade $http_upgrade; proxy_set_header Verbindung "upgrade"; Proxy_set_header Host $http_host; Proxy_Set_Header X-Real-IP $remote_addr; Proxy_set_header X-Forward-For $proxy_add_x_forwarded_for; proxy_set_header X-Forward-Proto http; proxy_set_header X-Nginx-Proxy true; Proxy-Weiterleitung aus; }}
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Aktivieren Sie dann den virtuellen Nginx-Host mit dem folgenden Befehl:
ln -s /etc/nginx/sites-available/metabase.conf /etc/nginx/sites-enabled/
Überprüfen Sie als Nächstes Nginx mit dem folgenden Befehl auf Konfigurationsfehler:
nginx -t
Sie sollten die folgende Ausgabe sehen:
nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich
Starten Sie abschließend den Nginx-Dienst neu, um die Änderungen zu übernehmen:
systemctl startet nginx neu
An diesem Punkt ist Nginx so konfiguriert, dass es Metabase auf Port 80 bedient. Sie können jetzt mit dem nächsten Schritt fortfahren.
Sichere Metabasis mit Let's Encrypt
Zuerst müssen Sie den Certbot Lets Encrypt-Client installieren, um SSL für Ihre Domain zu installieren und zu verwalten. Sie können den Certbot-Client mit dem folgenden Befehl installieren:
apt-get install python3-certbot-nginx -y
Sichern Sie nach der Installation die Metabase-Website mit Let’s Encrypt SSL mit dem folgenden Befehl:
certbot --nginx -d metabase.linuxbuz.com
Sie werden aufgefordert, Ihre E-Mail-Adresse anzugeben und die unten aufgeführten Nutzungsbedingungen zu akzeptieren:
Speichern des Debug-Protokolls in /var/log/letsencrypt/letsencrypt.logAusgewählte Plugins:Authenticator nginx, Installer nginxE-Mail-Adresse eingeben (wird für dringende Verlängerungs- und Sicherheitshinweise verwendet) (Geben Sie „c“ zum Abbrechen ein):[email protected]- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Bitte lesen Sie die Nutzungsbedingungen unter https://letsencrypt.org /documents/LE-SA-v1.2-November-15-2017.pdf. Sie müssen zustimmen, um sich beim ACME-Server unter https://acme-v02.api.letsencrypt.org/directory- - - - - - - - - - - - - - - - - - - - - - - - - zu registrieren - - - - - - - - - - - - - - -(A)gree/(C)cancel:A- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Wären Sie bereit, Ihre E-Mail-Adresse mit der Electronic Frontier Foundation, einem Gründungspartner des Let's Encrypt-Projekts und der gemeinnützigen Organisation, die Certbot entwickelt, zu teilen? Wir möchten Ihnen E-Mails über unsere Arbeit zur Verschlüsselung des Internets, EFF-Nachrichten, Kampagnen und Möglichkeiten zur Unterstützung der digitalen Freiheit senden.- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -(Y)es/(N)o:YBeziehen eines neuen ZertifikatsDurchführen der folgenden Herausforderungen:http-01-Herausforderung für metabase.linuxbuz.comWarten auf Überprüfung...Reinigung upherausforderungenBereitstellen des Zertifikats auf VirtualHost /etc/nginx/sites-enabled/metabase.conf
Wählen Sie als Nächstes aus, ob der HTTP-Datenverkehr wie unten gezeigt an HTTPS umgeleitet werden soll:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -1:Keine Weiterleitung - Machen Sie keine weitere Änderungen an der Webserver-Konfiguration.2:Umleitung - Alle Anfragen werden auf sicheren HTTPS-Zugriff umgeleitet. Wählen Sie dies für neue Websites oder wenn Sie sicher sind, dass Ihre Website auf HTTPS funktioniert. Sie können diese Änderung rückgängig machen, indem Sie die Konfiguration Ihres Webservers bearbeiten. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Wählen Sie die entsprechende Nummer [1-2] und dann [enter] (drücken Sie 'c' zum Abbrechen):2
Geben Sie 2 ein und drücken Sie die Eingabetaste, um Let's Encrypt SSL für Ihre Domain zu installieren.
Umleitung des gesamten Datenverkehrs auf Port 80 zu SSL in /etc/nginx/sites-enabled/metabase.conf- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -Herzliche Glückwünsche! Sie haben https://metabase.linuxbuz.com erfolgreich aktiviert. Sie sollten Ihre Konfiguration testen unter:https://www.ssllabs.com/ssltest/analyze.html?d=metabase.linuxbuz.com- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -WICHTIGE HINWEISE:- Herzlichen Glückwunsch! Ihr Zertifikat und Ihre Kette wurden gespeichert unter:/etc/letsencrypt/live/metabase.linuxbuz.com/fullchain.pem Ihre Schlüsseldatei wurde gespeichert unter:/etc/letsencrypt/live/metabase.linuxbuz.com/privkey.pem Ihre Das Zertifikat läuft am 30.10.2020 ab. Um in Zukunft eine neue oder optimierte Version dieses Zertifikats zu erhalten, führen Sie einfach certbot erneut mit der Option „certonly“ aus. Um *alle* Ihre Zertifikate nicht interaktiv zu erneuern, führen Sie „certbot renew“ aus – Ihre Kontoanmeldeinformationen wurden in Ihrem Certbot-Konfigurationsverzeichnis unter /etc/letsencrypt gespeichert. Sie sollten jetzt ein sicheres Backup dieses Ordners erstellen. Dieses Konfigurationsverzeichnis enthält auch Zertifikate und private Schlüssel, die von Certbot erhalten wurden, daher ist es ideal, regelmäßige Backups dieses Ordners zu erstellen. - Wenn Sie Certbot mögen, erwägen Sie bitte, unsere Arbeit zu unterstützen, indem Sie:an ISRG / Let's Encrypt spenden:https://letsencrypt.org/donate an EFF spenden:https://eff.org/donate-le - Wir konnten uns nicht anmelden Sie die EFF-Mailingliste, weil Ihre E-Mail-Adresse ungültig zu sein scheint. Sie können es später erneut versuchen, indem Sie https://act.eff.org.besuchen
Jetzt ist Ihre Metabase-Website mit Let's Encrypt SSL gesichert.
Zugriff auf die Metabase-Webschnittstelle
Öffnen Sie nun Ihren Webbrowser und geben Sie die URL https://metabase.linuxbuz.com ein. Sie werden wie unten gezeigt zum Begrüßungsbildschirm von Metabase umgeleitet:
Klicken Sie jetzt auf Los geht's Taste. Sie sollten den folgenden Bildschirm sehen:
Wählen Sie Ihre gewünschte Sprache und klicken Sie auf Weiter Taste. Sie sollten den folgenden Bildschirm sehen:
Geben Sie Ihren Namen, Ihre E-Mail-Adresse und Ihr Passwort ein und klicken Sie auf Weiter Taste. Sie sollten den Konfigurationsbildschirm der Metabase-Datenbank sehen:
Geben Sie Ihre Datenbankinformationen ein und klicken Sie auf Weiter Taste. Sie sollten den Einstellungsbildschirm für die Metabase-Nutzungsdaten sehen:
Aktivieren Sie Ihre gewünschte Option und klicken Sie auf Weiter Taste. Sie sollten den folgenden Bildschirm sehen:
Geben Sie Ihre E-Mail-Adresse ein und klicken Sie auf Take me to Metabase . Sie sollten das Metabase-Dashboard auf dem folgenden Bildschirm sehen:
Schlussfolgerung
Herzliche Glückwünsche! Sie haben Metabase mit Nginx und Let’s Encrypt SSL erfolgreich auf dem Ubuntu 20.04-Server installiert. Sie können jetzt die Metabase nach neuen Funktionen durchsuchen. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.