Tworzenie reguł koligacji maszyn i lokacji dla maszyn wirtualnych
Dotyczy: Azure Local 2311.2 i nowsze
Za pomocą programu Windows Admin Center lub Windows PowerShell można łatwo tworzyć reguły koligacji i koligacji dla maszyn wirtualnych w wystąpieniu lokalnym platformy Azure.
Uwaga
Zalecanym sposobem tworzenia maszyn wirtualnych na platformie Azure lokalnie i zarządzania nimi jest użycie płaszczyzny sterowania usługi Azure Arc . Użyj mechanizmu opisanego poniżej, aby zarządzać maszynami wirtualnymi tylko wtedy, gdy potrzebujesz funkcji, które nie są dostępne na maszynach wirtualnych usługi Azure Arc.
Koligacja to reguła, która ustanawia relację między co najmniej dwiema grupami zasobów lub rolami, takimi jak maszyny wirtualne, aby zachować je razem na tej samej maszynie, systemie lub lokacji. Anty-koligacja jest odwrotna w tym, że służy do przechowywania określonych maszyn wirtualnych lub grup zasobów poza sobą, takich jak dwa kontrolery domeny umieszczone na oddzielnych maszynach lub w oddzielnych lokacjach na potrzeby odzyskiwania po awarii.
Reguły koligacji i anty-koligacji są używane podobnie do sposobu, w jaki platforma Azure używa Strefy dostępności. Na platformie Azure można skonfigurować Strefy dostępności, aby zachować maszyny wirtualne w oddzielnych strefach i od siebie lub w tej samej strefie ze sobą.
Korzystając z reguł koligacji i przeciw koligacji, każda klastrowana maszyna wirtualna pozostanie na tej samej maszynie lub nie będzie razem na tej samej maszynie. W ten sposób jedynym sposobem na przeniesienie maszyny wirtualnej z maszyny będzie ręczne wykonanie tej czynności. Maszyny wirtualne można również przechowywać razem z własnym magazynem, takim jak udostępniony wolumin klastra (CSV), na którym znajduje się jego dysk VHDX.
Korzystanie z centrum administracyjnego systemu Windows
Podstawowe reguły koligacji i koligacji można utworzyć przy użyciu Centrum administracyjnego systemu Windows.
- W centrum administracyjnym systemu Windows w obszarze Wszystkie połączenia wybierz maszynę lub system, dla którego chcesz utworzyć regułę maszyny wirtualnej.
- W obszarze Narzędzia wybierz pozycję Ustawienia.
- W obszarze Ustawienia wybierz pozycję Reguły koligacji, a następnie wybierz pozycję Utwórz regułę w obszarze Reguły koligacji.
- W obszarze Nazwa reguły wprowadź nazwę reguły.
- W obszarze Typ reguły wybierz pozycję Razem (ta sama maszyna) lub Apart (różne maszyny), aby umieścić maszyny wirtualne na tej samej maszynie lub na różnych maszynach.
- W obszarze Dotyczy wybierz maszyny wirtualne, do których ma zastosowanie ta reguła. Użyj przycisku Dodaj, aby dodać więcej maszyn wirtualnych do reguły.
- Po zakończeniu wybierz pozycję Utwórz regułę.
- Aby usunąć regułę, wybierz ją i wybierz pozycję Usuń regułę.
Używanie programu Windows PowerShell
Bardziej złożone reguły można tworzyć przy użyciu programu Windows PowerShell niż przy użyciu programu Windows Admin Center. Zazwyczaj reguły są konfigurowane z komputera zdalnego, a nie na maszynie hosta w systemie. Ten komputer zdalny jest nazywany komputerem zarządzania.
W przypadku uruchamiania poleceń programu Windows PowerShell z komputera zarządzania dołącz -Name
parametr or -Cluster
z nazwą systemu, którym zarządzasz. Jeśli ma to zastosowanie, należy również określić w pełni kwalifikowaną nazwę domeny (FQDN) podczas korzystania z parametru -ComputerName
dla maszyny.
Nowe polecenia cmdlet programu PowerShell
Aby utworzyć reguły koligacji dla klastrów, użyj następujących nowych poleceń cmdlet programu PowerShell:
New-ClusterAffinityRule
Polecenie New-ClusterAffinityRule
cmdlet służy do tworzenia nowych reguł. Za pomocą tego polecenia należy określić nazwę reguły i typ reguły, w której:
-Name
to nazwa reguły
-RuleType
wartości to SameFaultDomain
| SameNode
| DifferentFaultDomain
| DifferentNode
Przykład:
New-ClusterAffinityRule -Name Rule1 -RuleType SameFaultDomain
Set-ClusterAffinityRule
Polecenie cmdlet służy do włączania Set-ClusterAffinityRule
lub wyłączania reguły, w której:
-Name
to nazwa reguły do włączenia lub wyłączenia
-Enabled
|
Disabled
włącza lub wyłącza regułę
Przykład:
Set-ClusterAffinityRule -Name Rule1 -Enabled
Get-ClusterAffinityRule
Polecenie Get-ClusterAffinityRule
cmdlet służy do wyświetlania określonej reguły i typu. Jeśli -Name
nie zostanie określony, wyświetla listę wszystkich reguł.
Przykład:
Get-ClusterAffinityRule -Name Rule1
Add-ClusterGroupToAffinityRule
Polecenie Add-ClusterGroupToAffinityRule
cmdlet służy do dodawania roli maszyny wirtualnej lub nazwy grupy do określonej reguły koligacji, gdzie:
-Groups
to nazwa grupy lub roli, która ma zostać dodana do reguły.
-Name
to nazwa reguły do dodania.
Przykład:
Add-ClusterGroupToAffinityRule -Groups Group1 -Name Rule1
Add-ClusterSharedVolumeToAffinityRule
Funkcja Add-ClusterSharedVolumeToAffinityRule
umożliwia maszynom wirtualnym trzymać się razem z udostępnionym woluminem klastra, w którym znajduje się dysk VHDX, gdzie:
-ClusterSharedVolumes
to dysk CSV, który chcesz dodać do reguły
-Name
to nazwa reguły do dodania do
Przykład:
Add-ClusterSharedVolumeToAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1
Remove-ClusterAffinityRule
Element Remove-ClusterAffinityRule
usuwa określoną regułę, gdzie -Name
jest nazwą reguły.
Przykład:
Remove-ClusterAffinityRule -Name Rule1
Remove-ClusterGroupFromAffinityRule
Element Remove-ClusterGroupFromAffinityRule
usuwa grupę lub rolę maszyny wirtualnej z określonej reguły, ale nie wyłącza ani nie usuwa reguły, gdzie:
-Name
to nazwa reguły
-Groups
to grupy lub role, które chcesz usunąć z reguły
Przykład:
Remove-ClusterGroupFromAffinityRule -Name Rule1 -Groups Group1
Remove-ClusterSharedVolumeFromAffinityRule
Polecenie Remove-ClusterSharedVolumeFromAffinityRule
cmdlet służy do usuwania udostępnionych woluminów klastra z określonej reguły, ale nie wyłącza ani nie usuwa reguły, gdzie:
-ClusterSharedVolumes
to dysk CSV, który chcesz usunąć z reguły.
-Name
to nazwa reguły do dodania.
Przykład:
Remove-ClusterSharedVolumeFromAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1
Istniejące polecenia cmdlet programu PowerShell
Wraz z pojawieniem się nowych poleceń cmdlet dodaliśmy również dodatkowe nowe przełączniki do kilku istniejących poleceń cmdlet.
Move-ClusterGroup
Nowy -IgnoreAffinityRule
przełącznik ignoruje regułę i przenosi grupę zasobów klastra na inną maszynę. Aby uzyskać więcej informacji na temat tego polecenia cmdlet, zobacz Move-ClusterGroup.
Przykład:
Move-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1
Uwaga
Jeśli reguła przenoszenia jest prawidłowa (obsługiwana), wszystkie grupy i role, których dotyczy problem, również zostaną przeniesione. Jeśli przeniesienie maszyny wirtualnej świadomie narusza regułę, ale jest ona potrzebna jednorazowo, użyj przełącznika -IgnoreAffinityRule
, aby zezwolić na przejście. W takim przypadku zostanie wyświetlone ostrzeżenie o naruszeniu dla maszyny wirtualnej. Następnie możesz włączyć regułę z powrotem zgodnie z potrzebami.
Start-ClusterGroup
Nowy -IgnoreAffinityRule
przełącznik ignoruje regułę i przenosi grupę zasobów klastra do trybu online w bieżącej lokalizacji. Aby uzyskać więcej informacji na temat tego polecenia cmdlet, zobacz Start-ClusterGroup.
Przykład:
Start-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1
Przykłady reguł koligacji
Reguły koligacji to "razem" reguły, które przechowują zasoby na tej samej maszynie, systemie lub lokacji. Poniżej przedstawiono kilka typowych scenariuszy konfigurowania reguł koligacji.
Scenariusz 1
Załóżmy, że masz maszynę wirtualną z programem SQL Server i maszyną wirtualną serwera internetowego. Te dwie maszyny wirtualne muszą zawsze pozostać w tej samej lokacji, ale nie muszą znajdować się na tej samej maszynie. Przy użyciu SameFaultDomain
metody jest to możliwe, jak pokazano poniżej:
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
Aby wyświetlić tę regułę i sposób jej konfiguracji, użyj Get-ClusterAffinityRule
polecenia cmdlet , aby wyświetlić dane wyjściowe:
Get-ClusterAffinityRule -Name WebData -Cluster Cluster1
Name RuleType Groups Enabled
---- --------- ------ -------
WebData SameFaultDomain {SQL1, WEB1} 1
Scenariusz 2
Użyjmy tego samego scenariusza, z wyjątkiem określenia, że maszyny wirtualne muszą znajdować się na tej samej maszynie. Za pomocą polecenia SameNode
ustaw go w następujący sposób:
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
Aby wyświetlić regułę i sposób jej konfiguracji, użyj Get-ClusterAffinityRule
polecenia cmdlet , aby wyświetlić dane wyjściowe:
Get-ClusterAffinityRule -Name WebData1 -Cluster Cluster1
Name RuleType Groups Enabled
---- -------- ------ -------
DC SameNode {SQL1, WEB1} 1
Przykłady reguł koligacji
Reguły ochrony przed koligacją są "oddzielone" regułami, które oddzielają zasoby i umieszczają je na różnych maszynach, systemach lub lokacjach.
Scenariusz 1
Masz dwie maszyny wirtualne z uruchomionym programem SQL Server w tym samym lokalnym systemie wielu lokacji platformy Azure. Każda maszyna wirtualna korzysta z dużej ilości pamięci, procesora CPU i zasobów magazynu. Jeśli te dwa elementy kończą się na tej samej maszynie, może to spowodować problemy z wydajnością jednego lub obu tych elementów, ponieważ konkurują o pamięć, procesor CPU i cykle magazynowania. Korzystając z reguły anty-koligacji z DifferentNode
typem reguły, te maszyny wirtualne zawsze pozostaną na różnych maszynach.
Przykładowe polecenia to:
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
Aby wyświetlić regułę i sposób jej konfiguracji, użyj Get-ClusterAffinityRule
polecenia cmdlet , aby wyświetlić dane wyjściowe:
Get-ClusterAffinityRule -Name SQL -Cluster Cluster1
Name RuleType Groups Enabled
---- ----------- ------- -------
SQL DifferentNode {SQL1, SQL2} 1
Reguły koligacji magazynu
Możesz również zachować maszynę wirtualną i jej dysk VHDX na udostępnionym woluminie klastra (CSV) na tej samej maszynie. Dzięki temu przekierowywanie woluminów CSV może spowolnić uruchamianie lub zatrzymywanie maszyny wirtualnej. Biorąc pod uwagę wcześniej połączony scenariusz koligacji i koligacji, można zachować maszynę wirtualną SQL i udostępniony wolumin klastra na tym samym komputerze. W tym celu użyj następujących poleceń:
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
Aby wyświetlić te reguły i sposób ich konfigurowania, użyj Get-ClusterAffinityRule
polecenia cmdlet bez przełącznika -Name
i wyświetl dane wyjściowe.
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
Następne kroki
Dowiedz się, jak zarządzać maszynami wirtualnymi. Zobacz Manage VMs on Azure Local using Windows Admin Center (Zarządzanie maszynami wirtualnymi na platformie Azure lokalnie przy użyciu centrum administracyjnego systemu Windows).