Поделиться через


Управление репликой хранилища в VMM

Реплика хранилища появилась в Windows Server 2016. Она обеспечивает независимую от хранилища, блочное, синхронную репликацию между кластерами или серверами для аварийной подготовки и восстановления, а также растяжение отказоустойчивого кластера на разных сайтах для обеспечения высокой доступности. Синхронная репликация позволяет зеркально отображать данные на физических сайтах с отказоустойчивыми томами, что полностью предотвращает потерю данных на уровне файловой системы. Асинхронная репликация позволяет использовать физические расположения за пределами города, но при этом вероятна потеря данных.

Дополнительные сведения и ознакомьтесь с часто задаваемыми вопросами.

В этой статье объясняется, как реплика хранилища интегрируется с System Center — диспетчер виртуальных машин (VMM) и описывает настройку реплики хранилища с помощью PowerShell для репликации хранилища в структуре VMM.

Реплика хранилища в VMM

Реплику хранилища можно использовать для репликации данных кластера Hyper-V или файлов. Использование реплики хранилища в VMM обеспечивает множество бизнес-преимуществ:

  • Устраняет затраты и сложность, связанные с синхронными решениями репликации, такими как SAN.
  • Синхронная репликация сокращает время простоя и потерю данных. Он предоставляет RPO 0 (ноль потери данных). RTO (недоступность данных) происходит только во время сбоя первичного сайта и запуска дополнительного сайта.
  • Оборудование исходного и целевого хранилища не должно быть идентичным.

Перед началом работы

  • VMM должен работать в Windows Server 2016 или более поздней версии Datacenter Edition.
  • Hyper-V должен работать в Windows Server 2016 или более поздней версии Datacenter, Server Core или Nano.
  • Поддерживается только синхронная репликация. Асинхронный не поддерживается.
  • Вам потребуется два набора хранилища, тома или хранилища файлов. Исходные и конечные расположения должны иметь одинаковый тип хранилища (файла или тома), но фактическое хранилище может быть смешанным. Например, у вас может быть san Fibre Channel в одном конце и пространстве Direct (в гиперконвергентном или разъединенном режиме) в другом.
  • Каждый набор хранилища должен быть доступен в каждом из кластеров. Хранилище кластера не должно быть общим.
  • Исходные и конечные тома (включая тома журнала) должны быть идентичными по размеру и размеру блока. Это связано с тем, что реплика хранилища использует репликацию блоков.
  • На каждом сервере хранения требуется по крайней мере одно подключение с 1 гб, предпочтительно 10 ГбE, iWARP или InfiniBand.
  • Для каждого файлового сервера или узла кластера требуются правила брандмауэра, разрешающие двунаправленный трафик ICMP, SMB (порт 445, плюс 5445 для SMB Direct) и WS-MAN (порт 5985).
  • Необходимо быть членом группы администраторов на каждом узле кластера.
  • Реплику хранилища можно настроить только с помощью Windows PowerShell в настоящее время.
  • Исходное и целевое хранилище должно управляться тем же сервером VMM.
  • Интеграция VMM с Azure Site Recovery не поддерживается.
  • Настройка порядка записи и групп согласованности не поддерживается.

Шаги развертывания

  1. Определение хранилища. Определите исходное и целевое хранилище, которое вы хотите использовать.

  2. Обнаружение и классификация. Если хранилище в настоящее время не находится в структуре VMM, необходимо обнаружить его с помощью VMM. Исходное и целевое хранилище должно управляться тем же сервером VMM. После обнаружения создайте пул носителей и классификацию хранилища. Подробнее.

  3. Пара: связывание исходного и целевого массива хранилища.

  4. Подготовка. После связывания хранилища необходимо подготовить идентичные тома данных и журналов из пулов носителей источника и назначения, созданных на соответствующих массивах хранилища. Помимо подготовки тома для данных, которые будут реплицированы, также необходимо подготовить том для журналов транзакций репликации. Так как данные обновляются в исходном хранилище, журнал транзакций добавляется, а разностные изменения синхронизируются (с помощью синхронной репликации) с целевым хранилищем.

  5. Создайте группы репликации: после размещения томов создайте группы репликации. Группы репликации — это логические группы, содержащие несколько томов. Группы репликации должны быть идентичными, содержащими тома данных и журналов для исходных и целевых сайтов соответственно.

  6. Включение репликации. Теперь можно включить репликацию между группами исходной и целевой репликации.

  7. Обновление. Чтобы завершить создание групп репликации и активировать начальную репликацию данных, необходимо обновить основной и вторичный поставщик хранилища. Данные реплицируются в целевое хранилище.

  8. Проверьте состояние: теперь можно проверить состояние основной группы репликации. Он должен находиться в состоянии репликации.

  9. Добавление виртуальных машин. При выполнении разностной репликации можно добавить виртуальные машины, использующие хранилище, содержащееся в группе репликации. При добавлении виртуальных машин они будут обнаружены и начнут реплицироваться автоматически.

  10. Запуск отработки отказа: после репликации в состоянии синхронизации можно запустить отработку отказа, чтобы проверить, работает ли она должным образом. Существует не тестовый механизм отработки отказа, поэтому вы запустите отработку отказа вручную в ответ на запланированные или незапланированные сбои. После отработки отказа вы можете удалить виртуальную машину на исходном сайте (если она по-прежнему существует) и создать виртуальную машину на целевом сайте с помощью реплицированных данных.

  11. Восстановление размещения. После завершения отработки отказа и запуска виртуальных машин реплики можно выполнить отработку отказа по мере необходимости. Убедитесь в следующем:

    • Если вы запускаете un плановая отработка отказа и исходное расположение недоступно, выполните отработку отказа, чтобы выполнить отработку отказа из вторичного в основное расположение, а затем создать виртуальную машину в основном расположении.
    • Если вы запускаете плановая отработка отказа и исходную виртуальную машину по-прежнему доступно, необходимо остановить репликацию, удалить исходную виртуальную машину, создать виртуальную машину в дополнительном расположении, а затем перезапустить репликацию. Затем на основном сайте можно создать виртуальную машину с теми же параметрами, что и исходная виртуальная машина.

