Storage Spaces Direct (S2D) на Windows Server: развёртывание HCI-кластера
Я Семёнов Евгений, директор АйТи Фреш. С Windows Failover Cluster работаю с 2008 года, а с S2D — с 2016-го, как только он вышел. За 15+ лет опыта в корпоративных средах я собирал HCI-кластеры на 2, 4 и 8 узлах, из них несколько живут в дата-центре МТС на железе Dell с процессорами Xeon Platinum 8280 и сетью 40G Mellanox. Эта статья — сжатый практический протокол: что купить, как собрать, где грабли.
Что такое S2D и для кого
Storage Spaces Direct превращает 2–16 узлов Windows Server Datacenter в программный SAN. Диски каждого узла отдаются в общий пул, данные зеркалятся или распределяются по узлам, сверху — кластерные тома (CSV) с ReFS. Гипервизор Hyper-V живёт на тех же узлах, получаем Hyper-Converged Infrastructure без внешнего массива.
Кому это нужно:
- Офисам 50+ ПК с Hyper-V и 10–30 виртуалками, когда стойка с внешним SAN неоправданно дорога.
- Производствам с SCADA и MES, которым нужен надёжный горизонтально-масштабируемый сторидж без вендорлока.
- Компаниям, которые уходят от VMware vSAN по лицензионным причинам.
Аппаратные требования
S2D капризен к железу. Экономия на дисках или сети приводит к тому, что кластер через полгода начинает терять узлы. Я всегда комплектую по белому списку Windows Server Catalog.
| Компонент | Рекомендация |
|---|---|
| Сервер | Dell PowerEdge R750/R760, HP DL380 Gen11, Lenovo SR650 V3 |
| CPU | Intel Xeon Gold/Platinum, 16+ ядер на узел |
| RAM | от 128 ГБ (HCI) — минимум 4 ГБ на каждый ТБ cache-дисков |
| HBA | Dell HBA350i / Broadcom SAS IT mode — никаких RAID-контроллеров в цачестве SAS |
| Cache-диски | NVMe 3DWPD от 800 ГБ, 2 шт. на узел |
| Capacity-диски | SATA SSD ReadIntensive или SAS HDD 12G — от 4 штук на узел |
| Сеть | 2× 25/40/100 Гбит Mellanox ConnectX-5/6 с RDMA (RoCE v2) |
| Коммутаторы | С поддержкой DCB/PFC/ETS (Mellanox SN2010, Arista 7050) |
Подготовка узлов
Перед deploy на каждом узле проверяю:
- Одинаковая прошивка BIOS/iDRAC/HBA/сетевых карт на всех узлах.
- HBA в IT/HBA режиме, RAID-0 через контроллер запрещён.
- Все диски без партиций и MBR-следов —
Get-Disk | Clear-Disk -RemoveData -RemoveOEM -Confirm:$false. - Время через внешний NTP (pool.ntp.org или внутренний GPS-источник).
- Одна и та же сборка Windows Server Datacenter на всех узлах.
Install-WindowsFeature -Name File-Services, Failover-Clustering, Hyper-V, Data-Center-Bridging `
-IncludeManagementTools -Restart
Настройка сети и RDMA
Я всегда делаю пару Mellanox на каждом узле в SET (Switch Embedded Teaming) и поднимаю два vNIC для SMB-трафика с RDMA и QoS.
New-VMSwitch -Name "S2DSwitch" -NetAdapterName "NIC1","NIC2" `
-EnableEmbeddedTeaming $true -AllowManagementOS $false
Add-VMNetworkAdapter -ManagementOS -Name "SMB1" -SwitchName S2DSwitch
Add-VMNetworkAdapter -ManagementOS -Name "SMB2" -SwitchName S2DSwitch
Set-VMNetworkAdapter -ManagementOS -Name "SMB1" -IeeePriorityTag On
Enable-NetAdapterRdma -Name "vEthernet (SMB1)", "vEthernet (SMB2)"
# QoS для SMB
New-NetQosPolicy "SMBDirect" -NetDirectPortMatchCondition 445 -PriorityValue8021Action 3
Enable-NetQosFlowControl -Priority 3
Enable-NetAdapterQos -Name "NIC1","NIC2"
New-NetQosTrafficClass "SMBDirect" -Priority 3 -BandwidthPercentage 50 -Algorithm ETS
После настройки проверяю Get-NetAdapterRdma и Test-RDMA.ps1 от Microsoft — без RDMA кластер работать будет, но скорости упадут в 3–4 раза.
Создание кластера и включение S2D
# Валидация
Test-Cluster -Node s2d01,s2d02,s2d03,s2d04 `
-Include "Storage Spaces Direct", "Inventory", "Network", "System Configuration"
# Создание кластера
New-Cluster -Name S2D-CL01 -Node s2d01,s2d02,s2d03,s2d04 `
-NoStorage -StaticAddress 10.10.50.10
# Включение S2D
Enable-ClusterStorageSpacesDirect -PoolFriendlyName "S2DPool" -Confirm:$false
# Создание тома
New-Volume -FriendlyName "VM-Volume1" -FileSystem CSVFS_ReFS `
-StoragePoolFriendlyName "S2DPool" -Size 2TB `
-ResiliencySettingName "Mirror" -ProvisioningType Fixed
Отказоустойчивость: Mirror vs Parity
| Схема | Узлов | Эффективность | Применение |
|---|---|---|---|
| 2-way mirror | 2+ | 50% | Лабы, небольшие HCI |
| 3-way mirror | 3+ | 33% | Продуктив HCI, VM |
| Dual parity | 4+ | 50–80% | Архивы, файл-сервер |
| Mirror-accelerated parity | 4+ | 60–70% | Смешанные нагрузки |
Для HCI с виртуалками я всегда беру 3-way mirror. Dual parity — только для холодных данных. Mirror-accelerated parity хорош на 4+ узлах с разнородной нагрузкой.
ReFS и интеграция с Hyper-V
На CSV всегда ReFS, не NTFS. Причины: checksumming блоков, ускоренные операции ODX, block cloning для снэпшотов Hyper-V, быстрый ребилд. VM размещаются как VHDX-файлы на CSV-путях C:\ClusterStorage\Volume1\VMs.
# Live Migration настройка
Set-VMHost -VirtualMachineMigrationAuthenticationType Kerberos `
-MaximumVirtualMachineMigrations 4 -UseAnyNetworkForMigration $false
Add-VMMigrationNetwork 10.10.50.0/24
Мини-кейс: четырёхузловой HCI для производства
Октябрь 2025. Клиент — пищевое производство в Подмосковье, 120 юзеров, SCADA, 1С, файл-сервер, Exchange. Бюджет — замена умирающего массива Dell MD3860i. Альтернатива — новый внешний массив за 4,5 млн руб., мы предложили HCI.
Собрал четырёхузловой S2D в дата-центре МТС: Dell PowerEdge R750, по 2 Xeon Platinum 8280, 384 ГБ RAM, 2× NVMe 1.6 ТБ (cache) + 6× SATA SSD 3.84 ТБ на узел. Сеть 2× 40G Mellanox ConnectX-5 с RDMA, коммутация Mellanox SN2010. Полезное пространство — около 23 ТБ на 3-way mirror. На кластере работают 28 виртуалок: Hyper-V, контроллеры домена, 1С, файл-шара с DFS, Exchange 2019.
Стоимость комплекта — 3,15 млн руб., экономия по сравнению с новым массивом — 1,4 млн плюс два года поддержки в цене. IOPS по внутренним тестам CrystalDiskMark — 420 тысяч на 4K random read на одной VM. С момента запуска (8 месяцев) — ноль downtime, одна плановая смена прошивки с Rolling Upgrade.
Мониторинг и регулярное обслуживание
Get-StoragePool S2DPool | Get-PhysicalDisk | Sort-Object HealthStatus— раз в смену.Get-VirtualDisk | Get-StorageJob— при любой операции ребилда.- Health Service через
Get-StorageSubSystem Cluster* | Get-StorageHealthReport— общее здоровье. - Алерты в System Center Operations Manager, Zabbix или Windows Admin Center.
- Прошивки — ежеквартально, в режиме Cluster-Aware Updating.
Типовые ошибки
- Диски разных моделей в одном узле — пул получает mixed performance bins, производительность падает в 2 раза.
- RDMA не включён на коммутаторе — кластер работает, но с задержками в 5–10 мс.
- Пропущен DCB / PFC — SMB начинает терять пакеты под нагрузкой.
- RAID-контроллер вместо HBA — нарушает контракт S2D, могут возникнуть невидимые ошибки.
- Нет witness — двухузловой кластер падает в split brain при сетевой проблеме.
Соберём HCI-кластер на S2D под ключ
Проектирую, закупаю и ввожу в эксплуатацию S2D-кластеры от 2 до 8 узлов. Железо Dell/HPE/Lenovo, сеть 25–100 Гбит Mellanox, размещение у нас в дата-центре МТС или на вашей площадке. Срок от проекта до запуска — 2–4 недели. Опыт 15+ лет.
Телефон: +7 903 729-62-41
Telegram: @ITfresh_Boss
Семёнов Евгений Сергеевич, директор АйТи Фреш
FAQ — частые вопросы по S2D
- Что такое Storage Spaces Direct?
- Программно-определяемое хранилище Microsoft на базе Failover Cluster, объединяющее локальные диски нескольких серверов.
- Нужна ли лицензия Datacenter для S2D?
- Да, в Standard S2D отсутствует.
- Какая сеть нужна для S2D?
- Минимум 10 Гбит с RDMA. Рекомендую 25–40 Гбит Mellanox ConnectX-5/6.
- Сколько узлов минимально в S2D?
- Два, но продуктив — от трёх для трёхстороннего зеркала.
- Что такое CSV и ReFS в S2D?
- CSV — кластерный том, доступный всем узлам. ReFS — предпочтительная ФС с контрольными суммами и быстрым ребилдом.