Гид по технологиям

Установка Metabase на Ubuntu 18.04

• 7 min read • DevOps • Обновлено 24 Nov 2025
Установка Metabase на Ubuntu 18.04
Установка Metabase на Ubuntu 18.04

Кому подходит это руководство: администраторы Linux, DevOps-инженеры и разработчики, которым нужен локальный или приватный экземпляр Metabase для аналитики.

О чём эта инструкция

В статье показаны все шаги для развёртывания Metabase на Ubuntu 18.04 с использованием MariaDB как источника данных и systemd для управления сервисом. Включены рекомендации по безопасности, проверке работоспособности и типичные сценарии устранения неполадок.

Быстрый обзор (Primary intent + варианты)

  • Установка Metabase на Ubuntu 18.04 (основной запрос)
  • Metabase установка Linux
  • Metabase systemd настройка
  • Настройка Metabase с MariaDB
  • Логирование Metabase rsyslog

Требования и примечания

  • Рекомендуемая конфигурация для небольшого инстанса: 4 ГБ ОЗУ, 4 vCPU, 50 ГБ свободного диска. Это ориентировочные значения.
  • Metabase — бесплатный и с открытым исходным кодом инструмент BI (Business Intelligence) на Java.
  • В примерах используется OpenJDK 11 и MariaDB. Поддерживаются другие СУБД как источники данных (MySQL, PostgreSQL, MongoDB, Redshift, BigQuery и т. д.).

Важно: этот гайд рассчитан на Ubuntu 18.04. На других версиях команды и пакеты могут отличаться.

Что мы сделаем

  • Установим Java (OpenJDK).
  • Установим и настроим MariaDB.
  • Создадим системного пользователя и каталог для Metabase.
  • Настроим логирование через rsyslog.
  • Скачиваем metabase.jar и создадим systemd-сервис.
  • Выполним постустановку и проверку доступа.

Шаг 1 — Установка Java

Metabase написан на Java, поэтому на сервере должен быть установлен JRE/JDK.

Установите OpenJDK (в примере используется пакет по умолчанию для Ubuntu):

sudo apt install default-jre

Проверьте установленную версию:

java -version

Ожидаемый результат: OpenJDK 11 (или аналогичная версия) установлена и доступна по пути java.

Установка OpenJDK

ALT: Скриншот вывода команды java -version после установки OpenJDK на Ubuntu

Шаг 2 — Установка MariaDB и создание базы данных

Установите сервер MariaDB и клиентские утилиты:

sudo apt install mariadb-server mariadb-client

Запустите службу и добавьте её в автозагрузку:

systemctl start mariadb
systemctl enable mariadb

Запуск MariaDB

ALT: Окно терминала с командами systemctl start и enable для MariaDB

Защитите установку и задайте пароль root‑пользователя MariaDB:

mysql_secure_installation

Следуйте подсказкам и введите Y/Да на предлагаемые действия (установка пароля, удаление анонимных пользователей, удаление тестовой базы, перезагрузка таблиц привилегий).

Затем войдите в консоль MySQL и создайте базу данных и пользователя для Metabase:

mysql -u root -p
# Введите пароль root
create database metabase;
create user metabase@'localhost' identified by 'mtabasedbpass';
grant all on metabase.* to metabase@'localhost' with grant option;
flush privileges;
exit

Важно: замените ‘mtabasedbpass’ на надёжный пароль в реальном окружении.

Создание базы данных для Metabase

ALT: Команды SQL создания базы данных metabase и пользователя metabase в MySQL shell

Шаг 3 — Создание системного пользователя и каталогов Metabase

Создайте системную группу и пользователя metabase. Сервис будет работать от этого пользователя:

sudo addgroup --quiet --system metabase
sudo adduser --quiet --system --ingroup metabase --no-create-home --disabled-password metabase

Создайте каталог для установки и назначьте владельца:

sudo mkdir -p /opt/metabase
sudo chown -R metabase:metabase /opt/metabase

Создайте файл окружения для системного сервиса:

sudo touch /etc/default/metabase
sudo chmod 640 /etc/default/metabase

Файл /etc/default/metabase можно оставить пустым или задать переменные окружения, например JAVA_OPTS или профиль базы данных при необходимости.

