VM'ler için sunucu ve site benzimi kuralları oluşturma

Şunlar için geçerlidir: Azure Stack HCI, sürüm 23H2 ve 22H2

Windows Admin Center veya Windows PowerShell kullanarak, kümedeki sanal makineleriniz (VM) için kolayca benzeşim ve benzeşim karşıtı kurallar oluşturabilirsiniz.

Not

Azure Stack HCI 23H2'de VM oluşturmanın ve yönetmenin önerilen yolu Azure Arc denetim düzlemini kullanmaktır. Vm'lerinizi yalnızca Azure Arc VM'lerinde kullanılamayan işlevlere ihtiyacınız varsa yönetmek için aşağıda açıklanan mekanizmayı kullanın.

Benzimi, sanal makineler (VM) gibi iki veya daha fazla kaynak grubu veya rol arasında ilişki kurarak bunları aynı sunucuda, kümede veya sitede bir arada tutan bir kuraldır. Anti benzeşim, belirtilen VM'leri veya kaynak gruplarını birbirinden ayrı tutmak için (örneğin, olağanüstü durum kurtarma için ayrı sunuculara veya ayrı sitelere yerleştirilen iki etki alanı denetleyicisi) tam tersidir.

Benzeşim ve benzeşim karşıtı kurallar, Azure'ın Kullanılabilirlik Alanları kullanma yöntemine benzer şekilde kullanılır. Azure'da vm'leri birbirinden ayrı ve birbirinden uzak veya aynı bölgede tutmak için Kullanılabilirlik Alanları yapılandırabilirsiniz.

Benzeşim ve benzeşim karşıtı kurallar kullanıldığında, kümelenmiş tüm VM'ler aynı küme düğümünde kalır veya aynı küme düğümünde birlikte olması engellenir. Bu şekilde, vm'yi düğümden çıkarmanın tek yolu bunu el ile yapmaktır. Vm'leri VHDX'in bulunduğu Küme Paylaşılan Birimi (CSV) gibi kendi depolama alanıyla birlikte de tutabilirsiniz.

Benzeşim ve benzeşim karşıtı kuralları birleştirerek, iki site arasında esnetilmiş bir küme yapılandırabilir ve VM'lerinizi içinde olmaları gereken sitede tutabilirsiniz.

Windows Admin Center kullanma

Windows Admin Center kullanarak temel benzeşim ve benzeşim karşıtı kurallar oluşturabilirsiniz.

Sanal makineler ekranı

  1. giriş Windows Admin Center Tüm bağlantılar'ın altında, VM kuralını oluşturmak istediğiniz sunucuyu veya kümeyi seçin.
  2. Araçlar'ın altında Ayarlar'ı seçin.
  3. Ayarlar'ın altında Benzite kuralları'nı ve ardından Benzite kuralları'nın altında Kural oluştur'u seçin.
  4. Kural adı'nın altında kuralınız için bir ad girin.
  5. Kural türü altında, VM'lerinizi aynı sunucuya veya farklı sunuculara yerleştirmek için Birlikte (aynı sunucu) veya Ayrı (farklı sunucular) seçeneğini belirleyin.
  6. Uygulandığı yer'in altında, bu kuralın geçerli olduğu VM'leri seçin. Kurala daha fazla VM eklemek için Ekle düğmesini kullanın.
  7. İşiniz bittiğinde Kural oluştur'u seçin.
  8. Bir kuralı silmek için kuralı seçip Kuralı sil'i seçmeniz yeterlidir.

Windows PowerShell kullanarak

Windows PowerShell kullanarak Windows Admin Center kullanmaktan daha karmaşık kurallar oluşturabilirsiniz. Genellikle, kurallarınızı kümedeki bir konak sunucusu yerine uzak bir bilgisayardan ayarlarsınız. Bu uzak bilgisayara yönetim bilgisayarı adı verilir.