Получение объектов PowerShell

  1. Прежде чем начать, получите имя объектов PowerShell, которые вы хотите использовать.

  2. Получите имя основного массива хранилища и назначьте его переменной.

        $PriArray = Get-SCStorageArray - Name $PriArrayName
    
  3. Получите имя вторичного массива хранилища и назначьте его переменной.

        RecArray = Get-SCStorageArray - Name $RecArrayName
    
  4. Получите имя основного пула носителей и назначьте его переменной.

        $ $ PriPoolName $RecPool = Get-SCStoragePool -Name $
    
  5. Получите имя вторичного пула носителей и назначьте его переменной.

        $ $PriPoolName $RecPool = Get-SCStoragePool -Name $
    

Связывание массивов хранилища

Связывание первичных и вторичных массивов хранилища с помощью переменных для имен массивов хранилища.

Примечание.

Имя массива должно совпадать с именем кластера.

      Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name

Если вы создали кластер за пределами VMM и необходимо переименовать имя массива для сопоставления имени кластера, используйте следующую команду:

      Get-SCStorageArray -Name "existing-name" | Set-SCStorageArray -Name "new-name"

Подготовка LUN и создание групп хранения

Подготовьте LUN из пула носителей для данных и журнала. Затем создайте группы репликации.

  1. Подготовка и создание источника.

        Set-SCStorageArray -StorageArray $PriArray -PeerStorageArrayName $RecArray.name
    
        $PrimaryVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled"
    
        $PrimaryLogVol = New-SCStorageVolume -StorageArray $PriArray -StoragePool $PriPool -Name PrimaryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS"
    
        $PriRG = New-SCReplicationGroup -Name PriRG -StorageVolume $PrimaryVol -LogStorageVolume $PrimaryLogVol
    
  2. Подготовьте и создайте его в месте назначения.

        $RecoveryVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryVol -SizeInBytes $VolSize -RunAsynchronously -PhysicalDiskRedundancy "1" -FileSystem "CSVFS_NTFS" -DedupMode "Disabled"
    
        $RecoveryLogVol = New-SCStorageVolume -StorageArray $RecArray -StoragePool $RecPool -Name RecoveryLogVol -SizeInBytes $LogVolSize -GuidPartitionTable -RunAsynchronously -FileSystem "NTFS"
    
        $RecRG = New-SCReplicationGroup -Name RecRG -CreateOnArray -ProtectionMode Synchronous -StorageVolume $RecoveryVol -LogStorageVolume $RecoveryLogVol
    

Включение репликации

Теперь включите синхронную репликацию между группами репликации источника и назначения.

    Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation EnableProtection -TargetReplicationGroup $RecRG -EnableProtectionMode Synchronous

Обновление поставщиков хранилища

  1. Откройте консоль VMM.
  2. Выберите поставщики ресурсов>Fabric. Щелкните поставщик правой кнопкой мыши и выберите пункт Обновить.

Проверка состояния репликации

Получите состояние репликации для исходной группы репликации, чтобы убедиться, что репликация работает должным образом.

    Get replication status Get-SCReplicationGroup | where {($_.Name.EndsWith("PriRG")) -or ($_.Name.EndsWith("RecRG"))}  | fl Name, IsPrimary, ReplicationState, ReplicationHealth

создание виртуальной машины;

Создайте виртуальную машину с помощью LUN в исходной группе репликации. Кроме того, вы можете создать виртуальную машину в консоли VMM.

    New-SCVirtualMachine -Name "DemoVM" -VMHost <HostName> -Path $PrimaryVol -VMTemplate <VMTemplate>

Запуск отработки отказа

Выполните отработку отказа.

    Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation PrepareForFailover

    Set-SCReplicationGroup -ReplicationGroup SRecRG -Operation Failover

Запуск восстановления размещения

Перед восстановлением размещения в консоли VMM удалите исходные виртуальные машины, если они по-прежнему доступны. Не удается вернуться к той же виртуальной машине.

Теперь выполните восстановление размещения:

    Set-SCReplicationGroup -ReplicationGroup $PriRG -Operation ReverseRoles -EnableProtectionMode Synchronous -TargetReplicationGroup $RecRG

После восстановления размещения можно создать виртуальные машины на исходном сайте с помощью файлов виртуального жесткого диска или конфигурации отработки отказа.

Остановить репликацию

Если вы хотите остановить репликацию, необходимо запустить этот командлет в источнике и назначении.

    Set-SCReplicationGroup -ReplicationGroup $RecRG -Operation TearDown  Tear down need to be done on both RGs

Подробнее