Добавление пользователя metabase

ALT: Терминал с командами добавления системного пользователя и создания каталога /opt/metabase

Шаг 4 — Настройка логирования через rsyslog

Создайте файл логов для Metabase и назначьте владельца:

sudo touch /var/log/metabase.log
sudo chown metabase:metabase /var/log/metabase.log

Создайте конфигурацию rsyslog:

cd /etc/rsyslog.d/
sudo vim /etc/rsyslog.d/metabase.conf

Вставьте в файл:

:msg,contains,"metabase" /var/log/metabase.log
& stop

Перезапустите rsyslog:

systemctl restart rsyslog

Теперь сообщения, помеченные идентификатором syslog metabase, будут записываться в /var/log/metabase.log.

Настройка rsyslog для Metabase

ALT: Редактирование конфигурационного файла rsyslog для перенаправления логов Metabase

Шаг 5 — Скачивание Metabase

Перейдите в каталог установки и скачайте jar-файл Metabase. В примере используется версия v0.34.1 как в исходном материале; при реальной установке проверьте актуальную версию на официальном сайте.

cd /opt/metabase
wget http://downloads.metabase.com/v0.34.1/metabase.jar
sudo chown -R metabase:metabase /opt/metabase

Скачивание Metabase

ALT: Процесс загрузки metabase.jar в каталог /opt/metabase с помощью wget

Совет: для автоматических обновлений используйте менеджер релизов или задачу cron, но всегда проверяйте совместимость новой версии с вашей СУБД и конфигурацией.

Шаг 6 — Создание systemd-сервиса для Metabase

Создайте файл сервиса systemd:

cd /etc/systemd/system/
sudo vim /etc/systemd/system/metabase.service

Вставьте следующее содержимое (точно как ниже):

[Unit]
Description=Metabase server
After=syslog.target
After=network.target

[Service]
WorkingDirectory=/opt/metabase/
ExecStart=/usr/bin/java -jar /opt/metabase/metabase.jar
EnvironmentFile=/etc/default/metabase
User=metabase
Type=simple
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=metabase
SuccessExitStatus=143
TimeoutStopSec=120
Restart=always

[Install]
WantedBy=multi-user.target

Сохраните файл и перезагрузите менеджер systemd:

systemctl daemon-reload
systemctl start metabase
systemctl enable metabase

Проверьте статус:

systemctl status metabase

Если служба запущена корректно, systemd покажет активный статус (active (running)).

Создание systemd-сервиса для Metabase

ALT: Конфигурация systemd для запуска Metabase как системной службы и вывод systemctl status

Шаг 7 — Постустановка и доступ к Web-интерфейсу

По умолчанию Metabase слушает 3000 порт. Откройте в браузере адрес вашего сервера с портом 3000:

http://10.10.10.100:3000/

(Замените 10.10.10.100 на IP-адрес вашего сервера или доменное имя.)

Вы увидите страницу установки Metabase. Нажмите кнопку “Let’s get started” и следуйте мастеру: создайте административный аккаунт, добавьте источник данных (например, MariaDB) и настройте предпочтения по отправке данных об использовании.

Metabase login

ALT: Экран приветствия Metabase с кнопкой “Let’s get started”

Введите данные пользователя

ALT: Форма создания администратора Metabase — ввод имени, email и пароля

Настройка MySQL для Metabase

ALT: Экран настройки подключения к базе данных MySQL/MariaDB в мастере Metabase

Предпочтения использования

ALT: Экран выбора предпочтений по отправке статистики об использовании Metabase

После завершения мастер перенаправит вас на начальную панель Metabase.

Metabase установлен успешно

ALT: Экран подтверждения успешной установки Metabase с кнопкой перехода на дашборд

Панель Metabase

ALT: Пример стандартной панели инструментов (дашборда) Metabase после установки

Рекомендации по безопасности и обслуживанию

  • Настройте брандмауэр и закройте доступ к порту 3000 извне, если Metabase не должен быть публичным. Разрешайте доступ только через reverse proxy (NGINX) или VPN.
  • Используйте reverse proxy (NGINX/Apache) для TLS (HTTPS), проксирования заголовков и ограничения размера тела запросов.
  • Храните метаданные Metabase (если вы решите использовать встроенную базу H2) отдельно от рабочей базы. Для продакшена рекомендуется PostgreSQL или MariaDB как внешний репозиторий метаданных.
  • Держите резервные копии базы данных метаданных и источников данных.
  • Обновляйте Java и Metabase по графику и тестируйте новые версии в staging перед продом.

