Установка Label Studio
В этом документе приведены подробные инструкции по развертыванию Label Studio в кластере Kubernetes и основные параметры конфигурации.
Содержание
ЗагрузкаРазвертываниеПодготовка хранилищаПодготовка базы данныхПодготовка Redis (опционально)Создание приложенияКонфигурация1. Настройка хранилища1.1 Настройка класса хранилища и размера2. Настройка базы данных2.1 Настройка PostgreSQL2.2 Настройка Redis3. Настройка метода доступа3.1 Изменение типа Service3.2 Включение Ingress3.3 Настройка OAuth2 Proxy (опционально)4. Настройка управления пользователями4.1 Отключение регистрации пользователейАдрес доступа1. Доступ через Service2. Доступ через IngressУправление пользователямиЗагрузка
Скачайте установочный файл Label Studio: label-studio.ALL.xxxx.tgz
Используйте команду violet для публикации в репозиторий платформы:
Развертывание
Подготовка хранилища
Label Studio хранит данные в базе данных и требует постоянное хранилище. В кластере должен быть предварительно установлен CSI или подготовлен PersistentVolume.
Подготовка базы данных
Label Studio поддерживает следующие базы данных:
- PostgreSQL: версия 13 и выше
Для создания PostgreSQL кластера можно использовать PostgreSQL operator, предоставляемый Data Services.
Проверьте адрес доступа и пароль в деталях экземпляра PostgreSQL в Data Services.
Подготовка Redis (опционально)
Redis не обязателен, но рекомендуется для производственных сред.
Для создания экземпляра Redis можно использовать Data Services.
Примечание: Label Studio поддерживает доступ к Redis только в режиме standalone.
-
Создание
Redisв режимеstandalone:-
При создании экземпляра
RedisвыберитеRedis Sentinelв полеArchitecture. -
После настройки всех параметров переключитесь в режим
YAML, изменитеspec.archнаstandalone, затем нажмите кнопкуCreate. -
После создания переключитесь в представление
Alauda Container Platformи найдитеServiceс именемrfr-<имя экземпляра Redis>-read-write— это адрес доступа к данному экземпляру Redis.
-
Создание приложения
-
Перейдите в представление
Alauda Container Platformи выберите namespace, в котором будет развернут Label Studio. -
В левом навигационном меню выберите
Applications/Applications, затем нажмите кнопкуCreateна правой панели. -
В появившемся диалоговом окне выберите
Create from Catalog, после чего откроется представлениеCatalog. -
Найдите
3rdparty/chart-label-studioи нажмитеCreateдля создания этого приложения. -
В форме
Catalog/Create label-studioзаполните полеName(рекомендуетсяlabel-studio) и настройтеCustomконфигурацию вValues, затем нажмите кнопкуCreateдля завершения создания. СодержимоеCustomописано ниже. Его также можно изменить после создания через методUpdateприложения.
Конфигурация
Пользователи могут изменять Custom Values приложения для настройки параметров. Основные параметры конфигурации:
1. Настройка хранилища
1.1 Настройка класса хранилища и размера
Класс хранилища можно указать, добавив следующую конфигурацию:
2. Настройка базы данных
2.1 Настройка PostgreSQL
Информацию для доступа к PostgreSQL можно настроить, указав следующие поля:
2.2 Настройка Redis
Информацию для доступа к Redis можно настроить, указав следующие поля:
3. Настройка метода доступа
По умолчанию используется LoadBalancer для предоставления адреса доступа.
3.1 Изменение типа Service
Тип Service можно изменить, указав следующие поля:
3.2 Включение Ingress
Ingress можно настроить, указав следующие поля. После включения Ingress тип Service обычно меняется на ClusterIP:
3.3 Настройка OAuth2 Proxy (опционально)
Если вы хотите настроить Alauda Container Platform как OIDC Provider, настройте следующим образом:
oauth2_proxy.oidcIssuer— адрес доступа к платформе с добавлением/dexoauth2_proxy.oidcClientID— фиксировано какlabel-studiooauth2_proxy.oidcClientSecret— фиксировано какZXhhbXBsZS1hcHAtc2VjcmV0
Также необходимо создать ресурс OAuth2Client в глобальном кластере для настройки клиентской информации Label Studio:
Примечание: Адрес доступа к OAuth2 proxy можно получить из Service <Application Name>-oauth2-proxy, используйте соответствующий метод доступа в зависимости от типа Service.
4. Настройка управления пользователями
4.1 Отключение регистрации пользователей
Регистрацию пользователей можно отключить, указав следующие поля:
Адрес доступа
1. Доступ через Service
Label Studio предоставляет внешний доступ через Service. Проверьте его Service для получения адреса доступа.
- Если OAuth2 proxy не включён, имя Service:
<Application Name>-ls-app - Если OAuth2 proxy включён, имя Service:
<Application Name>-oauth2-proxy
Если тип Service — LoadBalancer и контроллер балансировщика нагрузки в среде назначил адрес доступа, используйте этот адрес.
Для типов Service LoadBalancer или NodePort доступ также возможен через IP узла с соответствующим NodePort.
2. Доступ через Ingress
Если Ingress включён, используйте сконфигурированный LABEL_STUDIO_HOST для доступа.
Управление пользователями
В Label Studio нет имени пользователя и пароля по умолчанию. Пользователи могут зарегистрироваться, заполнив email и пароль на странице входа.
Примечание:
- По умолчанию разрешена регистрация новых пользователей для всех
- Все пользователи имеют одинаковые функциональные права и доступ ко всем проектам
- Чтобы ограничить регистрацию пользователей, настройте переменную окружения
LABEL_STUDIO_DISABLE_SIGNUP_WITHOUT_LINK=true, см. раздел: 4.1 Отключение регистрации пользователей