Bir yönetim bilgisayarından Windows PowerShell komut çalıştırırken, yönettiğiniz kümenin adını içeren veya -Cluster parametresini ekleyin-Name. Varsa, bir sunucu düğümü için parametresini kullanırken -ComputerName tam etki alanı adını (FQDN) de belirtmeniz gerekir

Yeni PowerShell cmdlet'leri

Kümeler için benşim kuralları oluşturmak için aşağıdaki yeni PowerShell cmdlet'lerini kullanın:

New-ClusterAffinityRule

cmdlet'i New-ClusterAffinityRule yeni kurallar oluşturmak için kullanılır. Bu komutla kuralın adını ve kuralın türünü belirtirsiniz; burada:

-Name kuralın adıdır

-RuleType değerleri şunlardır: SameFaultDomain | SameNode | DifferentFaultDomain | DifferentNode

Örnek:

New-ClusterAffinityRule -Name Rule1 -RuleType SameFaultDomain

Set-ClusterAffinityRule

Cmdlet Set-ClusterAffinityRule , aşağıdaki durumlarda bir kuralı etkinleştirmek veya devre dışı bırakmak için kullanılır:

-Name etkinleştirecek veya devre dışı bırakacak kuralın adıdır

-Enabled | Disabled kuralı etkinleştirir veya devre dışı bırakır

Örnek:

Set-ClusterAffinityRule -Name Rule1 -Enabled

Get-ClusterAffinityRule

Cmdlet Get-ClusterAffinityRule , belirtilen kuralı ve ne tür olduğunu görüntülemek için kullanılır. Belirtilmezse -Name , tüm kuralları listeler.

Örnek:

Get-ClusterAffinityRule -Name Rule1

Add-ClusterGroupToAffinityRule

Add-ClusterGroupToAffinityRule Cmdlet, belirli bir benşim kuralına bir VM rolü veya grup adı eklemek için kullanılır; burada:

-Groups kurala eklenecek grubun veya rolün adıdır

-Name eklenecek kuralın adıdır

Örnek:

Add-ClusterGroupToAffinityRule -Groups Group1 -Name Rule1

Add-ClusterSharedVolumeToAffinityRule

, Add-ClusterSharedVolumeToAffinityRule VM'lerinizin VHDX'in bulunduğu Küme Paylaşılan Birimi ile bir arada kalmasını sağlar. Burada:

-ClusterSharedVolumes kurala eklemek istediğiniz CSV diskleridir

-Name eklenecek kuralın adıdır

Örnek:

Add-ClusterSharedVolumeToAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1

Remove-ClusterAffinityRule

belirtilen Remove-ClusterAffinityRule kuralı siler; burada -Name kuralın adıdır.

Örnek:

Remove-ClusterAffinityRule -Name Rule1

Remove-ClusterGroupFromAffinityRule

, Remove-ClusterGroupFromAffinityRule belirli bir kuraldan bir VM grubunu veya rolünü kaldırır ancak kuralı devre dışı bırakmaz veya silmez; burada:

-Name kuralın adıdır

-Groups kuraldan kaldırmak istediğiniz gruplar veya rollerdir

Örnek:

Remove-ClusterGroupFromAffinityRule -Name Rule1 -Groups Group1

Remove-ClusterSharedVolumeFromAffinityRule

Remove-ClusterSharedVolumeFromAffinityRule Cmdlet, Küme Paylaşılan Birimlerini belirli bir kuraldan kaldırmak için kullanılır, ancak aşağıdaki durumlarda kuralı devre dışı bırakmaz veya silmez:

-ClusterSharedVolumes kuraldan kaldırmak istediğiniz CSV diskleridir

-Name eklenecek kuralın adıdır

Örnek:

Remove-ClusterSharedVolumeFromAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1

Mevcut PowerShell cmdlet'leri

Yeni cmdlet'lerin gelişiyle birlikte, mevcut birkaç cmdlet'e fazladan yeni anahtarlar ekledik.

Move-ClusterGroup

Yeni -IgnoreAffinityRule anahtar kuralı yoksayar ve kümelenmiş kaynak grubunu başka bir küme düğümüne taşır. Bu cmdlet hakkında daha fazla bilgi için bkz . Move-ClusterGroup.

