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.ipPo 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:
- Utwórz rekord A w ustawieniach DNS, wskazujący domenę na adres IP serwera.
- Poczekaj na propagację DNS (zwykle od kilku minut do kilku godzin).
- Połącz się przez SSH i zaktualizuj konfigurację Nginx:
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:
- Kliknij ikonę koła zębatego (w prawym górnym rogu) → Admin settings → Databases → Add database.
- Wybierz typ bazy danych (PostgreSQL, MySQL, MongoDB, SQLite itd.).
- Wprowadź dane połączenia (host, port, nazwa bazy danych oraz dane logowania).
- 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.4Jeś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 nginxAktualizacje
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 metabaseAby zaktualizować pakiety systemowe przez SSH:
apt update && apt upgrade -yKopie 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 metabaseW ś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ć. |