Het beheer van Netwerk-ATC

Van toepassing op: Azure Stack HCI, versies 22H2 en 21H2

In dit artikel wordt beschreven hoe u Network ATC kunt beheren nadat deze is geïmplementeerd. Netwerk-ATC vereenvoudigt de implementatie en het netwerkconfiguratiebeheer voor Azure Stack HCI-clusters. U gebruikt Windows PowerShell om netwerk-ATC te beheren.

Een serverknooppunt toevoegen

U kunt knooppunten toevoegen aan een cluster. Elk knooppunt in het cluster ontvangt dezelfde intentie, waardoor de betrouwbaarheid van het cluster wordt verbeterd. Het nieuwe serverknooppunt moet voldoen aan alle vereisten die worden vermeld in de sectie Vereisten en best practices van Hostnetwerken met Netwerk ATC.

In deze taak voegt u extra knooppunten toe aan het cluster en ziet u hoe een consistente netwerkconfiguratie wordt afgedwongen voor alle knooppunten in het cluster.

  1. Gebruik de Add-ClusterNode cmdlet om de extra (niet geconfigureerde) knooppunten toe te voegen aan het cluster. U hebt op dit moment alleen beheertoegang tot het cluster nodig. Elk knooppunt in het cluster moet alle pc's dezelfde naam hebben.

    Add-ClusterNode -Cluster HCI01
    Get-ClusterNode
    
  2. Controleer de status van alle clusterknooppunten. U moet de -ClusterName parameter gebruiken in versie 21H2. Netwerk-ATC detecteert automatisch de clusternaam van versie 22H2 en hoger.

    Get-NetIntentStatus -ClusterName HCI01
    

    Notitie

    Als op een van de servers die u aan het cluster toevoegt, een netwerkadapter ontbreekt die aanwezig is op de andere servers, Get-NetIntentStatus meldt u de fout PhysicalAdapterNotFound.

  3. Controleer de inrichtingsstatus van alle knooppunten met behulp van Get-NetIntentStatus. De cmdlet rapporteert de configuratie voor beide knooppunten. Dit kan even lang duren als het oorspronkelijke knooppunt.

    Get-NetIntentStatus -ClusterName HCI01
    

    U kunt ook meerdere knooppunten tegelijk aan het cluster toevoegen.

Standaard-VLAN's wijzigen voor opslag- of beheersystemen

U kunt standaard-VLAN's gebruiken die zijn opgegeven door Network ATC of waarden gebruiken die specifiek zijn voor uw omgeving. Hiervoor gebruikt u de parameter -ManagementVLAN en -StorageVLAN's in Add-NetIntent.

Add-NetIntent -Name MyIntent -ClusterName HCI01 -StorageVLANs 101, 102 -ManagementVLAN 10

Netwerkadapters toevoegen aan of verwijderen uit een intentie

Met deze taak kunt u de netwerkadapters bijwerken die aan een intentie zijn toegewezen. Als er wijzigingen zijn in de fysieke adapters in uw cluster, kunt u gebruiken Update-NetIntentAdapter om de relevante intenties bij te werken.

In dit voorbeeld hebben we twee nieuwe adapters geïnstalleerd, pNIC03 en pNIC04, en we willen dat deze worden gebruikt in onze intentie met de naam 'Cluster_Compute'.

  1. Voer op een van de clusterknooppunten uit Get-NetAdapter om te controleren of beide adapters aanwezig zijn en de status 'Up' op elk clusterknooppunt te rapporteren.

    Get-NetAdapter -Name pNIC03, pNIC04 -CimSession (Get-ClusterNode).Name | Select Name, PSComputerName
    
  2. Voer de volgende opdracht uit om de intentie bij te werken met de oude en nieuwe netwerkadapters.

     Update-NetIntentAdapter -Name Cluster_Compute -AdapterName pNIC01,pNIC02,pNIC03,pNIC04 -ClusterName HCI01
    
  3. Controleer of de netadapters zijn toegevoegd aan de intentie.

        Get-NetIntent -Name Cluster_Compute -ClusterName HCI01
    

Globale onderdrukkingen en clusternetwerkinstellingen

Van toepassing op Azure Stack HCI, versie 22H2 en hoger.

