Table of Contents

Metabase - Przewodnik na start

Metabase to platforma Business Intelligence typu open source, która umożliwia analizowanie danych, tworzenie dashboardów i udostępnianie wniosków bez konieczności pisania zapytań SQL. Możesz podłączyć swoje bazy danych (PostgreSQL, MySQL, MongoDB i inne), zadawać pytania za pomocą wizualnego kreatora zapytań oraz przekształcać wyniki w interaktywne wykresy i dashboardy.


Krok 1 – Sprawdzenie działania Metabase

Adres IP serwera oraz hasło użytkownika root znajdują się w sekcji Server Information na karcie Overview serwera w panelu klienta. Otwórz przeglądarkę i przejdź pod adres:

http://your.server.ip

Po uruchomieniu serwera Metabase może potrzebować od 30 do 60 sekund na pełne uruchomienie. Jeśli zobaczysz błąd połączenia lub komunikat „502 Bad Gateway”, odczekaj chwilę i odśwież stronę. Po załadowaniu wyświetli się kreator konfiguracji.

Jeśli serwer znajduje się za routerem VyOS w sieci prywatnej, skonfiguruj przekierowanie portów (80 i 443), aby uzyskać dostęp do Metabase z Internetu, lub połącz się przez VPN i korzystaj z prywatnego adresu IP serwera.


Krok 2 – Przejdź przez kreator konfiguracji

Kreator przeprowadzi Cię przez początkową konfigurację:

Język

Wybierz preferowany język i kliknij Dalej.

Konto administratora

Utwórz konto administratora, podając imię, nazwisko, adres e-mail, nazwę firmy (opcjonalnie) oraz hasło. Dane te będą używane do logowania do Metabase.

Informacje o wykorzystaniu

Metabase zapyta, do czego planujesz używać aplikacji. Wybierz odpowiednią opcję lub pomiń ten krok.

Dodaj swoje dane

Podłącz istniejącą bazę danych, którą chcesz analizować (PostgreSQL, MySQL, MongoDB itd.). Jeśli nie masz jeszcze gotowej bazy, pomiń ten krok. Metabase udostępni przykładową bazę danych do eksploracji. Własne bazy możesz dodać później.

Preferencje dotyczące danych o użytkowaniu

Wybierz, czy chcesz wysyłać anonimowe statystyki użytkowania do Metabase.

Gotowe

Konfiguracja została zakończona. Kliknij Przejdź do Metabase, aby otworzyć dashboard.

Zaloguj się przy użyciu adresu e-mail i hasła utworzonych podczas tworzenia konta administratora.


Krok 3 – Konfiguracja domeny i SSL (opcjonalnie)

Aby korzystać z Metabase pod własną domeną i przez HTTPS:

  1. Utwórz rekord A w ustawieniach DNS, wskazujący domenę na adres IP serwera.
  2. Poczekaj na propagację DNS (zwykle od kilku minut do kilku godzin).
  3. Połącz się przez SSH i zaktualizuj konfigurację Nginx:
ssh root@your.server.ip # Zaktualizuj parametr server_name w konfiguracji Nginx sed -i 's/server_name _;/server_name your-domain.com;/’ /etc/nginx/sites-available/metabase nginx -t && systemctl reload nginx # Pobierz bezpłatny certyfikat SSL Let’s Encrypt certbot –nginx -d your-domain.com

Certbot automatycznie skonfiguruje Nginx do obsługi HTTPS oraz włączy automatyczne odnawianie certyfikatu.


Po instalacji

Podłączanie baz danych

Aby dodać źródło danych po zakończeniu początkowej konfiguracji:

  1. Kliknij ikonę koła zębatego (w prawym górnym rogu) → Admin settingsDatabasesAdd database.
  2. Wybierz typ bazy danych (PostgreSQL, MySQL, MongoDB, SQLite itd.).
  3. Wprowadź dane połączenia (host, port, nazwa bazy danych oraz dane logowania).
  4. Kliknij Save. Metabase automatycznie zsynchronizuje schemat bazy danych.

