BI Consult
  • Russian BI Исследование российских bi
  • Перейти на Fine BI
  • Контакты
  • +7 812 334-08-01
    +7 499 608-13-06
  • Отправить сообщение
  • Главная
  • Продукты Эксперт-BI
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Страхование
    • Банки
    • Лизинг
    • Логистика
    • Нефтегазовый сектор
    • Медицина
    • Сеть ресторанов
    • E-Commerce
    • Энергетика
    • Фармацевтика
    • Построение хранилища данных
    • Создание Data Lake
    • Цифровая трансформация
    • Управление по KPI
    • Финансы
    • Продажи
    • Склад
    • HR
    • Маркетинг
    • Внутренний аудит
    • Категорийный менеджмент
    • S&OP и прогнозная аналитика
    • Геоаналитика
    • Цепочки поставок (SCM)
    • Process Mining
    • Сквозная аналитика
  • Платформы
    • ATK BiView-1C
    • Airflow
    • Alpha BI
    • Analytic Workspace
    • ChatGPT
    • FineBI
    • FlyBI
    • Loginom
    • Luxms BI
    • Modus BI
    • Visiology
    • Yandex.DataLens
    • Триафлай
    • Форсайт. Аналитическая Платформа
    • Arenadata
    • ClickHouse
    • Postgres Professional
  • Услуги
    • Переход на отечественные BI и DWH системы
    • Консалтинг
    • Пилотный проект
    • Обучение и сертификация
    • Бесплатное обучение
    • Поддержка
    • Технические задания
    • Сбор требований для проекта внедрения BI-системы
    • CI/CD для DWH
    • Аудит BI приложений
    • Выделенная команда
    • Разработка BI Стратегии
    • Styleguide для BI-системы
    • Как выбрать BI-систему
  • Курсы
    • Учебный курс Информационная грамотность (Data Literacy)
    • Учебный курс для бизнес-аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Greenplum
    • Учебный курс по Apache Airflow и NiFi
    • Учебный курс по Open-source BI
    • Учебный курс по DataLens
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по Visiology
  • Компания
    • Руководство
    • Новости
    • Клиенты
    • Карьера
    • Скачать
    • Контакты

BI

  • ATK BiView-1C Коннектор
  • Airflow
  • Alpha BI
  • Analytic Workspace
  • ChatGPT
  • FineBI
  • FlyBI
  • Loginom
  • Luxms BI
  • Modus BI
  • Visiology
  • Yandex.DataLens
  • Триафлай
  • Форсайт. Аналитическая Платформа

СУБД

  • Arenadata
  • ClickHouse
  • Postgres Professional

Другое

  • Data Engeneering
    • Создание Data Lake
    • Создание Data Warehouse
    • Учебный курс "Современная архитектура хранилища данных"
Главная » Курсы » Учебный курс для бизнес-аналитиков

Как установить на Ubuntu Apache Superset

  • 1 Введение
  • 2 Краткий экскурс в Docker и Docker-Compose
    • 2.1 Разница между Docker и Docker-Compose
    • 2.2 Список команд для Docker
    • 2.3 Список команд для Docker-Compose
    • 2.4 Где хранятся контейнеры и образы Docker?
    • 2.5 Видео-подборка по теме Docker
  • 3 Установка Apache Superset на VPS с помощью image Docker
    • 3.1 Создаем VPS
    • 3.2 Подключаемся через ssh и подготавливаем среду Docker
    • 3.3 Как установить и настроить Apache Superset Docker
    • 3.4 Как остановить контейнер, удалить образ Docker
  • 4 Как развернуть Apache Superset с помощью Docker-Compose
    • 4.1 Устанавливаем Docker (все как в предыдущем разделе)
    • 4.2 Устанавливаем docker-compose
    • 4.3 Устанавливаем Apache Superset версии 1.1.0 через docker-compose
  • 5 Установка Apache Superset на VPS на чистую Ubuntu 20.04

 

1 Введение

На рынке появились ряд open-source решений, которые могут конкурировать в рамках небольших задач с промышленными BI системами (ввиду их условной бесплатности, условной т.к. зарплату разработчикам никто не отменял).

В этой статье я опишу процесс инсталляции Apache Superset на VPS от Beget (это не реклама, просто сам пользуюсь ими). Инсталляцию выполним двумя способами — при помощи Docker и Docker-Compose.

 

2 Краткий экскурс в Docker и Docker-Compose

В первую очередь рекомендую почитать статьи:

  • Основы Docker за Х часов и Y дней
  • Руководство по Docker Compose для начинающих
  • Learn Docker in Y minutes
  • Архитектура Docker и ее компоненты для начинающих

Docker — это инструмент контейнеризации с открытым исходным кодом, используемый для упрощения создания и развертывания приложений с использованием концепции контейнеров.

Контейнеры позволяют нам упаковать все части приложения и развернуть его как единое целое.

Docker Compose — это инструмент Docker, который используется для развертывания многоконтейнерных приложений.

 

2.1 Разница между Docker и Docker-Compose

Docker используется для управления отдельным контейнером (службой) вашего приложения.

Docker-Compose используется для управления несколькими контейнерами одновременно для одного и того же приложения. Этот инструмент предлагает те же функции, что и Docker, но позволяет создавать более сложные приложения.

Docker (индивидуальный контейнер) VS Docker-Compose (несколько контейнеров):

 

2.2 Список команд для Docker

attach      Attach local standard input, output, and error streams to a running container
build       Build an image from a Dockerfile
commit      Create a new image from a container's changes
cp          Copy files/folders between a container and the local filesystem
create      Create a new container
diff        Inspect changes to files or directories on a container's filesystem
events      Get real time events from the server
exec        Run a command in a running container
export      Export a container's filesystem as a tar archive
history     Show the history of an image
images      List images
import      Import the contents from a tarball to create a filesystem image
info        Display system-wide information
inspect     Return low-level information on Docker objects
kill        Kill one or more running containers
load        Load an image from a tar archive or STDIN
login       Log in to a Docker registry
logout      Log out from a Docker registry
logs        Fetch the logs of a container
pause       Pause all processes within one or more containers
port        List port mappings or a specific mapping for the container
ps          List containers
pull        Pull an image or a repository from a registry
push        Push an image or a repository to a registry
rename      Rename a container
restart     Restart one or more containers
rm          Remove one or more containers
rmi         Remove one or more images
run         Run a command in a new container
save        Save one or more images to a tar archive (streamed to STDOUT by default)
search      Search the Docker Hub for images
start       Start one or more stopped containers
stats       Display a live stream of container(s) resource usage statistics
stop        Stop one or more running containers
tag         Create a tag TARGET_IMAGE that refers to SOURCE_IMAGE
top         Display the running processes of a container
unpause     Unpause all processes within one or more containers
update      Update configuration of one or more containers
version     Show the Docker version information
wait        Block until one or more containers stop, then print their exit codes

 

2.3 Список команд для Docker-Compose

build              Build or rebuild services
config             Validate and view the Compose file
create             Create services
down               Stop and remove resources
events             Receive real time events from containers
exec               Execute a command in a running container
help               Get help on a command
images             List images
kill               Kill containers
logs               View output from containers
pause              Pause services
port               Print the public port for a port binding
ps                 List containers
pull               Pull service images
push               Push service images
restart            Restart services
rm                 Remove stopped containers
run                Run a one-off command
scale              Set number of containers for a service
start              Start services
stop               Stop services
top                Display the running processes
unpause            Unpause services
up                 Create and start containers
version            Show version information and quit

 

2.4 Где хранятся контейнеры и образы Docker?

Содержимое /var/lib/docker каталога зависит от драйвера, который Docker использует для хранения.

  • Контейнеры лежат в каталоге /var/lib/docker/containers
  • /var/lib/docker/{driver-name} будет содержать специфичное для драйвера хранилище для содержимого images.

 

 

2.5 Видео-подборка по теме Docker

Docker-compose что это? Первое знакомство

Docker compose — группы контейнеров. Docker

Docker Compose in 12 Minutes

Основы Docker. Большой практический выпуск

 

3 Установка Apache Superset на VPS с помощью image Docker

3.1 Создаем VPS

Регистрируемся где удобнее, создаем виртуальную машину на Ubuntu 20.04

Прописываем hostname, запоминаем пароль и нажимаем создать сервер. Через минуту сервер готов.

 

3.2 Подключаемся через ssh и подготавливаем среду Docker

На винде есть встроенный ssh, чтобы через встроенный ssh подключиться, необходимо открыть консоль cmd и вбить команду:

ssh root@ваш_ip

 

Далее необходимо запустить набор команд для инсталляции Docker

1 Обновляем существующий список пакетов

sudo apt update

 

2 Далее устанавливаем пакеты, которые позволят apt использовать пакеты через HTTPS:

sudo apt install apt-transport-https ca-certificates curl software-properties-common

 

3 Далее добавим ключ GPG для официального репозитория Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

 

4 Добавляем репозиторий докер в источники apt

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

 

5  Обновляем базу данных пакетов и добавим в нее пакеты Docker из недавно добавленного репозитория:

sudo apt update

 

6 Далее проверим, что установка будет выполняться из репозитория Docker, а не из репозитория Ubuntu по умолчанию:

apt-cache policy docker-ce

 

Мы должны получить следующий ответ (номер версии Docker может отличаться):

root@apache1superset:~# apt-cache policy docker-ce
docker-ce:
  Installed: (none)
  Candidate: 5:20.10.6~3-0~ubuntu-focal
  Version table:
     5:20.10.6~3-0~ubuntu-focal 500
        500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
     5:20.10.5~3-0~ubuntu-focal 500
        500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
     5:20.10.4~3-0~ubuntu-focal 500
        500 https://download.docker.com/linux/ubuntu focal/stable amd64 Packages
     5:20.10.3~3-0~ubuntu-focal 500
...

 

или картинка

docker-ce пока еще не установлен (Installed: none), но является кандидатом на установку из репозитория Docker для Ubuntu 20.10.4 (версия focal).

Далее устанавливаем докер командой (на доп.вопрос отвечаем «yes«):

sudo apt install docker-ce

 

Docker будет автоматически установлен, также запустится демон-процесс и будет активирован запуск при загрузке. Проверьте статус докера (что он running/active):

sudo systemctl status docker

 

Теперь у вас есть доступ к службе Docker (демон-процесс) и к утилите командной строки docker.

 

3.3 Как установить и настроить Apache Superset Docker

Ссылка на официальный докер образ https://hub.docker.com/r/apache/superset

Запускаем команду:

docker pull apache/superset

 

Начнется процесс скачивания последнего образа

Результат команды:

Для того, чтобы посмотреть список образов Docker, которые были загружены на ваш сервер VPS, введите команду:

docker images

 

Результат:

Далее необходимо стартовать superset instance для порта 8080. Запускаем команду:

docker run -d -p 8080:8088 --name superset apache/superset

 

Результат:

Теперь мы можем зайти по url в Superset, в моем случае это http://ваш_ip:8080/login/. Отображается

Теперь нам нужно донастроить наш инстанс.

Устанавливаем админский аккаунт

docker exec -it superset superset fab create-admin \
               --username admin \
               --firstname Superset \
               --lastname Admin \
               --email admin@superset.com \
               --password admin

 

Результат:

Далее обновляем local DB до последней версии:

docker exec -it superset superset db upgrade

 

Загружаем примеры в наш инстанс:

docker exec -it superset superset load_examples

 

Загрузился один пример:

Далее устанавливаем роли:

docker exec -it superset superset init

 

результат:

Теперь заходим на страницу http://ваш_ip:8080/login/ с логином и паролем (я установил стандартный admin/admin для презентации).

Установилась старая версия

Развернуть исправно образ с более новой версией 1.1.0 с помощью команды:

docker pull apache/superset:1.1.0

 

у меня не вышло. Для ознакомления с возможностями Apache Superset можете воспользоваться версией 0.999.0dev, по крайней мере развертывание этой версии самое простое.

Далее рассмотрим более сложный пример с docker-compose.

 

3.4 Как остановить контейнер, удалить образ Docker

docker stop superset
docker rm -v superset
docker image rm apache/superset

   

4 Как развернуть Apache Superset с помощью Docker-Compose

Для разворачивания Apache-Superset рекомендую увеличить мощности сервера VPS, мне 1 ядра и 1 Гб памяти не хватило. По ощущениям должно хватить 2 ядра и 2 Гб памяти:

Видео по инсталляции Apache Superset с помощью Docker-Compose:

 

 

4.1 Устанавливаем Docker (все как в предыдущем разделе)

sudo apt update

sudo apt install apt-transport-https ca-certificates curl software-properties-common

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu focal stable"

sudo apt update

apt-cache policy docker-ce

sudo apt install docker-ce

sudo systemctl status docker

 

4.2 Устанавливаем docker-compose

Загружаем текущую стабильную версию Docker Compose:

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

 

Результат команды:

docker-compose файл на сервере:

Применяем разрешения для исполняемого файла к двоичному файлу:

sudo chmod +x /usr/local/bin/docker-compose

 

Чтобы протестировать docker-compose (установилась версия или нет), запустим команду:

docker-compose --version

 

Результат команды:

 

4.3 Устанавливаем Apache Superset версии 1.1.0 через docker-compose

 

Клонируем репозиторий, переключаемся на версию 1.1.0, проверяем статус.

git clone https://github.com/apache/superset.git

cd superset

git checkout 1.1.0

git status

 

Результат:

Через менеджер в папке root/superset в файле docker-compose-non-dev.yml меняем версию latest-dev на 1.1.0

Заходим в директорию superset:

cd superset

 

Запускаем процесс зарвертывания контейнеров через docker-compose:

docker-compose -f docker-compose-non-dev.yml up

 

или устанавливаем в фоновом режиме:

docker-compose -f docker-compose-non-dev.yml up -d

 

Вывести информацию по контейнерам и логи:

docker ps

docker logs -f superset_app

 

Результат:

 

5 Установка Apache Superset на VPS на чистую Ubuntu 20.04

Для установки Apache Superset требуется Python версии 3.7.9. Пока не удалось до конца настроить Apache Superset через Anaconda3, но приведу код, который позволил успешно инсталлировать Superset (без запуска).

//Install Anaconda3 на Ubuntu 20.04

sudo apt update

sudo apt install build-essential

cd /tmp

curl https://repo.anaconda.com/archive/Anaconda3-2020.11-Linux-x86_64.sh --output anaconda.sh

sha256sum anaconda.sh

bash anaconda.sh

source ~/.bashrc

conda list

//Create and activate an conda environment

conda create --name py379 python=3.7.9

conda activate py379

python --version

pip install apache-superset

superset db upgrade

export FLASK_APP=superset

superset fab create-admin

superset load_examples

superset init

 

Автор: Иван Шамаев (оригинал статьи)

Узнать стоимость решенияЗапросить видео презентацию

Запросить видео презентацию Запросить доступ к демо стенду online Узнать стоимость лицензий

Задать вопрос

loading...

Решения

Анализировать ФинансыУвеличивайте ПродажиОптимальный Склад и ЛогистикаМаркетинговые Метрики

Клиенты
  • ИНВИТРО
    ИНВИТРО – крупнейшая частная медицинская компания в России, специализирующаяся на лабораторной диагностике и оказании других медицинских услуг.
     
    ИНВИТРО располагает 9 самыми современными лабораторными комплексами и крупнейшей в Восточной Европе сетью более чем из 900 медицинских офисов. Страны присутствия — Россия, Украина, Казахстан, Беларусь.
     
  • Авиакомпания NordStar (АО «АК «НордСтар») – работает под данным брендом с 2008 г. и сейчас входит в топ-15 крупнейших российских авиакомпаний (данные Росавиации) с пассажирооборотом более 1 млн человек в год. АО «АК «НордСтар» выполняет и внутренние, и внешние рейсы, а ее основные хабы - Домодедово, Пулково и Емельяново. С 2021 года компания является базовым перевозчиком аэропорта Норильск.

  • KazanExpress — торговая площадка, на которой представлены товары с бесплатной доставкой за один день в более, чем 70 городах России. Аналитическое решение на базе платформы данных Yandex Cloud позволило компании обеспечить демократизацию данных. Результат — принятие обоснованных решений на всех уровнях, увеличение лояльности партнеров и повышение прозрачности бизнеса.

    Мониторинг ключевых метрик в реальном времени минимизировал недополученную прибыль и обеспечил рост прибыльных направлений, а возможности геоаналитики сервиса Yandex DataLens помогли за короткое время проанализировать локации для открытия более 90 ПВЗ в 25 городах России и заложить основу для роста компании.

  • ПАО «Транснефть» – крупнейшая российская нефтепроводная компания. «Транснефть» обеспечивает транспортировку более 85% добываемых в России нефти и нефтепродуктов.

  • Решения
    • Дистрибуция
    • Розничная торговля
    • Производство
    • Операторы связи
    • Банки
    • Страхование
    • Фармацевтика
    • Лизинг
    • Логистика
    • Медицина
    • Нефтегазовый сектор
    • Сеть ресторанов
  • Услуги
    • Консалтинг
    • Пилотный проект
    • Поддержка
    • План обучения и сертификации
    • Бесплатное обучение
    • Учебные курсы
    • Аудит приложений
    • Выделенная команда
  • Платформы
    • ATK BiView-1C Коннектор
    • Alpha BI
    • Luxms BI
    • Modus BI
    • Visiology
    • Analytic Workspace
    • FineBI
    • Yandex.DataLens
    • Триафлай
    • Форсайт. Аналитическая Платформа
    • Arenadata
    • ClickHouse
    • Postgre Professional
  • Курсы
    • Учебный курс Информационная грамотность
    • Учебный курс для бизнес-аналитиков
    • Учебный курс по Data Governance
    • Учебный курс Как стать CDO
    • Учебный курс Современная архитектура хранилища данных
    • Учебный курс по Fine BI
    • Учебный курс по DWH
    • Учебный курс по Data Science (ML, AI)
    • Учебный курс по PostgreSQL
    • Учебный курс по Apache Airflow
    • Учебный курс по Open-source BI
    • Учебный курс по Loginom
    • Учебный курс по Modus BI и ETL
    • Учебный курс по DataLens
    • Учебный курс по Visiology
  • Компания
    • О нас
    • Руководство
    • Новости
    • Клиенты
    • Скачать
    • Контакты
  • Функциональные решения
    • Продажи
    • Финансы
    • Склад
    • HR
    • S&OP и прогнозная аналитика
    • Внутренний аудит
    • Геоаналитика
    • Категорийный менеджмент
    • Построение хранилища данных
    • Система управления KPI и BSC
    • Управление цепочками поставок
    • Маркетинг
    • Цифровая трансформация
    • Сквозная аналитика
    • Process Mining
LinkedInYouTubeVkontakteFacebook
ООО "Би Ай Консалт",
ИНН: 7811437757,
ОГРН: 1097847154184
199178, Россия,
Санкт-Петербург,
6-ая линия В.О., Д. 63, 4 этаж
Тел: +7 (812) 334-08-01
Тел: +7 (499) 608-13-06
E-mail: info@biconsult.ru