Globale onderdrukkingen en clusternetwerkinstellingen is een nieuwe functie die Network ATC introduceert in versie 22H2 (en latere versies). Netwerk-ATC bestaat voornamelijk uit twee soorten globale onderdrukkingen: proxyconfiguraties en clusternetwerkfuncties.

Clusternetwerkfuncties

In deze sectie bekijken we de set nieuwe clusternetwerkfuncties die we met de 22H2-release uitbrengen. Met de nieuwe clusternetwerkfuncties kunt u de naamgeving van clusternetwerken inschakelen en optimaliseren, clusternetwerken beheren door prestatieopties, bandbreedtelimieten en livemigraties te beheren.

Naamgeving van clusternetwerk

Beschrijving: bij failoverclusters worden standaard altijd unieke subnetten als volgt aangeduid: 'Clusternetwerk 1', 'Clusternetwerk 2', enzovoort. Dit is niet verbonden met het werkelijke gebruik van het netwerk, omdat clustering niet weet hoe u de netwerken wilt gebruiken– tot nu toe!

Zodra u uw configuratie hebt gedefinieerd via Netwerk-ATC, begrijpen we nu hoe de subnetten worden gebruikt en kunnen we de clusternetwerken een geschiktere naam geven. We weten bijvoorbeeld welk subnet wordt gebruikt voor beheer, opslagnetwerk 1, opslagnetwerk 2 (enzovoort, indien van toepassing). Als gevolg hiervan kunnen we de netwerken contextafhankelijker benoemen.

In de volgende schermopname ziet u dat de opslagintentie is toegepast op deze set adapters. Er wordt een ander onbekend clusternetwerk weergegeven dat de beheerder mogelijk wil onderzoeken.

Schermopname van clusternetwerkselectie.

Selectie van livemigratienetwerk

Met deze waarde wordt de netwerkselectielogica voor livemigratieclusters op basis van intenties in- of uitgeschakeld. Dit is standaard ingeschakeld ($true) en resulteert in clusternetwerken die worden geselecteerd op basis van de verzonden intentiegegevens. Als selectie van livemigratienetwerk is uitgeschakeld, kan de gebruiker een livemigratienetwerk instellen en wordt het standaardgedrag teruggezet naar wat u zou verwachten als er geen netwerk-ATC is.

Migratie van virtuele machines inschakelen: prestatieselectie

Met deze waarde wordt de op intenties gebaseerde selectie van livemigratietransporten van virtuele machines ingeschakeld of uitgeschakeld. Dit is standaard ingeschakeld en resulteert erin dat het systeem automatisch het beste livemigratietransport bepaalt, bijvoorbeeld: SMB, compressie, TCP.

Indien uitgeschakeld:

  • De selectie voor livemigratietransport maakt gebruik van het transport dat is opgegeven in de overschrijvingswaarde VirtualMachineMigrationPerformanceOption.
  • Als de overschrijvingswaarde VirtualMachineMigrationPerformanceOption niet is opgegeven, wordt netwerk-ATC teruggezet naar het gedrag wanneer netwerk-ATC niet aanwezig was.
  • Als null, maar VirtualMachineMigrationPerformanceOption is geconfigureerd, configureert u deze optie om $false en gebruikt u de optie die is opgegeven in de overschrijving VirtualMachineMigrationPerformanceOption
Optie voor migratieprestaties van virtuele machines

Netwerk-ATC configureert het livemigratietransport naar TCPIP, compressie of SMB. Indien null, berekent het systeem de beste optie op basis van de systeemconfiguratie en mogelijkheden.

Maximum aantal gelijktijdige migraties van virtuele machines

Netwerk-ATC stelt het standaardaantal gelijktijdige migraties van virtuele machines in op één. Het bereik van mogelijke, toegestane waarden voor deze eigenschap is één tot en met tien.

Maximale bandbreedte voor SMB-migratie

Met deze waarde wordt een specifieke bandbreedtelimiet (in Gbps) afgedwongen voor SMB-vervoerd livemigratieverkeer om te voorkomen dat de SMB-verkeersklasse wordt gebruikt. Deze waarde is alleen bruikbaar als het livemigratietransport SMB is. De standaardwaarde wordt berekend.

Instellingen voor clusternetwerk aanpassen

Clusternetwerkfuncties werken via de gedefinieerde standaardinstellingen. Omdat het uitschakelen van clusternetwerkfuncties u niet in een niet-ondersteund scenario terechtkomt, heeft netwerk-ATC een optie voor een globaloverride. U kunt de algemene onderdrukking gebruiken om eigenschappen aan te passen en eigenschappen van clusternetwerkfuncties aan te passen aan uw behoeften.

