Перейти к содержанию

Установка на один сервер

Системные требования

Убедитесь в том что подготовленные сервера удовлетворяют требованиям:

Установка зависимостей

Для работы AW необходимо установить следующие компоненты согласно документации:

(Рекомендуется) Настройка пользователя для установки AW BI

Для удобства выполнения работ по установке, обслуживанию и поддержки AW BI рекомендуется выполнить настройку пользователя из под имени которого будет выполнятся установки\обслуживание.

Инструкция по настройке пользователя.

Конфигурирование операционной системы

Для корректной работы СУБД ClickHouse необходимо увеличить значение параметра "vm.max_map_count". Внесите изменения в файле /etc/sysctl.conf, затем перезапустите службу командой sudo sysctl -p:

vm.max_map_count=262144

Установка приложения

Для установки приложения выполните следующие действия:

  1. Скопируйте дистрибутив Системы на сервер и разархивируйте его:

    mkdir -p /opt/aw/app
    mv release-версия_релиза.tar /opt/aw/app
    cd /opt/aw/app
    tar -xvf release-версия_релиза.tar
    
    Файл дистрибутива можно удалить, если есть дефицит дискового пространства

  2. Скопируйте шаблон файла конфигурации .env.dist в файл конфигурации .env:

    cd /opt/aw/app
    cp .env.dist .env
    
    При работе Системы файл .env.dist не используется, он служит только шаблоном для файла .env.

  3. В случае необходимости внесите изменения в файл конфигурации .env.

    Адрес Системы:FRONTEND_URL;

    Настоятельно рекомендуется изменить пароль для БД и другие переменные отвечающие за авторизацию сервисов:

    # Токен авторизации для внутренних коммуникаций системы
    INTERNAL_API_TOKEN=1
    # Пароль пользователя
    DB_PASSWORD=enter4z
    # Логин и пароль пользователя-администратора Airflow. С таким пользователем в UI Airflow
    # ходят пользователи, которые являются админами в AW
    ETL_AIRFLOW_USER=admin
    ETL_AIRFLOW_PASSWORD=1
    # Логин и пароль пользователя Airflow, под которым в UI Airflow ходят обычные пользователи
    # (не админы)
    ETL_AIRFLOW_AW_USER=aw
    ETL_AIRFLOW_AW_PASSWORD=1
    # JWT secret, используемый для генерации токенов доступа к внутренним ресурсам
    AUTH_BRIDGE_SECRET=a7f67106d9234324b3a28cb618e78fc0
    
  4. Выполните загрузку docker - образов компонентов системы.

    Для закрытого контура: Перейдите в каталог Системы и выполните скрипт ./install.sh:

    cd /opt/aw/app
    chmod +x install.sh
    ./install.sh
    

    Для открытого контура (если предоставлен доступ к registry): Подключите Docker Registry:

    docker login registry.analyticworkspace.ru
    
    Отобразится запрос о необходимости ввести учетную запись. Введите данные учетной записи, ранее использованной для скачивания дистрибутива далее выполните загрузку образов:
    docker compose pull
    
    Перейдите в каталог Системы и выполните скрипт ./create_project_dirs.sh
    cd /opt/aw/app
    chmod +x create_project_dirs.sh
    ./create_project_dirs.sh
    

    В результате будет создана следующая структура каталогов:

    ├── /opt/aw/db
    │   ├── /opt/aw/db/airflow
    │   ├── /opt/aw/db/clickhouse
    │   ├── /opt/aw/db/etl_broker
    │   ├── /opt/aw/db/oauth
    │   ├── /opt/aw/db/postgres
    │   └── /opt/aw/db/rabbitmq
    ├── /opt/aw/file_storage
    │   ├── /opt/aw/file_storage/api
    │   ├── /opt/aw/file_storage/etl
    │   ├── /opt/aw/file_storage/file_puller
    │   ├── /opt/aw/file_storage/jars
    │   ├── /opt/aw/file_storage/licence
    │   ├── /opt/aw/file_storage/minio
    │   ├── /opt/aw/file_storage/parquet
    │   └── /opt/aw/file_storage/runs
    ├── /opt/aw/logs
    │   ├── /opt/aw/logs/airflow
    │   └── /opt/aw/logs/rabbitmq
    
  5. Перейдите в каталог Системы и выполните запуск AW:

    cd /opt/aw/app
    docker compose up -d
    
  6. Перейдите в каталог Системы и выполните команды миграции БД:

    cd /opt/aw/app
    docker compose exec backend php yii migrate --interactive=0
    docker compose exec backend php yii run-code-migrations
    docker compose exec etl-api /app/manage migrate
    

    Для ОС RED ОС может потребоваться выполнение дополнительной настройки firewalld:

    # Docker использует IP masquerade для организации сети в контейнерах
    firewall-cmd --zone=public --add-interface=docker0 --permanent
    firewall-cmd --zone=public --add-masquerade --permanent
    
    # Сделать доступным HTTP-порт
    firewall-cmd --zone=public --add-port=80/tcp --permanent
    
    # Применить настройки
    firewall-cmd --reload
    
    7. Окончание установки.

    В окне интернет браузера переходим по удресу, указанному в переменной FRONTEND_URL. В случае успешной установки отобразится интерфейс AW, пройти аутентификацию в только что установленной системе можно специальным пользователем:

    Имя пользователя: tech_admin
    Пароль по умолчанию: 123456