Проверка работоспособности (smoke tests)

  1. systemctl status metabase — служба active (running).
  2. tail -n 50 /var/log/metabase.log — нет явных ошибок в логах.
  3. Доступ к http://:3000 — страница установки/входа открывается.
  4. Вход в Metabase под админом и добавление источника данных проходит успешно.

Критерии приёмки

  • Metabase запускается как системная служба и автоматически перезапускается при падении.
  • Веб-интерфейс доступен по порту 3000 (или через reverse proxy на 443) и можно войти под админом.
  • Источник данных (MariaDB) подключается и Metabase видит таблицы и схемы.
  • Логирование Metabase осуществляется в /var/log/metabase.log.

Отладка — типичные проблемы и решения

  • Сервис не запускается: проверьте journalctl -u metabase и /var/log/metabase.log для ошибок Java (например, недостаточно памяти).
  • Порт 3000 занят: убедитесь, что нет другого процесса, слушающего порт (ss -ltnp | grep 3000).
  • Проблемы с подключением к MariaDB: проверьте, что пользователь и привилегии заданы верно; попробуйте подключиться из консоли mysql клиентом от имени metabase.
  • Права доступа к /opt/metabase: убедитесь, что все файлы принадлежат пользователю metabase.

Рекомендации по масштабированию и варианты развертывания

  • Для высоких нагрузок размещайте Metabase за балансировщиком и используйте external database для метаданных (Postgres). Metabase поддерживает только одиночный процесс приложения (без внутренней кластеризации), поэтому горизонтальное масштабирование требует осторожной архитектуры.
  • Для автоматизации развёртывания используйте Ansible, Terraform (инфраструктура) и CI/CD для выкатывания новой версии.

Шаблон quick-checklist для быстрой проверки системы

  • Java установлена и доступна (java -version).
  • MariaDB запущена и пользователь metabase создан.
  • /opt/metabase содержит metabase.jar и принадлежит metabase:metabase.
  • /etc/systemd/system/metabase.service настроен и включён.
  • /var/log/metabase.log доступен и читается.
  • Веб-интерфейс Metabase доступен и можно войти.

Совместимость и миграция

  • Инструкция ориентирована на Ubuntu 18.04. На Ubuntu 20.04/22.04 команды apt и пакеты те же, но версии ПО и путь к Java могут отличаться.
  • При переходе с H2 на внешний репозиторий метаданных следуйте официальной документации Metabase: экспорт метаданных, настройка новой БД и перенос.

Мини‑методология обновления Metabase (рекомендуется)

  1. Тестирование: разверните новую версию на staging-сервере и прогоните smoke tests.
  2. Бэкап: сделайте полную резервную копию БД метаданных и важных источников.
  3. План отката: сохраните старый metabase.jar и systemd-конфигурации.
  4. Обновление: остановите сервис, замените jar, запустите и проверьте логи.
  5. Мониторинг: наблюдайте метрики и логи в течение 24–72 часов.

Таблица соответствия ролей — кто отвечает за что

  • Системный администратор: установка Java, настройка systemd, бэкапы системы.
  • DBA: настройка MariaDB, резервное копирование и права доступа.
  • DevOps/Инженер безопасности: настройка TLS, reverse proxy, firewall.
  • BI-аналитик: настройка источников данных, создание дашбордов и вопросов.

Итог

Установка Metabase на Ubuntu 18.04 — простая процедура: устанавливаем Java, настраиваем СУБД, создаём пользователя и каталог, настраиваем логирование, загружаем metabase.jar и регистрируем сервис systemd. Добавьте reverse proxy и TLS в продакшене и храните метаданные в надежной внешней базе данных.

Краткие рекомендации: используйте внешний репозиторий метаданных для продакшена, настраивайте HTTPS, делайте регулярные бэкапы и тестируйте обновления на staging.

Ссылки

Официальная документация Metabase: https://www.metabase.com/docs/latest/


КОНЕЦ

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро