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

Установка сервисов 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-30-1}.tar.gz

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

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

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

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

Установка

Если вы планируете установку своими силами и без использования наших helm чартов, то восспользуйтесь нашей документацией тут https://people-hub.ru/documentation/dev/1Q2024/installation/env/

Там вы найдете техническую документацию к сервисам и список образов.

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

  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.30.1 соответствует тэг release-peoplehub-v4-30-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. Актуальный список сервисов можно взять из списка образов списка образов, публикуемого к релизу.

Дополнительные команды для минорного релиза 4.30.3

Сервис filestorage

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

python manage.py restore_versions_created_by

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

python manage.py load_profile_user_data

Сервис dictionaries

python manage.py delete_duplicates contact_types --has_attributes storage_object

Сервис profiles

python manage.py fix_contacts_duplicates

Сервис groups

python manage.py fix_sociallink_duplicates

Дополнительные команды для минорного релиза 4.30.3.2

Сервис groups

Контейнер, в котором необходимо запустить команду - groups-backend.

python manage.py add_m_path_for_old_users

Дополнительные команды для минорного релиза 4.30.5

Сервис pages

python manage.py change_default_data