Управление репликой хранилища в VMM
Важно!
Поддержка этой версии Virtual Machine Manager (VMM) завершена. Мы рекомендуем выполнить обновление до VMM 2022.
Реплика хранилища появилась в Windows Server 2016. Он обеспечивает не зависящей от хранилища, блочного уровня синхронную репликацию между кластерами или серверами для обеспечения готовности к авариям и восстановления, а также растяжения отказоустойчивого кластера между сайтами для обеспечения высокой доступности. Синхронная репликация позволяет зеркально отображать данные на физических сайтах с отказоустойчивыми томами, что полностью предотвращает потерю данных на уровне файловой системы. Асинхронная репликация позволяет использовать физические расположения за пределами города, но при этом вероятна потеря данных.
Узнайте больше и ознакомьтесь с часто задаваемыми вопросами.
В этой статье объясняется, как реплика хранилища интегрируется с System Center Virtual Machine Manager (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 на одном конце и прямые пространства (в гиперконвергентном или дезагрегированном режиме) на другом.
- Каждый набор хранилища должен быть доступен в каждом кластере. Хранилище кластеров не может быть общим.
- Исходные тома и тома назначения (включая тома журналов) должны иметь одинаковый размер и размер блоков. Это связано с тем, что в реплике хранилища используется блочная репликация.
- Вам потребуется по крайней мере одно подключение по 1 Гбит/с на каждом сервере хранилища, предпочтительно 10 GbE, iWARP или InfiniBand.
- Для каждого файлового сервера или узла кластера требуются правила брандмауэра, разрешающие двунаправленный трафик ICMP, SMB (порт 445, плюс 5445 для SMB Direct) и WS-MAN (порт 5985).
- Вам необходимо быть членом группы "Администраторы" на каждом узле кластера.
- В настоящее время реплику хранилища можно настраивать только с использованием Windows PowerShell.
- Исходным и целевым хранилищем должен управлять один и тот же сервер VMM.
- Интеграция VMM со службой Azure Site Recovery не поддерживается.
- Настройка порядка записи и группы согласованности не поддерживаются.
Шаги по развертыванию
Определение хранилища: определите исходное и целевое хранилища, которые нужно использовать.
Обнаружение и классификация: если ваше хранилище не входит в структуру VMM, его необходимо обнаружить с помощью VMM. Исходное и целевое хранилище должны управляться на одном сервере VMM. После обнаружения создайте пул носителей и классификацию хранилища для него. Подробнее.
Создание пары: создайте пару исходного и конечного массивов хранения данных.
Подготовка. После связывания хранилища необходимо подготовить идентичные тома данных и журналов из исходного и целевого пулов носителей, созданных в соответствующих массивах хранилища. Кроме подготовки подлежащего репликации тома для данных необходимо также подготовить том для журналов транзакций репликации. При обновлении данных в исходном хранилище обновляется журнал транзакций и выполняется синхронизация разностных изменений с целевым хранилищем (используется синхронная репликация).
Создание групп репликации. После того как тома будут созданы, создайте группы репликации. Группы репликации — это логические группы, содержащие несколько томов. Группы репликации должны быть идентичными и содержать тома данных и журналов для исходного и целевого сайтов соответственно.
Включение репликации: теперь можно включить репликацию между исходной и целевой группами репликации.
Обновление. Чтобы завершить создание групп репликации и запустить начальную репликацию данных, необходимо обновить основного и дополнительного поставщиков хранилища. Данные реплицируются в целевое хранилище.
Проверка состояния: теперь можно проверить состояние основной группы репликации. Она должна находиться в состоянии репликации.
Добавление виртуальных машин. Если разностная репликация запущена и запущена, можно добавить виртуальные машины, использующие хранилище, содержащееся в группе репликации. При добавлении виртуальных машин они будут обнаружены и начнут реплицироваться автоматически.
Запуск отработки отказа. После того как репликация находится в состоянии синхронизации, вы можете выполнить отработку отказа, чтобы проверка если она работает должным образом. Тестового механизма отработки отказа не существует, поэтому вы будете запускать отработку отказа вручную в ответ на запланированные или незапланированные простои. После отработки отказа можно удалить виртуальную машину на исходном сайте (если она все еще существует) и создать виртуальную машину на целевом сайте, используя реплицированные данные.
Запуск восстановления размещения: после завершения отработки отказа и запуска виртуальных машин вы сможете восстановить размещение, если потребуется. Убедитесь в следующем:
- Если вы выполняете внеплановую отработку отказа, а исходное расположение недоступно, вы запустите отработку отказа для восстановления размещения из дополнительного расположения в основное расположение, а затем создадите виртуальную машину в основном расположении.
- Если вы запустили плановую отработку отказа, а исходная виртуальная машина по-прежнему доступна, остановите репликацию, удалите исходную виртуальную машину, создайте виртуальную машину в дополнительном размещении и перезапустите репликацию. Затем на первичном сайте можно создать виртуальную машину с теми же параметрами, что и исходная виртуальная машина.
Извлечение объектов PowerShell
Прежде чем начать, получите имя объектов PowerShell, которые вы хотите использовать.
Получите имя основного массива хранилища и назначьте его переменной.
$PriArray = Get-SCStorageArray - Name $PriArrayName
Получите имя вторичного массива хранения и назначьте его переменной.
RecArray = Get-SCStorageArray - Name $RecArrayName
Получите имя основного пула носителей и назначьте его переменной.
$ $ PriPoolName $RecPool = Get-SCStoragePool -Name $
Получите имя дополнительного пула носителей и назначьте его переменной.
$ $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 для данных и журнала. Затем создайте группы репликации.
Подготовьте и создайте источник.
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
Подготовьте и создайте назначение.
$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
Обновление поставщиков хранилищ
- Откройте консоль VMM.
- Выберите Поставщики ресурсов> структуры. Щелкните поставщик правой кнопкой мыши и выберите пункт Обновить.
Проверка состояния репликации
Получите состояние репликации для исходной группы репликации, чтобы убедиться, что репликация работает должным образом.
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
После восстановления размещения можно создать виртуальные машины на исходном сайте с помощью файлов VHD/конфигурации для восстановления размещения.
Остановка репликации
Если вы хотите остановить репликацию, необходимо выполнить этот командлет в источнике и назначении.
Set-SCReplicationGroup -ReplicationGroup $RecRG -Operation TearDown Tear down need to be done on both RGs
Подробнее
- Дополнительные сведения о реплике хранилища.
- Сведения о выделении хранилища для узлов и кластеров Hyper-V.
- Дополнительные сведения о переносе хранилища.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по