Общая архитектура дисковой подсистемы в VMware Cloud Director
- Cloud Director управляет ресурсами, включая хранилище, через vSphere.
- Каждый виртуальный диск привязан к виртуальной машине через виртуальный контроллер (SAS, PVSCSI).
- В Cloud Director задаются Storage Policy, благодаря которым производится ограничение производительности отдельных дисков по IOPS (количество операций ввода-вывода в секунду)
Работас гостевыми ОС
Windows:
- ОС «видит» виртуальный диск как обычный физический.
- Работает с ним через драйверы (такие как pvscsi).
- Производительность в том числе зависит от выбора SCSI-контроллера:
- LSI Logic SAS — совместимость.
- PVSCSI (Paravirtual) — высокая производительность, особенно под нагрузкой.
...
- Диск отображается в каталоге устройств /dev/
- Ядро Linux работает с виртуальными драйверами (например, pvscsi, vmw_pvscsi).
- Используется стандартная подсистема блочного устройства + планировщики ввода-вывода.
- Современные дистрибутивы используют системы управления udev и blk-mq для оптимизации дисковых операций.
Поведение операционной системыпри записи данных
ОС (Windows, Linux) по умолчанию использует файловый кэш в оперативной памяти. Это означает, что:
...
Т.е. изначальный прирост скорости контролируется на уровне ОС, а не хранилища.
Это объясняет, почему скорость скачивания или записи файла может сначала быть высокой, а затем проседать.
Что влияет на производительностьдисков
- Storage Policy:
- Ограничение политики хранилища по IOPS (например, 3000 IOPS). Это ограничение применяется на уровень хранения, а не на ОС: даже если ОС может отправлять больше запросов, они будут ограничены на уровне гипервизора или datastore.
- Тип контроллера:
- PVSCSI производительнее LSI SAS.
- сетевой адаптер VMXNET3 - не влияет на сами диски, но может быть связан с другими нагрузками.
- Нагрузка внутри ВМ (гостевая ОС):
- Высокая нагрузка на CPU или активные фоновые процессы могут замедлять работу с диском.
- Большое число vCPU может
...
- приводить к возникновению ожидания исполнения команды (Co-stop) — это может «тормозить» весь I/O, включая диск. Признаки: кратковременные фризы в работе системы.
- Нехватка RAM - система будет чаще обращаться к диску напрямую, что может вызвать дополнительную нагрузку и снижение скорости выполнения операций чтения и записи.
- Внутри ОС могут работать антивирусы, индексаторы, службы логирования, cron-задачи, что может создавать множество мелких операций чтения/записи, при этом особой нагрузки на систему видно не будет.
- Заполнение системного диска:
- При близком к 100% заполнении системного диска ОС может дольше искать свободные блоки, фрагментировать файлы, перераспределять блоки.
- Снапшоты:
- При наличии активного снапшота, система может вести операции записи не напрямую, а в дельта-файл, что увеличивает задержки и снижает производительность. Это особенно критично при длительном использовании снапшотов.
Стоит отдельно упомянуть такую обширную тему как размер блока данных.
Размер блока — это минимальная единица данных, с которой работает ваша операционная система при чтении или записи на диск. Чем больше размер блока, тем больше данных передаётся за одну операцию, но и тем выше риски задержек при нестабильной нагрузке.
...