Storage Replica (реплікація сховища) в Windows Server 2016

У Windows Server 2016 з'явилася досить цікава можливість реплікації локального сховища (дискового тому) на віддалений сервер - Storage Replica (SR). Дані одного тому автоматично синхронізуються через мережу на вторинний сервер, на якому завжди буде доступна ідентична копія томи. Реплікація даних в Storage Replica виконується на рівні блоків за допомогою протоколу SMB v3.1.1 і не залежить від файлової системи (NTFS, CSVFS, ReFS).

Реплікація сховищ в Windows Server 2016 працює в режимі Active / Passive. Це означає, що дані доступні тільки на сервері джерелі. Можливі два режими реплікації:

  • синхронна реплікація - дані пишуться одночасно на обидва сервера. Перед записом даних на основний сервер він чекає підтвердження про запис даних на віддалений сервер;
  • асинхронна реплікація - дані записуються на основний сервер, і потім реплицируются на вторинний.

Storage Replica підтримує наступні сценарії:

  1. Реплікація між томами одного сервера
  2. Реплікація сховища Server-to-server
  3. Реплікація сховища в еластичному кластері (stretch cluster)
  4. Реплікація сховища між двома різними кластерами (Cluster-to-cluster)

зміст:

  • Вимоги до Storage Replica
  • Установка Storage Replica в Windows Server 2016
  • Налаштування реплікації томів в Windows Server 2016

Вимоги до Storage Replica

Для використання Storage Replica ваша інфраструктура повинна відповідати наступним вимогам:

  • Windows Server 2016/2019 в редакції Datacenter;
  • Обидва сервера повинні складатися в домені Active Directory;
  • За два додаткових диски на кожному сервері - на одному зберігаються дані, на другому - логи. Диск з балками повинен бути швидше диска з даними, в ідеалі SSD. Розміри диска з даними повинні бути однаковими;
  • Таблиця розділів дисків - тільки GPT (MBR не підтримується);
  • Підтримуються локальні диски (SAS / SCSI / SATA), iSCSI, SAN, загальні VHDX, Storage Spaces з SAS JBOD;
  • Мінімум 2 Гб пам'яті на сервері;
  • Мережа між серверами> = 1 Гбіт / с з затримками не більше 5 мс в обидві сторони (як правило це обмежує відстанню між партнерами по реплікації до 30-50 км). Мережевий адаптер бажано з підтримкою RDMA;
  • Наявність відкритих TCP портів 445, 5985 і 5445 між серверами;

Установка Storage Replica в Windows Server 2016

Компонент Storage Replica можна встановити з консолі Server Manager або за допомогою PowerShell:

Install-WindowsFeature Storage-Replica -IncludeManagementTools -Restart

Компонент Storage-Replica потрібно встановити на обидва сервера. Після установки компонента сервера потрібно перезавантажити.

Налаштування реплікації томів в Windows Server 2016

У Storage Replication немає вбудованої графічної консолі управління. Для настройки реплікації сховищ потрібно використовувати PowerShell, Admin Center або консоль Failover Clustering (при використанні кластера).

Список доступних командлетів в модулі StorageReplica можна вивести так:

Get-Command -Module storagereplica

За допомогою команди Test-SRTopology ви можете перевірити чи відповідає ваш сервер і канал зв'язку технології Storage Replica. Ви можете оцінити поточну кількість операцій введення / виводу, пропускну здатність мережі, розмір журналів. Командлет Test-SRTopology генерує HTML звіт з поточними навантаженнями і рекомендаціями.

Включимо реплікацію сховища D: між двома окремими серверами SR1 і SR2 (для балок використовується диск L :, розмір журналу - 1 Гб):

New-SRPartnership -SourceComputerName SR1 -SourceRGName SR1ReplGroup01 -SourceVolumeName E: -SourceLogVolumeName L: -DestinationComputerName SR2 -DestinationRGName SR2ReplGroup01 -DestinationVolumeName D: -DestinationLogVolumeName E: -LogSizeInBytes 1GB

Після включення реплікації на вторинному сервері диск з даними стає недоступний для внесення змін (формат RAW).

Інформацію про реплікації томи можна отримати за допомогою додаткових лічильників продуктивності в PerfMon або з PowerShell:

Get-Counter -Counter "\ Storage Replica Statistics (*)

Події реплікації томів можна відстежувати в журналах Event Viewer (Applications and Services Logs -> Microsoft -> Windows -> StorageReplica) або з PowerShell:

Get-WinEvent -ProviderName Microsoft-Windows-StorageReplica -max 10

Переключити режим реплікації на асинхронний можна командою:

Set-SRPartnership -ReplicationMode Asynchronous

При виході з ладу основного сервера ви можете вручну змінити напрямок реплікації даних, перевівши вторинну копію в онлайн режим:

Set-SRPartnership -NewSourceComputerName SR2 -SourceRGName SR2ReplGroup01 -DestinationComputerName SR1 -DestinationRGName SR1ReplGroup01

Для отримання інформації про стан груп і напрямку реплікації використовуйте командлети Get-SRGroup і Get-SRPartnerShip.

Можна перевірити довжину черги копіювання:

(Get-SRGroup) .Replicas | Select-Object numofbytesremaining

Щоб видалити реплікацію:

Get-SRPartnership | Remove-SRPartnership (Тільки на основному сервері)

Get-SRGroup | Remove-SRGroup (На обох серверах)

Ви можете використовувати Admin Center для настройки Storage Replication з графічного

інтерфейсу.

У багатьох організаціях як рішення для катастрофостійкі зберігання даних використовується DFS реплікація між ЦОД. У SR є кілька переваг перед DFS репликацией: дані копіюються на блочному рівні (можливо реплікація відкритих і використовуваних файлів, VSS снапшотов), незалежність від бази даних (немає необхідності узгодження бази даних при старті), швидка і синхронна реплікація (не потрібно чекати години або дні як в DFS). З недоліків Storage Replica: реплікація тільки 1 до 1, високі вимоги до мережі і затримок, без використання кластера використовується ручне перемикання напрямку реплікації і перенастроювання додатків (користувачів) на новий сервер (можна спростити за рахунок загального DFS namespace).

У Windows Server 2019 Build 17650 Storage Replica доступна і редакції Standard (можна репліцірвать тільки 1 том до 2 Тб, одному партнеру по реплікації. В Datacenter партерів по реплікації можения бути кілька). Крім того, з'явився режим Test Failover. У цьому режимі на партнері створюється достпний для запису тому-репліка, а реплікація припиняється до моменту відключення Test Failover (всі зміни за час використання цього режиму відкочуються до снапшотов).