Een GlobalOverride toevoegen met Network ATC:

$clusterOverride = New-NetIntentGlobalClusterOverrides

De variabele clusterOverride heeft de volgende eigenschappen:

Schermopname van Cluster Override Object.

Zodra u een eigenschap voor de onderdrukking hebt ingesteld, kunt u deze toevoegen als een GlobalOverride voor uw cluster met de volgende opdracht:

Set-NetIntent -GlobalClusterOverrides $clusterOverride

En om te controleren of de implementatie van uw cluster is geslaagdOverride-uitvoering:

Get-NetIntentStatus -Globaloverrides

Voer de volgende opdracht uit om GlobalClusterOverride te verwijderen:

Remove-NetIntent -GlobalOverrides $clusterOverride

Proxyconfiguraties

Proxy is in tegenstelling tot de bestaande ATC-onderdrukkingen omdat deze niet is gekoppeld aan een specifieke intentie. In feite ondersteunen we proxyconfiguratie wanneer er geen intenties zijn. We ondersteunen dit scenario het beste door nieuwe algemene onderdrukkingsparameters te implementeren op Add/Set/Get-NetIntent, vergelijkbaar met clusternetwerkfuncties.

De New-NetIntentGlobalProxyOverrides opdracht wordt gebruikt om een onderdrukkingsobject te maken dat vergelijkbaar is met bestaande QoS-, RSS- en SwitchConfig-onderdrukkingen. De opdracht heeft twee parametersets:

Standaardparameterset

ProxyServer: de parameter ProxyServer gebruikt tekenreeksen als invoer, die de URL vertegenwoordigen van de proxyserver die moet worden gebruikt voor HTTPS-verkeer. ProxyServer is een vereiste parameter bij het instellen van proxy.

ProxyBypass: de parameter ProxyBypass gebruikt een lijst met sites die moeten worden bezocht door de proxy te omzeilen. Als u alle hosts met korte namen wilt overslaan, gebruikt u local.

AutoDetectie: AutoDetectie is een true of false parameter die aangeeft of WPAD (Web Proxy Auto-Discovery) moet worden ingeschakeld.

AutoDetect-parameterset:

AutoConfigUrl: De parameter AutoConfigUrl gebruikt een tekenreeks met de URL van de proxyserver die moet worden gebruikt voor http- en/of https-verkeer als invoer. Gebruik voor beide verkeersklassen een puntkomma om van elkaar te scheiden. Dit is een vereiste parameter.

AutoDetectie: vergelijkbaar met de parameter AutoDetect hierboven, is dit een parameter waar of onwaar die bepaalt of WPAD (Web Proxy Auto-Discovery) moet worden ingeschakeld.

Proxy instellen

U kunt uw proxyconfiguraties op de volgende manieren instellen:

$ProxyOverride = New-NetIntentGlobalProxyOverrides -ProxyServer https://itg.contoso.com:3128 -ProxyBypass *.foo.com

Met behulp van de AutoConfigURL switch kunt u de proxyconfiguratie op de volgende manier instellen:

$ProxyOverride = New-NetIntentGlobalProxyOverrides -AutoConfigUrl https://itg.contoso.com

U kunt als volgt een GlobalProxyOverride voor uw cluster toevoegen:

Set-NetIntent -GlobalProxyOverride $ProxyOverride

Ga als volgt te werk om een GlobalProxyOverride voor uw cluster te verwijderen:

Remove-NetIntent -GlobalOverride $ProxyOverride

Als u toegang wilt krijgen tot een algemene onderdrukking, proxy of cluster, kunt u de volgende opdrachten uitvoeren:

$Obj1 = Get-NetIntent -GlobalOverride
$Obj1

Meer specifiek kunt u toegang krijgen tot respectievelijk de globale overschrijvingen van proxy en cluster door hun respectieve parameters aan te roepen voor $Obj1:

$Obj1.ProxyOverride
$Obj1.ClusterOverride

Netwerkinstellingen bijwerken of overschrijven

Met deze taak kunt u de standaardconfiguratie overschrijven die al is geïmplementeerd. In dit voorbeeld wordt de standaardbandbreedtereservering voor SMB Direct gewijzigd.

