Metabase - pradžios vadovas
Metabase yra atvirojo kodo verslo analitikos platforma, leidžianti tyrinėti duomenis, kurti skydelius ir dalytis įžvalgomis – nerašant SQL. Prijunkite savo duomenų bazes (PostgreSQL, MySQL, MongoDB ir kt.), užduokite klausimus vaizdiniame užklausų kūrimo įrankyje ir paverskite atsakymus interaktyviomis diagramomis ir skydeliais.
1 žingsnis – Patikrinkite, ar Metabase veikia
Jūsų serverio IP adresas ir root slaptažodis nurodyti kliento skydelio puslapyje Server Details. Atidarykite naršyklę ir eikite į:
http://your.server.ip
Paleidus serverį, Metabase pasileidimas gali užtrukti 30-60 sekundžių. Jei matote prisijungimo klaidą arba „502 Bad Gateway”, šiek tiek palaukite ir atnaujinkite puslapį. Įsikėlus pamatysite sąrankos vedlį.
Jei serverį patalpinote už VyOS maršrutizatoriaus privačiame tinkle, arba sukonfigūruokite prievadų peradresavimą (80 ir 443), kad Metabase pasiektumėte iš interneto, arba prisijunkite per VPN ir pasiekite jį privačiu serverio IP.
2 žingsnis – Sąrankos vedlio užbaigimas
Sąrankos vedlys padės atlikti pradinę konfigūraciją:
Language
Pasirinkite pageidaujamą kalbą ir spustelėkite Next.
Admin Account
Susikurkite administratoriaus paskyrą – įveskite vardą, pavardę, el. paštą, įmonės pavadinimą (neprivaloma) ir slaptažodį. Šiais duomenimis jungsitės prie Metabase.
Usage Info
Metabase paklaus, kam planuojate jį naudoti. Pasirinkite variantą arba praleiskite.
Add Your Data
Prijunkite esamą duomenų bazę, kurią norite analizuoti (PostgreSQL, MySQL, MongoDB ir kt.). Jei dar neturite, praleiskite šį žingsnį – Metabase pasiūlys pavyzdinę duomenų bazę. Duomenų bazes galėsite pridėti vėliau.
Usage Data Preferences
Pasirinkite, ar siųsti anoniminę naudojimo statistiką Metabase.
All Set Up
Sąranka baigta. Spustelėkite Take me to Metabase , kad atidarytumėte skydelį.
Prisijunkite el. paštu ir slaptažodžiu, kuriuos sukūrėte žingsnyje Admin Account.
3 žingsnis – Domeno ir SSL konfigūravimas (neprivaloma)
Norėdami naudoti Metabase su savo domenu ir HTTPS:
- Sukurkite A įrašą DNS nustatymuose, nukreipiantį jūsų domeną į serverio IP
- Palaukite, kol DNS išplis (paprastai nuo kelių minučių iki kelių valandų)
- Prisijunkite per SSH ir atnaujinkite Nginx konfigūraciją:
ssh root@your.server.ip
# Update Nginx server_name with your domain
sed -i 's/server_name _;/server_name your-domain.com;/' /etc/nginx/sites-available/metabase
nginx -t && systemctl reload nginx
# Obtain a free Let's Encrypt SSL certificate
certbot --nginx -d your-domain.com
Certbot automatiškai sukonfigūruos Nginx HTTPS ir automatinį sertifikato atnaujinimą.
Po įdiegimo
Duomenų bazių prijungimas
Norėdami pridėti duomenų šaltinį po pradinės sąrankos:
- Spustelėkite mygtuką krumpliaračio piktograma (viršuje dešinėje) → Admin settings → Databases → Add database
- Pasirinkite duomenų bazės tipą (PostgreSQL, MySQL, MongoDB, SQLite ir kt.)
- Įveskite prisijungimo duomenis (host, prievadas, duomenų bazės pavadinimas, prisijungimo duomenys)
- Spustelėkite Išsaugoti – Metabase automatiškai sinchronizuos schemą
Duomenų bazėms išoriniuose serveriuose įsitikinkite, kad ugniasienė leidžia prisijungimus iš jūsų Metabase serverio IP.
Fail2Ban – apsauga nuo slaptažodžių spėjimo atakų
Jūsų serveryje įdiegta Fail2Ban iš anksto sukonfigūruotas apsaugoti SSH nuo slaptažodžių spėjimo atakų.
| Taisyklė | Maks. bandymų | Blokavimo trukmė |
|---|---|---|
| SSH | 5 nesėkmingi prisijungimai | 10 minučių |
Naudingos komandos:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Jei netyčia užsiblokavote, prisijunkite per VNC konsolę kliento skydelyje ir atblokuokite savo IP.
Paslaugų valdymas
Metabase veikia kaip systemd paslauga. Naudingos komandos:
# Check service status
systemctl status metabase
# Restart Metabase
systemctl restart metabase
# View logs
journalctl -u metabase -f
# Nginx reverse proxy
systemctl status nginx
systemctl reload nginx
Atnaujinimai
Norėdami atnaujinti Metabase iki naujausios versijos:
# Stop the service
systemctl stop metabase
# Download the latest JAR (backup the current one first)
cd /opt/metabase
cp metabase.jar metabase.jar.bak
curl -L -o metabase.jar https://downloads.metabase.com/latest/metabase.jar
# Start the service
systemctl start metabase
Sistemos paketų atnaujinimas per SSH:
apt update && apt upgrade -y
Atsarginės kopijos
Metabase visus savo duomenis (klausimus, skydelius, nustatymus) saugo H2 duomenų bazėje. Atsarginė kopija:
# Stop Metabase before backing up
systemctl stop metabase
# Copy the database file
cp /opt/metabase/metabase.db.mv.db /root/metabase-backup-$(date +%F).db
# Start Metabase again
systemctl start metabase
Gamybiniam naudojimui su dideliais duomenų rinkiniais apsvarstykite perkėlimą iš H2 į PostgreSQL.
Įdiegta programinė įranga
| Komponentas | Versija |
|---|---|
| Ubuntu | 24.04 LTS |
| Metabase | 0.52.5 |
| Java | 21 |
| Nginx | 1.24 |
| Certbot | 2.9.0 |
| Fail2Ban | 1.0.2 |
Trikčių šalinimas
| Problema | Sprendimas |
|---|---|
| Puslapis neįsikelia po paleidimo | Metabase pasileidžia per 30-60 sekundžių. Palaukite ir atnaujinkite. Būsenos patikra: systemctl status metabase |
| 502 Bad Gateway naršyklėje | Metabase neveikia. Paleiskite iš naujo: systemctl restart metabase. Žurnalų tikrinimas: journalctl -u metabase --no-pager -n 50 |
| Atminties trūkumo klaidos | Metabase reikia bent 2 GB RAM. Patikrinkite su free -h. Apsvarstykite didesnį serverio planą |
| Nepavyksta prisijungti prie išorinės duomenų bazės | Patikrinkite duomenų bazės host, prievadą ir prisijungimo duomenis. Įsitikinkite, kad nuotolinės duomenų bazės ugniasienė leidžia prisijungimus iš jūsų serverio IP |
| Pamiršote Metabase administratoriaus slaptažodį | Atkūrimas per SSH: java -jar /opt/metabase/metabase.jar reset-password EMAIL |
| Užblokavo Fail2Ban | Atblokuokite savo IP per VNC konsolę kliento skydelyje |
| Pamiršote root slaptažodį | Atkurkite jį per VNC konsolę kliento skydelyje |