Örnek:

Move-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1

Not

Taşıma kuralı geçerliyse (desteklenir), etkilenen tüm gruplar ve roller de taşınır. Bir VM taşıma işlemi bilerek bir kuralı ihlal edecekse ancak bir kerelik geçici olarak gerekliyse, taşımanın -IgnoreAffinityRule gerçekleşmesine izin vermek için anahtarını kullanın. Bu durumda VM için bir ihlal uyarısı görüntülenir. Daha sonra kuralı gerektiği gibi yeniden etkinleştirebilirsiniz.

Start-ClusterGroup

Yeni -IgnoreAffinityRule anahtar kuralı yoksayar ve kümelenmiş kaynak grubunu geçerli konumunda çevrimiçi duruma getirir. Bu cmdlet hakkında daha fazla bilgi için bkz. Start-ClusterGroup.

Örnek:

Start-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1

Benzdirme kuralı örnekleri

Benzite kuralları, kaynakları aynı sunucu, küme veya sitede tutan "birlikte" kurallardır. Benşim kurallarını ayarlamak için birkaç yaygın senaryo aşağıdadır.

1\. Senaryo

SQL Server VM'niz ve Web Sunucusu VM'niz olduğunu varsayalım. Bu iki VM'nin her zaman aynı sitede kalması gerekir, ancak sitedeki aynı küme düğümünde olması gerekmez. aşağıda gösterildiği gibi komutunu kullanmak SameFaultDomainmümkündür:

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

Bu kuralı ve nasıl yapılandırıldığına bakmak için cmdlet'ini Get-ClusterAffinityRule kullanarak çıkışı görün:

Get-ClusterAffinityRule -Name WebData -Cluster Cluster1

Name        RuleType          Groups        Enabled
----        ---------         ------        -------
WebData     SameFaultDomain   {SQL1, WEB1}     1

2\. Senaryo

Vm'lerin aynı küme düğümünde bulunması gerektiğini belirtme dışında yukarıdaki senaryoyu kullanalım. kullanarak SameNode, bunu aşağıdaki gibi ayarlayabilirsiniz:

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

Kuralı ve nasıl yapılandırıldığına bakmak için cmdlet'ini Get-ClusterAffinityRule kullanarak çıkışı görün:

Get-ClusterAffinityRule -Name WebData1 -Cluster Cluster1

Name    RuleType    Groups        Enabled
----    --------    ------        -------
DC      SameNode    {SQL1, WEB1}     1

Benzeşim karşıtı kural örnekleri

Benzeşim karşıtı kurallar, kaynakları ayıran ve bunları farklı sunuculara, kümelere veya sitelere yerleştiren "ayrı" kurallardır.

1\. Senaryo

Her birinde aynı Azure Stack HCI çoklu site kümesinde SQL Server çalışan iki VM'niz vardır. Her VM çok fazla bellek, CPU ve depolama kaynağı kullanır. İki düğüm aynı düğümdeyse, bellek, CPU ve depolama döngüleri için rekabet eden bir veya her ikisinde de performans sorunlarına neden olabilir. Kural türü olarak ile DifferentNode bir benzeşim karşıtı kural kullanıldığında, bu VM'ler her zaman farklı küme düğümlerinde kalır.

Bunun için örnek komutlar şöyle olabilir:

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

Kuralı ve nasıl yapılandırıldığına bakmak için cmdlet'ini Get-ClusterAffinityRule kullanarak çıkışı görün:

Get-ClusterAffinityRule -Name SQL -Cluster Cluster1

Name    RuleType        Groups        Enabled
----    -----------     -------       -------
SQL     DifferentNode   {SQL1, SQL2}     1

2\. Senaryo

İki site (hata etki alanları) içeren bir Azure Stack HCI esnetilmiş kümeniz olduğunu varsayalım. Ayrı sitelerde tutmak istediğiniz iki etki alanı denetleyiciniz var. Kural türü olarak ile DifferentFaultDomain bir benzeşim karşıtı kural kullanıldığında, bu etki alanı denetleyicileri her zaman farklı sitelerde kalır. Bunun için örnek komutlar şöyle olabilir:

New-ClusterAffinityRule -Name DC -Ruletype DifferentFaultDomain -Cluster Cluster1

Add-ClusterGroupToAffinityRule -Groups DC1,DC2 –Name DC -Cluster Cluster1

Set-ClusterAffinityRule -Name DC -Enabled 1 -Cluster Cluster1

Bu kuralı ve nasıl yapılandırıldığına bakmak için cmdlet'ini Get-ClusterAffinityRule kullanarak çıkışı görün:

Get-ClusterAffinityRule -Name DC -Cluster Cluster1

Name    RuleType                Groups        Enabled
----    --------                -------       -------
DC      DifferentFaultDomain    {DC1, DC2}       1

Birleştirilmiş kural örnekleri

Benzeşim ve benzeşim karşıtı kuralları birleştirerek, çok siteli bir kümede çeşitli VM birleşimlerini kolayca yapılandırabilirsiniz. Bu senaryoda, her sitede üç VM vardır: SQL Server (SQL), Web Server (WEB) ve etki alanı denetleyicisi (DC). Birleşimlerin her biri için, tüm bunları aynı sitede tutmak için ile SameFaultDomain benşim kurallarını kullanabilirsiniz. Ayrıca, her site için etki alanı denetleyicilerini benzeşim karşıtı kurallarla ayarlayabilir ve DifferentFaultDomain etki alanı denetleyicisi VM'lerini aşağıda gösterildiği gibi ayrı sitelerde tutabilirsiniz:

New-ClusterAffinityRule -Name Site1Trio -Ruletype SameFaultDomain -Cluster Cluster1

New-ClusterAffinityRule -Name Site2Trio -Ruletype SameFaultDomain -Cluster Cluster1

New-ClusterAffinityRule -Name TrioApart -Ruletype DifferentFaultDomain -Cluster Cluster1

Add-ClusterGroupToAffinityRule -Groups SQL1,WEB1,DC1 –Name Site1Trio -Cluster Cluster1

Add-ClusterGroupToAffinityRule -Groups SQL2,WEB2,DC2 –Name Site2Trio -Cluster Cluster1

Add-ClusterGroupToAffinityRule -Groups DC1,DC2 –Name TrioApart -Cluster Cluster1

Set-ClusterAffinityRule -Name Site1Trio -Enabled 1 -Cluster Cluster1

Set-ClusterAffinityRule -Name Site2Trio -Enabled 1 -Cluster Cluster1

Set-ClusterAffinityRule -Name TrioApart -Enabled 1 -Cluster Cluster1

Kuralları ve bunların nasıl yapılandırıldıklarını görmek için, cmdlet'ini Get-ClusterAffinityRule-Name anahtar olmadan kullanın; oluşturulan tüm kuralları ve bunların çıkışını görebilirsiniz.

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

Depolama benzitesi kuralları

Vm'yi ve VHDX'ini aynı küme düğümünde bir Küme Paylaşılan Birimi (CSV) üzerinde de tutabilirsiniz. Bu, CSV yeniden yönlendirmesinin oluşmasını engeller ve bu da vm'nin başlatılmasını veya durdurulmasını yavaşlatabilir. Daha önce birleştirilmiş benzeşim ve benzeşim karşıtı senaryoyu dikkate alarak, SQL VM'sini ve Küme Paylaşılan Birimi'ni aynı küme düğümünde tutabilirsiniz. Bunu yapmak için aşağıdaki komutları kullanın:

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

Bu kuralları ve bunların nasıl yapılandırıldıklarını görmek için -Name anahtarı olmadan cmdlet'ini kullanın Get-ClusterAffinityRule ve çıkışı görüntüleyin.

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

Sonraki adımlar

VM'lerinizi yönetmeyi öğrenin. Bkz. Windows Admin Center kullanarak Azure Stack HCI'de VM'leri yönetme.