Создание правил сопоставления компьютеров и сайтов для виртуальных машин
Область применения: локальная версия Azure, версии 23H2 и 22H2
С помощью Центра администрирования Windows или Windows PowerShell можно легко создавать правила сходства и защиты от сходства для виртуальных машин в локальном экземпляре Azure.
Примечание.
Рекомендуемый способ создания виртуальных машин и управления ими в локальной версии Azure версии 23H2 использует плоскость управления Azure Arc. Используйте механизм, описанный ниже, для управления виртуальными машинами только в том случае, если вам нужны функциональные возможности, недоступные в виртуальных машинах Azure Arc.
Сходство — это правило, которое устанавливает связь между двумя или несколькими группами ресурсов или ролями, такими как виртуальные машины, для их объединения на одном компьютере, системе или сайте. Анти-сходство является противоположностью в том, что он используется для хранения указанных виртуальных машин или групп ресурсов отдельно друг от друга, таких как два контроллера домена, размещенные на отдельных компьютерах, или в отдельных сайтах для аварийного восстановления.
Правила сопоставления и защиты от сходства используются аналогично тому, как Azure использует Зоны доступности. В Azure можно настроить Зоны доступности для хранения виртуальных машин в отдельных зонах и от них друг от друга или в одной зоне друг с другом.
Используя правила сходства и защиты от сходства, любая кластерная виртуальная машина либо останется на одном компьютере, либо не будет совместно размещена на одном компьютере. Таким образом, единственным способом перемещения виртуальной машины из компьютера было бы сделать это вручную. Вы также можете хранить виртуальные машины вместе с собственным хранилищем, например общий том кластера (CSV), на котором находится VHDX.
Использование Windows Admin Center
Вы можете создать базовые правила сходства и защиты от сходства с помощью Windows Admin Center.
- На домашней странице Windows Admin Center в разделе "Все подключения" выберите компьютер или систему, для которой нужно создать правило виртуальной машины.
- В разделе "Сервис" выберите "Параметры".
- В разделе "Параметры" выберите "Правила сходства", а затем выберите "Создать правило " в разделе "Правила сопоставления".
- В разделе "Имя правила" введите имя правила.
- В разделе "Тип правила" выберите "Вместе" (один и тот же компьютер) или "Отдельно", чтобы разместить виртуальные машины на одном компьютере или на разных компьютерах.
- В разделе "Область применения" выберите виртуальные машины, к которым применяется это правило. Нажмите кнопку "Добавить", чтобы добавить дополнительные виртуальные машины в правило.
- По завершении нажмите кнопку "Создать правило".
- Чтобы удалить правило, выберите его и выберите пункт "Удалить".
Использование Windows PowerShell
Вы можете создавать более сложные правила с помощью Windows PowerShell, чем с помощью Центра администрирования Windows. Как правило, правила настраивается с удаленного компьютера, а не на хост-компьютере в системе. Этот удаленный компьютер называется компьютером управления.
При выполнении команд Windows PowerShell с компьютера управления включите -Name
или -Cluster
параметр с именем системы, которой вы управляете. При необходимости необходимо также указать полное доменное имя (FQDN) при использовании -ComputerName
параметра для компьютера.
Новые командлеты PowerShell
Чтобы создать правила сходства для кластеров, используйте следующие новые командлеты PowerShell:
New-ClusterAffinityRule
Командлет New-ClusterAffinityRule
используется для создания новых правил. С помощью этой команды вы укажите имя правила и тип правила, где:
-Name
— имя правила
-RuleType
Значения: SameFaultDomain
| SameNode
| DifferentFaultDomain
| DifferentNode
Пример:
New-ClusterAffinityRule -Name Rule1 -RuleType SameFaultDomain
Set-ClusterAffinityRule
Командлет Set-ClusterAffinityRule
используется для включения или отключения правила, где:
-Name
— имя правила для включения или отключения
-Enabled
| Disabled
включает или отключает правило
Пример:
Set-ClusterAffinityRule -Name Rule1 -Enabled
Get-ClusterAffinityRule
Командлет Get-ClusterAffinityRule
используется для отображения указанного правила и типа. Если -Name
он не указан, он перечисляет все правила.
Пример:
Get-ClusterAffinityRule -Name Rule1
Add-ClusterGroupToAffinityRule
Командлет Add-ClusterGroupToAffinityRule
используется для добавления роли виртуальной машины или имени группы в определенное правило сопоставления, где:
-Groups
— имя группы или роли, добавляемой в правило.
-Name
— имя добавляемого правила.
Пример:
Add-ClusterGroupToAffinityRule -Groups Group1 -Name Rule1
Add-ClusterSharedVolumeToAffinityRule
Позволяет Add-ClusterSharedVolumeToAffinityRule
виртуальным машинам оставаться вместе с общим томом кластера, где находится VHDX:
-ClusterSharedVolumes
— это csv-диск, который требуется добавить в правило.
-Name
— имя правила для добавления в
Пример:
Add-ClusterSharedVolumeToAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1
Remove-ClusterAffinityRule
Удаляет Remove-ClusterAffinityRule
указанное правило, где -Name
имя правила.
Пример:
Remove-ClusterAffinityRule -Name Rule1
Remove-ClusterGroupFromAffinityRule
Удаляет Remove-ClusterGroupFromAffinityRule
группу виртуальных машин или роль из определенного правила, но не отключает или не удаляет правило, где:
-Name
— имя правила
-Groups
— это группы или роли, которые вы хотите удалить из правила.
Пример:
Remove-ClusterGroupFromAffinityRule -Name Rule1 -Groups Group1
Remove-ClusterSharedVolumeFromAffinityRule
Командлет Remove-ClusterSharedVolumeFromAffinityRule
используется для удаления общих томов кластера из определенного правила, но не отключает или не удаляет правило, где:
-ClusterSharedVolumes
— это csv-диск, который требуется удалить из правила.
-Name
— имя добавляемого правила.
Пример:
Remove-ClusterSharedVolumeFromAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1
Существующие командлеты PowerShell
С появлением новых командлетов мы также добавили дополнительные новые коммутаторы в несколько существующих командлетов.
Move-ClusterGroup
Новый -IgnoreAffinityRule
коммутатор игнорирует правило и перемещает группу ресурсов кластера на другой компьютер. Дополнительные сведения об этом командлете см. в разделе Move-ClusterGroup.
Пример:
Move-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1
Примечание.
Если правило перемещения допустимо (поддерживается), все группы и роли, затронутые, также будут перемещаться. Если перемещение виртуальной машины будет сознательно нарушать правило, но оно необходимо на однократной временной основе, используйте -IgnoreAffinityRule
переключатель, чтобы разрешить перемещение. В этом случае отобразится предупреждение о нарушении для виртуальной машины. После этого можно включить правило обратно.
Start-ClusterGroup
Новый -IgnoreAffinityRule
коммутатор игнорирует правило и переносит группу ресурсов кластера в сети в текущем расположении. Дополнительные сведения об этом командлете см. в разделе Start-ClusterGroup.
Пример:
Start-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1
Примеры правил сопоставления
Правила сходства — это правила объединения, которые хранят ресурсы на одном компьютере, системе или сайте. Ниже приведены несколько распространенных сценариев настройки правил сходства.
Сценарий 1
Предположим, у вас есть виртуальная машина SQL Server и виртуальная машина веб-сервера. Эти две виртуальные машины должны всегда оставаться на одном сайте, но не обязательно должны находиться на одном компьютере. Это SameFaultDomain
возможно, как показано ниже.
New-ClusterAffinityRule -Name WebData -Ruletype SameFaultDomain -Cluster Cluster1
Add-ClusterGroupToAffinityRule -Groups SQL1,WEB1 –Name WebData -Cluster Cluster1
Set-ClusterAffinityRule -Name WebData -Enabled 1 -Cluster Cluster1
Чтобы просмотреть это правило и как оно настроено, используйте Get-ClusterAffinityRule
командлет, чтобы просмотреть выходные данные:
Get-ClusterAffinityRule -Name WebData -Cluster Cluster1
Name RuleType Groups Enabled
---- --------- ------ -------
WebData SameFaultDomain {SQL1, WEB1} 1
Сценарий 2
Давайте будем использовать тот же сценарий, за исключением того, что виртуальные машины должны находиться на том же компьютере. При использовании SameNode
задайте его следующим образом:
New-ClusterAffinityRule -Name WebData1 -Ruletype SameNode -Cluster Cluster1
Add-ClusterGroupToAffinityRule -Groups SQL1,WEB1 –Name WebData1 -Cluster Cluster1
Set-ClusterAffinityRule -Name WebData1 -Enabled 1 -Cluster Cluster1
Чтобы просмотреть правило и его настройку, используйте Get-ClusterAffinityRule
командлет, чтобы просмотреть выходные данные:
Get-ClusterAffinityRule -Name WebData1 -Cluster Cluster1
Name RuleType Groups Enabled
---- -------- ------ -------
DC SameNode {SQL1, WEB1} 1
Примеры правил сходства
Правила защиты от сходства — это "отдельно" правила, которые разделяют ресурсы и размещают их на разных компьютерах, системах или сайтах.
Сценарий 1
У вас есть две виртуальные машины под управлением SQL Server в одной локальной многосайтовой системе Azure. Каждая виртуальная машина использует много ресурсов памяти, ЦП и хранилища. Если два в конечном итоге на одном компьютере, это может привести к проблемам с производительностью одного или обоих, так как они конкурируют за память, ЦП и циклы хранения. Используя правило защиты от сходства с DifferentNode
типом правила, эти виртуальные машины всегда будут оставаться на разных компьютерах.
Примеры команд:
New-ClusterAffinityRule -Name SQL -Ruletype DifferentNode -Cluster Cluster1
Add-ClusterGroupToAffinityRule -Groups SQL1,SQL2 –Name SQL -Cluster Cluster1
Set-ClusterAffinityRule -Name SQL -Enabled 1 -Cluster Cluster1
Чтобы просмотреть правило и его настройку, используйте Get-ClusterAffinityRule
командлет, чтобы просмотреть выходные данные:
Get-ClusterAffinityRule -Name SQL -Cluster Cluster1
Name RuleType Groups Enabled
---- ----------- ------- -------
SQL DifferentNode {SQL1, SQL2} 1
Правила сходства хранилища
Вы также можете сохранить виртуальную машину и его VHDX на общем томе кластера (CSV) на одном компьютере. Это приведет к возникновению перенаправления CSV, что может замедлить запуск или остановку виртуальной машины. Учитывая объединенный сценарий сходства и защиты от сходства ранее, вы можете сохранить виртуальную машину SQL и общий том кластера на одном компьютере. Для этого используйте следующие команды:
New-ClusterAffinityRule -Name SQL1CSV1 -Ruletype SameNode -Cluster Cluster1
New-ClusterAffinityRule -Name SQL2CSV2 -Ruletype SameNode -Cluster Cluster1
Add-ClusterGroupToAffinityRule -Groups SQL1 –Name SQL1CSV1 -Cluster Cluster1
Add-ClusterGroupToAffinityRule -Groups SQL2 –Name SQL2CSV2 -Cluster Cluster1
Add-ClusterSharedVolumeToAffinityRule -ClusterSharedVolumes CSV1 -Name SQL1CSV1 -Cluster Cluster1
Add-ClusterSharedVolumeToAffinityRule -ClusterSharedVolumes CSV2 -Name SQL2CSV2 -Cluster Cluster1
Set-ClusterAffinityRule -Name SQL1CSV1 -Enabled 1 -Cluster Cluster1
Set-ClusterAffinityRule -Name SQL2CSV2 -Enabled 1 -Cluster Cluster1
Чтобы просмотреть эти правила и способ их настройки, используйте Get-ClusterAffinityRule
командлет без -Name
переключателя и просмотрите выходные данные.
Get-ClusterAffinityRule -Cluster Cluster1
Name RuleType Groups Enabled
---- -------- ------ -------
Site1Trio SameFaultDomain {SQL1, WEB1, DC1} 1
Site2Trio SameFaultDomain {SQL2, WEB2, DC2} 1
TrioApart DifferentFaultDomain {DC1, DC2} 1
SQL1CSV1 SameNode {SQL1, <CSV1-GUID>} 1
SQL2CSV2 SameNode {SQL2, <CSV2-GUID>} 1
Следующие шаги
Узнайте, как управлять виртуальными машинами. См. статью "Управление виртуальными машинами в локальной среде Azure" с помощью Центра администрирования Windows.