Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a: Azure Local 2311.2 e posterior
Usando o Windows Admin Center ou o Windows PowerShell, você pode criar facilmente regras de afinidade e antiafinidade para máquinas virtuais (VMs) em sua instância Local do Azure.
Observação
A maneira recomendada de criar e gerenciar VMs no Azure Local é usar o do plano de controle do Azure Arc. No entanto, como a funcionalidade descrita neste artigo ainda não é fornecida pelo Azure Arc, você pode usar o Windows Admin Center ou o PowerShell, conforme descrito neste artigo. As VMs criadas dessa forma não são habilitadas pelo Azure Arc, têm capacidade de gerenciamento limitada do plano de controle do Azure Arc e menos Benefícios Híbridos do Azure, incluindo o uso do Azure Update Manager sem custo adicional.
Para obter mais informações, consulte Comparar as capacidades de gerenciamento de VMs no Azure Local e Operações com suporte para VMs locais do Azure.
A afinidade é uma regra que estabelece uma relação entre dois ou mais grupos de recursos ou funções, como VMs, para mantê-los juntos na mesma máquina, sistema ou site. A antiafinidade é o oposto, pois é usada para manter as VMs ou os grupos de recursos especificados separados uns dos outros, como dois controladores de domínio colocados em máquinas separadas ou em locais separados para recuperação de desastres.
As regras de afinidade e antiafinidade são usadas de forma semelhante à maneira como o Azure usa as Zonas de Disponibilidade. No Azure, você pode configurar as Zonas de Disponibilidade para manter as VMs em zonas separadas e distantes umas das outras ou na mesma zona entre si.
Ao usar regras de afinidade e antiafinidade, qualquer VM em cluster permaneceria na mesma máquina ou seria impedida de ficar junta na mesma máquina. Dessa forma, a única maneira de mover uma VM para fora de uma máquina seria fazê-lo manualmente. Você também pode manter as VMs juntas com o respectivo armazenamento, como o CSV (Volume Compartilhado Clusterizado) no qual o VHDX reside.
Como usar o Windows Admin Center
Você pode criar regras básicas de afinidade e antiafinidade usando o Windows Admin Center.
- Na página inicial do Windows Admin Center, em Todas as conexões, selecione a máquina ou o sistema para o qual você deseja criar a regra de VM.
- Em Ferramentas, selecione Configurações.
- Em Configurações, selecione Regras de afinidade e, em seguida, selecione Criar regra em Regras de afinidade.
- Em Nome da regra, insira um nome para sua regra.
- Em Tipo de regra, selecione Juntos (mesma máquina) ou Separados (máquinas diferentes) para colocar suas VMs na mesma máquina ou em máquinas diferentes.
- Em Aplica-se a, selecione as VMs às quais essa regra se aplica. Use o botão Adicionar para adicionar mais VMs à regra.
- Quando terminar, selecione Criar regra.
- Para excluir uma regra, selecione-a e selecione Excluir regra.
Usando o Windows PowerShell
Você pode criar regras mais complexas usando o Windows PowerShell do que usando o Windows Admin Center. Normalmente, você configura suas regras em um computador remoto, em vez de em uma máquina host em um sistema. Esse computador remoto é chamado de computador de gerenciamento.
Ao executar comandos do Windows PowerShell a partir de um computador de gerenciamento, inclua o parâmetro -Name
ou -Cluster
com o nome do sistema que você está gerenciando. Se aplicável, você também precisa especificar o nome de domínio totalmente qualificado (FQDN) ao usar o parâmetro -ComputerName
para uma máquina.
Novos cmdlets do PowerShell
Para criar regras de afinidade para clusters, use os seguintes novos cmdlets do PowerShell:
New-ClusterAffinityRule
O cmdlet New-ClusterAffinityRule
é usado para criar novas regras. Com esse comando, você especificaria o nome da regra e o tipo de regra, onde:
-Name
é o nome da regra
Valores -RuleType
são SameFaultDomain
| SameNode
| DifferentFaultDomain
| DifferentNode
Exemplo:
New-ClusterAffinityRule -Name Rule1 -RuleType SameFaultDomain
Set-ClusterAffinityRule
O cmdlet Set-ClusterAffinityRule
é usado para habilitar ou desabilitar uma regra, onde:
-Name
é o nome da regra a ser habilitada ou desabilitada
-Enabled
|
Disabled
habilita ou desabilita a regra
Exemplo:
Set-ClusterAffinityRule -Name Rule1 -Enabled
Get-ClusterAffinityRule
O cmdlet Get-ClusterAffinityRule
é usado para exibir a regra especificada e o tipo dela. Se -Name
não for especificado, ele listará todas as regras.
Exemplo:
Get-ClusterAffinityRule -Name Rule1
Add-ClusterGroupToAffinityRule
O cmdlet Add-ClusterGroupToAffinityRule
é usado para adicionar uma função de VM ou nome de grupo a uma regra de afinidade específica, onde:
-Groups
é o nome do grupo ou função a ser adicionado à regra.
-Name
é o nome da regra a ser adicionada.
Exemplo:
Add-ClusterGroupToAffinityRule -Groups Group1 -Name Rule1
Add-ClusterSharedVolumeToAffinityRule
O Add-ClusterSharedVolumeToAffinityRule
permite que suas VMs permaneçam juntas com o Volume Compartilhado do Cluster no qual o VHDX reside, onde:
-ClusterSharedVolumes
é o disco CSV que você deseja adicionar à regra
-Name
é o nome da regra a ser adicionada a
Exemplo:
Add-ClusterSharedVolumeToAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1
Remove-ClusterAffinityRule
O Remove-ClusterAffinityRule
exclui a regra especificada, onde -Name
é o nome da regra.
Exemplo:
Remove-ClusterAffinityRule -Name Rule1
Remove-ClusterGroupFromAffinityRule
O Remove-ClusterGroupFromAffinityRule
remove um grupo ou função de VM de uma regra específica, mas não desabilita nem exclui a regra, onde:
-Name
é o nome da regra
-Groups
são os grupos ou funções que você deseja remover da regra
Exemplo:
Remove-ClusterGroupFromAffinityRule -Name Rule1 -Groups Group1
Remove-ClusterSharedVolumeFromAffinityRule
O cmdlet Remove-ClusterSharedVolumeFromAffinityRule
é usado para remover os Volumes Compartilhados de Cluster de uma regra específica, mas não desabilita nem exclui a regra, onde:
-ClusterSharedVolumes
é o disco CSV que você deseja remover da regra.
-Name
é o nome da regra a ser adicionada.
Exemplo:
Remove-ClusterSharedVolumeFromAffinityRule -ClusterSharedVolumes CSV1 -Name Rule1
cmdlets do PowerShell existentes
Com o advento dos novos cmdlets, também adicionamos novos comutadores a alguns cmdlets existentes.
Move-ClusterGroup
o novo comutador -IgnoreAffinityRule
ignora a regra e move o grupo de recursos do cluster para outra máquina. Para obter mais informações sobre esse cmdlet, consulte Move-ClusterGroup.
Exemplo:
Move-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1
Observação
Se uma regra de movimentação for válida (suportada), todos os grupos e funções afetados também serão movimentados. Se uma movimentação de VM violar conscientemente uma regra, mas ela for necessária em uma base temporária única, use o comutador -IgnoreAffinityRule
para permitir que a movimentação ocorra. Nesse caso, será exibido um aviso de violação para a VM. Em seguida, você pode habilitar a regra novamente, conforme necessário.
Start-ClusterGroup
A nova opção -IgnoreAffinityRule
ignora a regra e coloca o grupo de recursos de cluster online no respectivo local atual. Para obter mais informações sobre esse cmdlet, consulte Start-ClusterGroup.
Exemplo:
Start-ClusterGroup -IgnoreAffinityRule -Cluster Cluster1
Exemplos de regras de afinidade
As regras de afinidade são regras "em conjunto" que mantêm os recursos na mesma máquina, sistema ou site. Aqui estão alguns cenários comuns para a configuração de regras de afinidade.
Cenário 1
Suponha que você tenha uma VM do SQL Server e uma VM do Web Server. Essas duas VMs precisam permanecer sempre no mesmo site, mas não precisam necessariamente estar na mesma máquina. Ao usar SameFaultDomain
, isso é possível, conforme mostrado:
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
Para ver essa regra e como ela está configurada, use o cmdlet Get-ClusterAffinityRule
para consultar a saída:
Get-ClusterAffinityRule -Name WebData -Cluster Cluster1
Name RuleType Groups Enabled
---- --------- ------ -------
WebData SameFaultDomain {SQL1, WEB1} 1
Cenário 2
Vamos usar o mesmo cenário, mas especificando que as VMs devem residir na mesma máquina. Ao usar SameNode
, defina-o da seguinte forma:
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
Para ver a regra e como ela está configurada, use o cmdlet Get-ClusterAffinityRule
para consultar a saída:
Get-ClusterAffinityRule -Name WebData1 -Cluster Cluster1
Name RuleType Groups Enabled
---- -------- ------ -------
DC SameNode {SQL1, WEB1} 1
Exemplos de regras de antiafinidade
As regras de anti-afinidade são regras "separadas" que separam os recursos e os colocam em máquinas, sistemas ou sites diferentes.
Cenário 1
Você tem duas VMs, cada uma executando o SQL Server no mesmo sistema local do Azure em vários locais. Cada VM utiliza muitos recursos de memória, CPU e armazenamento. Se os dois acabarem no mesmo computador, isso pode causar problemas de performance com um ou ambos, pois eles competem por memória, CPU e ciclos de armazenamento. Ao usar uma regra de antiafinidade com DifferentNode
como o tipo de regra, essas VMs sempre ficarão em máquinas diferentes.
Os comandos de exemplo seriam:
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
Para ver a regra e como ela está configurada, use o cmdlet Get-ClusterAffinityRule
para consultar a saída:
Get-ClusterAffinityRule -Name SQL -Cluster Cluster1
Name RuleType Groups Enabled
---- ----------- ------- -------
SQL DifferentNode {SQL1, SQL2} 1
Regras de afinidade de armazenamento
Você também pode manter uma VM e seu VHDX em um CSV ( Volume Compartilhado de Cluster) na mesma máquina. Isso evitaria que o redirecionamento de CSV ocorresse, o que pode tornar mais lenta a inicialização ou a parada de uma VM. Levando em conta o cenário combinado de afinidade e antiafinidade anteriormente, você pode manter a VM do SQL e o Volume Compartilhado do Cluster na mesma máquina. Para fazer isso, use os seguintes comandos:
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
Para ver essas regras e como elas estão configuradas, use o cmdlet Get-ClusterAffinityRule
sem o comutador -Name
e exiba a saída.
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
Próximas etapas
Saiba como gerenciar suas VMs. Consulte Gerenciar VMs no Local do Azure usando o Windows Admin Center.