Хранилища: сетевые тома и их S3-вид

В Play2Go AI один примитив хранения — сетевой том (persistent-хранилище, которое живёт дольше любого пода и монтируется в /workspace). У каждого тома есть S3-вид: s3://<bucket>/ — это ровно те же файлы, что под видит в /workspace. Отдельного «бакета артефактов» нет.

Тома

Том — это persistent-хранилище: его идентификатор (vol_…) сохраняется даже после отвязки от пода, поэтому к одному и тому же тому можно последовательно подключать разные поды.

  1. Хранилища → Тома → Новый том.
  2. Имя, размер в ГиБ, регион (по умолчанию — регион проекта).
  3. После создания том в стейте ПодготовкаПривязан (если уже подключён к поду) или Освобождается (если ждёт привязки).

Привязка к подам

Том можно подключить к поду:

  • при создании пода — установив переключатель Подключить рабочий том;
  • к существующему тому — через ⋯ → Привязать к поду на странице томов (указывается ID пода и точка монтирования).

Один том можно подключить только к одному поду одновременно. Чтобы перевесить — сначала нажмите Отсоединить.

Увеличение / экспорт

  • Увеличить — размер тома можно только увеличивать, не уменьшать. Платформа применяет изменение в фоне, под не нужно останавливать.
  • Экспорт — запросить бэкап тома во внешнее объектное хранилище как tar-архив. Полезно для архивации.
  • Удалить — отдаёт том на удаление. Перед удалением том должен быть отсоединён.

Файлы тома

Файлами тома можно управлять прямо из консоли, не запуская под: Хранилища → Тома → ⋯ → Файлы. Это обозреватель содержимого тома — загрузка, скачивание, удаление, навигация по папкам.

Загрузка и скачивание идут напрямую в объектное хранилище — платформа никогда не проксирует байты, она лишь выдаёт подписанные URL. Маленькие файлы заливаются одним PUT, большие (>5 МиБ) — multipart-загрузкой.

S3-доступ к тому

Каждый том — это S3-бакет: s3://<bucket>/path отображается на файл на томе. Нажмите ⋯ → S3-ключи, чтобы получить ключ, ограниченный именно этим томом, — для rclone / awscli / boto3. Read-only тому выдаётся read-only ключ.

Из вашего воркера

Подписанные URL можно запросить и из API: POST /v1/volumes/[id]/objects:upload-url / :download-url. Это удобно для тренировочных скриптов, которые сохраняют веса на том после эпохи.