Belangrijk

We raden u aan de standaardinstellingen te gebruiken, die zijn gebaseerd op de best practices van Microsoft.

  1. Een lijst met mogelijke onderdrukkings-cmdlets ophalen. We gebruiken jokertekens om de beschikbare opties te bekijken:

    Get-Command -Noun NetIntent*Over* -Module NetworkATC
    
  2. Maak een onderdrukkingsobject voor de DCB QoS-configuratie (Quality of Service):

    $QosOverride = New-NetIntentQosPolicyOverrides
    $QosOverride
    
  3. Wijzig het bandbreedtepercentage voor SMB Direct:

    $QosOverride.BandwidthPercentage_SMB = 25
    $QosOverride
    

    Notitie

    Waarden worden alleen weergegeven voor de eigenschappen die u overschrijft.

  4. Verzend de intentieaanvraag met de overschrijving:

    Set-NetIntent -Name Cluster_ComputeStorage -QosPolicyOverrides $QosOverride
    
  5. Wacht tot de inrichtingsstatus is voltooid:

    Get-NetIntentStatus -Name Cluster_ComputeStorage | Format-Table IntentName, Host, ProvisioningStatus, ConfigurationStatus
    
  6. Controleer of de onderdrukking juist is ingesteld op alle clusterknooppunten. In het voorbeeld is de SMB_Direct verkeersklasse overschreven met een bandbreedtepercentage van 25%:

    Get-NetQosTrafficClass -Cimsession (Get-ClusterNode).Name | Select PSComputerName, Name, Priority, Bandwidth
    

Netwerk-ATC testen in VM's

Het uitvoeren van Azure Stack HCI in vm's is handig voor testomgevingen. Om dit te doen, voegt u een overschrijving van de adaptereigenschap toe aan uw intentie waarmee de eigenschap NetworkDirect-adapter wordt uitgeschakeld:

$AdapterOverride = New-NetIntentAdapterPropertyOverrides
$AdapterOverride.NetworkDirect = 0
Add-NetIntent -Name MyIntent -AdapterName vmNIC01, vmNIC02 -Management -Compute -Storage -AdapterPropertyOverrides $AdapterOverride

Notitie

Zorg ervoor dat u meerdere virtuele CPU's op elke VM hebt.

Een intentie verwijderen

Soms wilt u mogelijk alle intenties verwijderen en opnieuw beginnen, bijvoorbeeld om een andere configuratie te testen. Hoewel u intenties kunt verwijderen met behulp van de cmdlet Remove-NetIntent, worden de virtuele switches en DCB/NetQoS-configuraties die voor de intenties zijn gemaakt, niet opgeschoond. Netwerk-ATC maakt een punt van het niet vernietigen van dingen op uw systeem, wat meestal een goede zaak is, maar het betekent wel dat u een aantal handmatige stappen moet uitvoeren om opnieuw te beginnen.

Als u alle netwerkintenties wilt verwijderen en de virtuele switches en NetQoS-configuraties wilt verwijderen die door Network ATC voor deze intenties zijn gemaakt, voert u het volgende script uit in een PowerShell-sessie die lokaal wordt uitgevoerd op een van de servers in het cluster (maakt niet uit welke).

$clusname = Get-Cluster
$clusternodes = Get-ClusterNode    
$intents = Get-NetIntent -ClusterName $clusname

foreach ($intent in $intents)
{
    Remove-NetIntent -Name $intent.IntentName -ClusterName $clusname
}

foreach ($intent in $intents)
{
    foreach ($clusternode in $clusternodes)
    {
        Remove-VMSwitch -Name "*$($intent.IntentName)*" -ComputerName $clusternode -ErrorAction SilentlyContinue -Force
    }
}

foreach ($clusternode in $clusternodes)
{    
    New-CimSession -ComputerName $clusternode -Name $clusternode
    $CimSession = Get-CimSession
    Get-NetQosTrafficClass -CimSession $CimSession | Remove-NetQosTrafficClass -CimSession $CimSession
    Get-NetQosPolicy -CimSession $CimSession | Remove-NetQosPolicy -Confirm:$false -CimSession $CimSession
    Get-NetQosFlowControl -CimSession $CimSession | Disable-NetQosFlowControl -CimSession $CimSession
    Get-CimSession | Remove-CimSession
}

