Установка сервисов 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
Доступ в репозиторий по единому логину и паролю, которые можно получить у нашего представителя.
Эти авторизационные данные используются для доступа к:
- хранилищу образов docker https://docker.people-hub.ru;
- хранилищу helm чартов https://chart.people-hub.ru;
- хранилищу причих артефактов https://raw.people-hub.ru.
Если вы планируете установку своими силами и без использования наших helm чартов, то восспользуйтесь нашей документацией. Там вы найдёте техническую документацию к сервисам и список образов.
Для установки сервиса необходимо:
-
Добавьте helm repository (репозиторий доступен только для авторизованных пользователей)
helm repo add people-hub https://chart.people-hub.ru \--username=<имя_пользователя> \--password=<пароль_пользователя> -
Обновите репозитории Helm
helm repo update -
Подготовьте файл значений для развертывания сервиса. Для удобства установки переменные, которые необходимо изменить, вынесены в общий файл настроек env.yaml
-
Установите сервис указав путь к файлу значений
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.
-
После установки для следующих сервисов необходимо создать пользователя административной панели. Для этого выполните в сервисах следующие команды:
Для сервиса roles
python -m commands.create_admin_panel_user <username> <password>Для gamification
python manage.py createsuperuserввести username email passwordДля meetings
python manage.py createsuperuserввести username email password -
После установки или обновления сервисов требуется запустить команды для миграции данных. Все команды можно найти в описании релиза.
-
Актуальный список сервисов можно взять из списка образов списка образов, публикуемого к релизу.
# rolespython -m commands.sync_system_groups_members#listspython -m commands.delete_duplicate_auto_value_groupspython -m commands.refresh_auto_value_groups_raw_value# timelinespython -m commands.sync_timelines_cleaning
# async-reportspython -m commands.sync_orgstructure_and_memberspython -m commands.calculate_dau# blogspython -m management.transfer_storage_objects# newspython -m commands.transfer_storage_objects# sitectorpython -m commands.transfer_storage_objects
Чтобы исправить «битые» group_path у пользователей необходимо вызвать:
# profilespython manage.py sync_users_orgstructure# groupspython manage.py group_member_one_in_group
# sitectorpython -m commands.sync_base_roles# pagespython manage.py create_default_data - у новых клиентовpython manage.py change_default_data - у старых клиентов