Infrastructure
persistent volume
Постоянное блочное хранилище для контейнеров, сохраняющееся после остановки сервиса.
Что такое persistent volume
Persistent volume (PV) — блочное хранилище, монтируемое в контейнер и сохраняющее данные независимо от жизненного цикла контейнера. В отличие от object storage (HTTP-доступ), PV монтируется как обычная директория.
Для ML-задач PV важен для хранения:
- Скачанных весов модели (не скачивать заново при перезапуске)
- Датасетов для обучения
- Чекпоинтов
- Результатов генерации
Docker: монтирование томов
# Монтировать папку хоста (bind mount)
docker run --gpus all \
-v /home/user/models:/models \ # хост:контейнер
vllm/vllm-openai:latest \
--model /models/llama-3-8b
# Named volume (управляется Docker, сохраняется при удалении контейнера)
docker volume create model-data
docker run -v model-data:/models vllm/vllm-openai:latest ...
# Просмотр томов
docker volume ls
docker volume inspect model-data
Kubernetes PVC
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: models-pvc
spec:
accessModes: [ReadWriteOnce]
resources:
requests:
storage: 500Gi # для нескольких 70B-моделей
storageClassName: fast-ssd
---
# Использование в Pod
volumes:
- name: models
persistentVolumeClaim:
claimName: models-pvc
containers:
- volumeMounts:
- name: models
mountPath: /models
Связанные термины
- object storage — дешевле, но медленнее для обучения
- container — PV монтируется в контейнер
- чекпоинт — хранится на PV
- NVMe SSD — тип хранилища под PV для ML-инстансов
Готовы запустить GPU-задачу?
Запустить GPU-сервер