Установка MLflow на свой сервер: термины и чек-лист
Подробности, цифры, термины и чек-лист по теме «Установка MLflow на свой сервер». Страница справочника целиком: Установка MLflow на сервер.
Коротко о теме
Установка MLflow на VPS: SQLite по умолчанию, PostgreSQL и S3 для артефактов, docker compose, вход по паролю через basic-auth и HTTPS.
Подробности по разделам
Зачем MLflow отдельный сервер
Сервер собирает эксперименты всей команды в одном месте и переживает перезагрузку ноутбука. Обучение при этом может идти где угодно: на арендованной видеокарте, в Jupyter или в CI.
Как закрыть MLflow паролем и открыть по HTTPS
Пользователи и права хранятся в SQL-базе и сохраняются, даже если временно выключить авторизацию. Логин и пароль передаются в каждом запросе, поэтому снаружи MLflow открывают только через HTTPS: поставьте перед ним Caddy или Nginx с сертификатом и пропишите домен в --allowed-hosts. Порт 5000 не для интернета Через API MLflow можно скачать любую модель и удалить эксперименты.
Ключевые цифры
- Держите порт на 127.0.0.1, как в примере, а для работы без домена используйте SSH-туннель.
- С версии 3.5.0 MLflow по умолчанию принимает только локальные подключения.
- Запустите его с --host 0.0.0.0 и перечислите свои домены в --allowed-hosts.
- Да, флаг --artifacts-destination с адресом бакета s3:// отправляет артефакты в хранилище, для S3-совместимых сервисов задают MLFLOW_S3_ENDPOINT_URL.
Термины на странице
- S3
- S3 это объектное хранилище файлов с доступом по API, совместимому с Amazon S3.
- PostgreSQL
- PostgreSQL это база данных для приложений с большими объёмами и сложными запросами.
- GPU
- GPU это видеокарта. На сервере её используют для нейросетей, рендера и расчётов.
- Nginx
- Nginx это веб-сервер и обратный прокси. Его часто ставят перед приложением, чтобы раздавать статику и держать HTTPS.
- SSH
- SSH это защищённое подключение к серверу через командную строку. Вход по ключу безопаснее, чем по паролю.
- HTTPS
- HTTPS это защищённая версия HTTP: данные между браузером и сайтом шифруются.
Что проверить
- Выберите конфигурацию по памяти и диску под задачу, процессор обычно вторичен.
- Проверьте тип виртуализации: KVM даёт свою систему и гарантированные ресурсы.
- Уточните, входит ли IPv4 и сколько стоит трафик сверх пакета.
- Выпустите сертификат после того, как домен указывает на сервер.
- Проверьте, что установлена вся цепочка сертификатов.
- Включите перенаправление с HTTP на HTTPS.