Развертывание Explyt Enterprise
Описание
При развертывании Explyt Enterprise компания получает API-ключ в рамках лицензии. Чтобы получить этот ключ, необходимо предоставить компании Explyt будущий URL-адрес сервера лицензий (он может находиться и в локальной сети). Этот API-ключ позволяет развернуть кластер Explyt Enterprise и использовать его возможности через плагин к IntelliJ IDEA.
Как это работает
После развертывания всех сервисов процесс становится полностью прозрачным для пользователя. Пользователю плагина необходимо выбрать тариф Enterprise
и ввести API-ключ в настройках.
После завершения настройки пользователи получают доступ ко всем функциям Explyt Test. Плагин автоматически собирает статистику использования и отправляет её в MinIO для хранения.
Когда пользователь отправляет запрос, он сначала перенаправляется на сервер лицензий, который проверяет действительность лицензии. После этого запрос пересылается в HAProxy, который распределяет его на соответствующий сервер LLM.
Ansible Playbook
Explyt Enterprise может быть развернут с помощью Ansible playbook. Данный playbook протестирован на Ubuntu 22.04 LTS.
Предварительные требования
Установите Ansible (>=2.15.0):
pip3 install ansible-core==2.17.7 ansible==10.7.0
Установите Ansible коллекцию Docker:
ansible-galaxy collection install community.docker
Переменные Playbook
Для большинства переменных заданы значения по умолчанию.
Измените следующие переменные в group_vars/licence-server/common.yml
:
licence_server_version: ''
licence_server_token: "" # TODO: Добавьте токен
licence_server_private_key: "" # TODO: Добавьте приватный ключ
Измените следующие переменные в group_vars/llm-server/common.yml
:
llm_server_version: ''
Измените следующие переменные в group_vars/all/common.yml
:
haproxy_host: "" # TODO: укажите IP-адрес HAProxy
haproxy_backend_servers:
- 127.0.0.1:9000
- ... # TODO: добавьте все ваши хосты серверов LLM в формате IP:9000
grafana_loki_host: "" # TODO: укажите хост системы мониторинга
s3_host: "" # TODO: укажите адрес MinIO или другого S3
s3_port: "" # TODO: замените, если не используете MinIO
s3_access_key: "" # TODO: замените, если не используете MinIO
s3_secret_key: "" # TODO: замените, если не используете MinIO
s3_bucket: "" # TODO: замените, если не используете MinIO
s3_region: "" # TODO: замените, если не используете MinIO
Развертывание Explyt Enterprise
Пример файла инвентаризации:
[all:children]
llm-server
licence-server
haproxy
minio
[licence-server]
licence-server_01 ansible_host=...
[llm-server]
llm-server_01 ansible_host=...
; Добавьте другие хосты серверов LLM
[haproxy]
haproxy_01 ansible_host=...
[minio]
minio_01 ansible_host=...
Запуск развертывания:
ansible-playbook -i ansible_hosts.ini deploy.yml
Ручная установка
Если вы хотите развернуть Explyt Enterprise вручную, используйте следующие Docker-образы:
- Сервер LLM:
cr.yandexcloud.kz/crk4ec9a4msbq0ssusja/explyt-llm-server:0.0.3
- Сервер лицензий:
cr.yandexcloud.kz/crk4ec9a4msbq0ssusja/explyt-licence-server-t1-cloud:v1.0.0-enterprise
Docker login:
cat ./files/docker_login_cred.json | docker login --username json_key --password-stdin cr.yandexcloud.kz/crk4ec9a4msbq0ssusja