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

Установка сервисов People Hub

Для того, чтобы развернуть сервисы входящие в состав продукта VK People Hub в кластере Kubernetes, мы рекомендуем использовать наш универсальный helm chart: https://chart.people-hub.ru universal-chart --version 2.4.1

Все файлы конфигураций и инструкции написаны по этот чарт.

Описание

Все сервисы для установки используют один алгоритм. Это запуск установки через helm с использованием чарта шаблона и файлов конфигураций для каждого сервиса.

Для упрощения установки повторяющиеся настройки были вынесены в отдельный файл env.yaml.

Поэтому при установке компонента нужно указывать и файл конфигурации компонента и файл env.yaml.

Шаблон команды установки: helm install <release_name> --values=<values_file> --values=env.yaml peoplehub/universal-chart --version=2.4.1 -n <namespace>

Пример: helm install cms --values=cms.yaml --values=env.yaml peoplehub/universal-chart --version=2.4.1 -n people-hub

Файлы конфигураций нужно скачать из нашего репозитория: https://raw.people-hub.ru/values/release-peoplehub-v{версия_релиза_в_формате_4-50-1}.tar.gz

Например для релиза 4.50.1 ссылка будет такой: https://raw.people-hub.ru/values/release-peoplehub-v4-50-1.tar.gz

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

Эти авторизационные данные используются для доступа к:

  1. Хранилища образов docker https://docker.people-hub.ru
  2. Хранилища helm чартов https://chart.people-hub.ru
  3. Хранилища причих артефактов https://raw.people-hub.ru

Установка

Если вы планируете установку своими силами и без использования наших helm чартов, то восспользуйтесь нашей документацией. Там вы найдете техническую документацию к сервисам и список образов.

Для установки сервиса необходимо:

  1. Добавьте helm repository (репозиторий доступен только для авторизованных пользователей)

    helm repo add people-hub https://chart.people-hub.ru \
    --username=<имя_пользователя> \
    --password=<пароль_пользователя>
    
  2. Обновите репозитории Helm helm repo update

  3. Подготовьте файл значений для развертывания сервиса. Для удобства установки переменные, которые необходимо изменить, вынесены в общий файл настроек env.yaml

  4. Установите сервис указав путь к файлу значений helm install <release_name> --values=<values_file> --values=env.yaml peoplehub/universal-chart --version=2.4.1 -n <namespace>

Образы контейнеров (container images) можно загрузить из нашего container registry (docker.people-hub.ru). Тэг образа соответствует номеру релиза. Например, релизу 4.50.1 соответствует тэг release-peoplehub-v4-50-1.

  1. После установки для следующих сервисов необходимо создать пользователя административной панели. Для этого выполните в сервисах следующие команды:

    Для сервиса roles

    python commands/create_admin_panel_user.py <username> <password>
    
    Для gamification
    python manage.py createsuperuser
    ввести username email password
    
    Для meetings
    python manage.py createsuperuser
    ввести username email password
    

  2. После установки или обновления сервисов требуется запустить команды для миграции данных. Все команды можно найти в описании релиза.

  3. Актуальный список сервисов можно взять из списка образов списка образов, публикуемого к релизу.

Команды для минорного релиза 5.4.1

# pages 
python manage.py change_default_data

# sitector
python -m commands.sync_base_roles

Команды для минорного релиза 5.3.1

# events
python manage.py fix_calendar_events_type
python manage.py delete_draft_calendar_events
python manage.py create_calendar_events

Команды для минорного релиза 5.1.3

# roles
python -m commands.delete_dublicated_role_for_superusers

# sitector
python -m commands.migrate_cms_admins

Команды для минорного релиза 5.1.1

# roles
python -m commands.delete_dublicated_role_for_superusers

# pages
python manage.py change_default_data

# filestorage
python manage.py create_shared_folder
python manage.py sync_base_roles
python manage.py refresh_site_roles_assignments