W przypadku baz danych znajdujących się na zewnętrznych serwerach upewnij się, że zapora sieciowa zezwala na połączenia z adresu IP serwera Metabase.

Fail2Ban – Ochrona przed atakami brute force

Na serwerze jest już skonfigurowany Fail2Ban, który chroni usługę SSH przed atakami typu brute force.

Reguła Maks. liczba prób Czas blokady
SSH 5 nieudanych logowań 10 minut

Przydatne polecenia:

# Sprawdź zablokowane adresy IP fail2ban-client status sshd # Odblokuj adres IP fail2ban-client set sshd unbanip 1.2.3.4

Jeśli przypadkowo zablokujesz sobie dostęp, połącz się z serwerem przez konsolę VNC w panelu klienta i odblokuj swój adres IP.

Zarządzanie usługą

Metabase działa jako usługa systemd. Przydatne polecenia:

# Sprawdź status usługi systemctl status metabase # Uruchom ponownie Metabase systemctl restart metabase # Wyświetl logi journalctl -u metabase -f # Reverse proxy Nginx systemctl status nginx systemctl reload nginx

Aktualizacje

Aby zaktualizować Metabase do najnowszej wersji:

# Zatrzymaj usługę systemctl stop metabase # Pobierz najnowszy plik JAR (najpierw wykonaj kopię zapasową obecnego) cd /opt/metabase cp metabase.jar metabase.jar.bak curl -L -o metabase.jar https://downloads.metabase.com/latest/metabase.jar # Uruchom usługę systemctl start metabase

Aby zaktualizować pakiety systemowe przez SSH:

apt update && apt upgrade -y

Kopie zapasowe

Metabase przechowuje wszystkie dane (pytania, dashboardy i ustawienia) w bazie danych H2. Aby wykonać kopię zapasową:

# Przed wykonaniem kopii zapasowej zatrzymaj Metabase systemctl stop metabase # Skopiuj plik bazy danych cp /opt/metabase/metabase.db.mv.db /root/metabase-backup-$(date +%F).db # Ponownie uruchom Metabase systemctl start metabase

W środowiskach produkcyjnych z dużymi zbiorami danych warto rozważyć migrację z H2 do PostgreSQL.


Dołączone oprogramowanie

Komponent Wersja
Ubuntu 24.04 LTS
Metabase 0.52.5
Java 21
Nginx 1.24
Certbot 2.9.0
Fail2Ban 1.0.2

Rozwiązywanie problemów

Problem Rozwiązanie
Strona nie ładuje się po uruchomieniu serwera Metabase potrzebuje od 30 do 60 sekund na uruchomienie. Poczekaj i odśwież stronę. Sprawdź status usługi: systemctl status metabase.
Błąd „502 Bad Gateway” w przeglądarce Metabase nie działa. Uruchom usługę ponownie: systemctl restart metabase. Sprawdź logi: journalctl -u metabase –no-pager -n 50.
Błędy związane z brakiem pamięci Metabase wymaga co najmniej 2 GB pamięci RAM. Sprawdź dostępność pamięci poleceniem free -h. Rozważ zwiększenie parametrów serwera.
Nie można połączyć się z zewnętrzną bazą danych Sprawdź adres hosta, port oraz dane logowania do bazy. Upewnij się, że zapora zdalnej bazy danych zezwala na połączenia z adresu IP Twojego serwera.
Zapomniane hasło administratora Metabase Zresetuj hasło przez SSH: java -jar /opt/metabase/metabase.jar reset-password EMAIL.
Adres IP został zablokowany przez Fail2Ban Skorzystaj z konsoli VNC w panelu klienta, aby odblokować swój adres IP.
Zapomniane hasło użytkownika root Skorzystaj z konsoli VNC w panelu klienta, aby je zresetować.