Разворачивание решения

Разворачивание решения #

Версионирование #

Каждая версия релиза SVA имеет формат vX.Y.Z, соответственно все контейнеры в инсталляции должны иметь одинаковую версию. Работоспособность контейнеров разных версий не гарантируется.

Отдельное версионирование имеет сторонне ПО, оно соответствует нумерации принятой разработчиком. Репозиторий SVA содержит протестированные для работы с SVA версии контейнеров с третьим ПО, которые отличаются от публичных лишь наличием набора “тестовых” серверных сертификатов, расположенных по пути /cert.

Вместо них возможно использовать публичные версии ПО.

Данные для установки #

Перед началом установки решения рекомендуется заранее подготовить минимально необходимый набор данных:

данные комментарий
логин и пароль суперадминитратора автоматически создаваемый пользователь с ролью “Суперадминистратора”
название основной компании не может быть изменено позже
публичный ip адрес для доступности из сети интернет
публичный FQDN должен разрешаться в публичный ip адрес
сертификат и ключ для публичного FQDN сертификат и ключ для защищенного подключения к сайту
диапазон портов для подключения клиентов к janus минимум 300 портов на каждый экземпляр janus
адрес/адреса stun и/или turn сервера для повышения возможности успешного подключения клиентов
логин и пароль или секрет для turn сервера чтобы избежать “открытого” turn relay

Настройки Firewall #

В общем должны быть открыты для приёма входящих соединений из сети интернет:

  • 443 tcp (https) для контейнера vc-www
  • tcp, udp собственный диапазон портов для каждого контейнера janus

Подробности, включая возможные исходящие соединения, можно найти в описании взаимодействий с сетью Internet

Взаимодействие между контейнерами #

По-умолчанию все контейнеры обращаются друг к другу по именам сервисов из compose файлов. Имена по-умолчанию указаны в примерах.

Если сервис имеет другое имя, то можно использовать директиву links в compose файле:

links:
  - "default_name:other_name"

Если сервис расположен на другом хосте, то можно использовать директиву extra_hosts в compose файле:

extra_hosts:
  vc-service1: "10.10.10.10"
  vc-service2: "10.10.10.20"

Владелец процесса в контейнерах #

Для всех контейнеров SVA можно настроить идентификаторы пользователя и группы, под которыми будут запущены процессы. Это может понадобиться как в целях безопасности, так и для определения владельца и прав файлов на присоединенных к контейнерам томах и дисках.

Задать параметры владельца процесса можно переменными окружения:

  • EUID - uid под которым выполняется процесс, по-умолчанию 0
  • EGID - gid под которым выполняется процесс, по-умолчанию 0
  • UMASK - по-умолчанию 0002

Часовой пояс в контейнерах #

Все контейнеры поддерживают возможность задать часовой пояс, используя переменную окружения TZ - часовой пояс в формате пакета tzdata https://www.iana.org/time-zones. Например: TZ=Europe/Moscow.

Последовательность установки решения #

Рекомендуется следующая последовательность установки ПО SVA:

  • Подготовка переменных окружения и docker-compose файлов
  • Подготовка постоянных мест хранения
    • FileStorage для vc-fileserver
    • tmpRecStore для промежуточного хранения записей вызовов
    • место под данные БД mongo
    • постоянное хранилище для брокера шины MQTT, если требуется
  • Разворачивание docker compose стека
    • Запустить брокер шины MQTT
      • при необходимости настроить через веб-интерфейс
    • Запустить БД MongoDB
    • Запустить janus.
      • При необходимости используя демо-режим (см. документацию по установке) можно проверить его работоспособность и настройки firewall
    • Запустить контейнеры sva
      • vc-www
      • vc-admin
      • vc-auth
        • с этого момента должен быть доступен интерфейс администратора по адресу: https://FQDN/console/
      • vc-license
      • vc-server
      • vc-surl
        • с этого момента можно делать вызовы
      • vc-msg
        • после запуска добавить созданных провайдеров в интерфейсе администратора
      • vc-fileserver
      • vc-geo
      • vc-history
      • vc-stat
      • vc-statchart
      • vc-records
      • vc-mediamerge

При первой установке контейнер vc-admin должен быть запущен после успешной инициализации БД Mongo и до остальных контейнеров (согласно последовательности выше).

powered by Altuera