Als u de configuratie voor een implementatie per knooppunt wilt verwijderen, kopieert en plakt u de volgende opdrachten op elk knooppunt om alle bestaande intenties en de bijbehorende vSwitch te verwijderen:

$intents = Get-NetIntent
foreach ($intent in $intents)
{
    Remove-NetIntent -Name $intent.IntentName
    Remove-VMSwitch -Name "*$($intent.IntentName)*" -ErrorAction SilentlyContinue -Force
}

Get-NetQosTrafficClass | Remove-NetQosTrafficClass
Get-NetQosPolicy | Remove-NetQosPolicy -Confirm:$false
Get-NetQosFlowControl | Disable-NetQosFlowControl

Taken na implementatie

De taken die moeten worden voltooid na een netwerk-ATC-implementatie zijn afhankelijk van de gebruikte Azure Stack HCI-versie. Voor Azure Stack HCI 21H2-clusters:

  • IP-adressen toevoegen aan opslagadapters: Gebruik DHCP op de opslag-VLAN's of stel statische IP-adressen in met behulp van de netIPAdress-cmdlet. U kunt geen APIPA-adressen (Automatische privé-IP-adressering) gebruiken die zijn opgegeven aan adapters die geen adres van een DHCP-server kunnen ophalen.

  • SMB-bandbreedtelimieten instellen: Als livemigratie gebruikmaakt van SMB Direct (RDMA), configureert u een bandbreedtelimiet om ervoor te zorgen dat livemigratie niet alle bandbreedte verbruikt die wordt gebruikt door Opslagruimten Direct en failoverclustering.

  • Configuratie van stretched cluster: Als u Stretch S2D wilt toevoegen aan uw door Network ATC beheerde systeem, moet u handmatig de juiste configuratie (inclusief vNIC's, enzovoort) toevoegen nadat Network ATC de opgegeven intentie heeft geïmplementeerd.

Automatische IP-adressering voor opslagadapters, SMB-bandbreedtelimieten en Stretch-configuraties kunnen nu worden geïmplementeerd met Network ATC in Azure Stack HCI 22H2. Zie voor meer informatie

Automatisch herstel valideren

Netwerk-ATC zorgt ervoor dat de geïmplementeerde configuratie hetzelfde blijft op alle clusterknooppunten. In deze optionele sectie wijzigen we onze configuratie (zonder onderdrukking) door een onbedoelde configuratiewijziging na te bootsen en kijken we hoe de betrouwbaarheid van het systeem wordt verbeterd door de onjuist geconfigureerde eigenschap te herstellen.

  1. Controleer de bestaande MTU-waarde (JumboPacket) van de adapter:

    Get-NetAdapterAdvancedProperty -Name pNIC01, pNIC02, vSMB* -RegistryKeyword *JumboPacket -Cimsession (Get-ClusterNode).Name
    
  2. Wijzig een van de MTU's van de fysieke adapter zonder een overschrijving op te geven. Hierdoor wordt een onbedoelde wijziging of 'configuratiedrift' geëmuleerd, die moet worden hersteld.

    Set-NetAdapterAdvancedProperty -Name pNIC01 -RegistryKeyword *JumboPacket -RegistryValue 4088
    
  3. Controleer of de bestaande MTU-waarde (JumboPacket) van de adapter is gewijzigd:

    Get-NetAdapterAdvancedProperty -Name pNIC01, pNIC02, vSMB* -RegistryKeyword *JumboPacket -Cimsession (Get-ClusterNode).Name
    
  4. Voer de configuratie opnieuw uit. Deze stap wordt alleen uitgevoerd om het herstel te versnellen. Netwerk-ATC herstelt deze configuratie automatisch.

    Set-NetIntentRetryState -ClusterName HCI01 -Name Cluster_ComputeStorage -NodeName Node01
    
  5. Controleer of de consistentiecontrole is voltooid:

    Get-NetIntentStatus -ClusterName HCI01 -Name Cluster_ComputeStorage
    
  6. Controleer of de MTU-waarde (JumboPacket) van de adapter is geretourneerd naar de verwachte waarde:

    Get-NetAdapterAdvancedProperty -Name pNIC01, pNIC02, vSMB* -RegistryKeyword *JumboPacket -Cimsession (Get-ClusterNode).Name
    

Zie de demo network ATC voor meer validatievoorbeelden.

Volgende stappen