Utföra läs- och skrivkommandon

Med funktionen Lässkrivning (RW) kan du fjärr ändra enhetskonfigurationer utan att komma åt nätverksinfrastrukturenheten. Använd RW-konfigurationskommandot på enhetsnivå i nätverksinfrastrukturen. Eftersom konfigurationskommandot finns kvar på enhetsnivå måste du tillämpa konfigurationen på varje enhet i infrastrukturresurserna för att kunna konfigurera på alla enheter.

Om du kör RW-kommandot bevaras konfigurationen mot ändringar som görs via kommandoradsgränssnittet (CLI) eller portalen. Om du vill introducera flera konfigurationer via RW-API:et lägger du till nya kommandon i det befintliga RW-kommandot. När du till exempel har ändrat flera enhetsgränssnitt inkluderar du den tidigare konfigurationen med eventuella nya ändringar för att förhindra överskrivning.

Återställ endast RW-konfigurationen under ett uppgraderingsscenario. Efter uppgraderingen måste du använda RW-ändringarna igen om det behövs. Följande exempel vägleder dig genom RW API-processen steg för steg.

Förutsättningar

Säkerställ att Nexus Network Fabric har konfigurerats framgångsrikt.

Procedure

När du kör ett RW-konfigurationskommando och gör ändringar i enheten flyttas enhetens konfigurationstillstånd till Uppskjuten kontroll. Det här tillståndet anger att RW-konfigurationen överfördes till den enheten. När den tillämpade RW-konfigurationen är omvänd återgår enhetens konfiguration till dess ursprungliga slutförda tillstånd.

Välj nätverksenhet

Logga in på Azure-portalen

Få åtkomst till nätverksenheterna:

När du har loggat in använder du sökfältet högst upp för att söka Network Devices efter eller navigera till Alla tjänster och hitta nätverksenheter under kategorin Nätverk.

Klicka på Nätverksenheter för att öppna listan över nätverksenheter i din prenumeration.

Välj nätverksenheten:

I listan över nätverksenheter letar du upp och klickar på den nätverksenhet som du vill konfigurera. Detta tar dig till informationssidan för den valda nätverksenheten.

Anteckna resursnamnet och resursgruppen för den här nätverksenheterna, eftersom du behöver dessa för CLI-kommandot.

Or

Om du vill hämta namnet på resursen klickar du på JSON-vyn (finns i avsnittet Egenskaper eller Översikt) som visar de detaljerade egenskaperna för enheten, inklusive resursnamnet.

Skärmbild av Azure-portalen som visar översikten över nätverksenheten.

Examples

Följande avsnitt innehåller exempel på RW-kommandon som kan användas för att ändra enhetens konfiguration. Exemplen använder Ethernet-gränssnitten 1, 2 och 3 för att visa hur du justerar gränssnittsnamnet och gör att du kan se resultatet av dessa ändringar.

Ögonblicksbild av Network Fabric-enheten innan du gör ändringar i konfigurationen med RW API

show interfaces description  
|Interface  |Status  |Protocol  |Description  |
|---------|---------|---------|---------|
|Et1      | admin down        | down          | **"AR-Mgmt2:Et1 to Not-Connected"**          |
|Et2      | admin down        | down          | **"AR-Mgmt2:Et2 to Not-Connected"**         |
|Et3      | admin down        | down          | **"AR-Mgmt2:Et3 to Not-Connected"**         |
|Et4      | admin down        | down          | **"AR-Mgmt2:Et4 to Not-Connected"**       |

Ändra beskrivningen för ett gränssnitt

Exemplet visar hur du ändrar enhetens gränssnittsbeskrivning till RW-test.

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 1\n description RW-test"
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command "interface Ethernet 1\n description RW-test" Anger det RW-kommando som ska köras på nätverksenheten. I det här exemplet anger den beskrivningen av Ethernet-gränssnittet 1 till "RW-test".

Förväntat resultat:

{}

Kommando med --no-wait--debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 1\n description RW-test" **--no-wait --debug**
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command "interface Ethernet 1\n description RW-test" Anger det RW-kommando som ska köras på nätverksenheten. I det här exemplet anger den beskrivningen av Ethernet-gränssnittet 1 till "RW-test".
--no-wait Anger att kommandot ska köras asynkront utan att vänta på att åtgärden ska slutföras.
--debug Flagga aktivering av felsökningsläge med ytterligare information om körningen av kommandot i felsökningssyfte.

Förväntade trunkerade utdata:

cli.knack.cli: __init__ debug log: 
cli.azure.cli.core.sdk.policies:     'Azure-AsyncOperation': 'https://eastus.management.azure.com/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2*BF225A07F7F4850DA565ABE0036AB?api-version=2022-01-15-privatepreview&t=638479088323069839&c= 
telemetry.main: Begin creating telemetry upload process. 
telemetry.process: Return from creating process 
telemetry.main: Finish creating telemetry upload process. 

Du kan programmatiskt kontrollera statusen för åtgärden genom att köra följande kommando:

az rest -m get -u "<Azure-AsyncOperation-endpoint url>"

Exempel på den Azure-AsyncOperation slutpunkts-URL som extraherats från de trunkerade utdata.

<https://eastus.management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx>

Statusen bör ange om API:et lyckades eller misslyckades.

Förväntade utdata:

{ 
  "id": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/ResourceName", 
  "location": "eastus", 
  "name": "ResourceName", 
  "properties": { 
    "administrativeState": "Enabled", 
    "configurationState": "DeferredControl", 
    "hostName": "<Hostname>", 
    "networkDeviceRole": "Management", 
    "networkDeviceSku": "DefaultSku", 
    "networkRackId": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkRacks/NFResourceName", 
    "provisioningState": "Succeeded", 
    "serialNumber": "Arista;CCS-720DT-XXXX;11.07;WTW2248XXXX", 
    "version": "3.0.0" 
  }, 
  "systemData": { 
    "createdAt": "2024-XX-XXT13:41:13.8558264Z", 
    "createdBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "lastModifiedByType": "Application" 
  }, 
  "type": "microsoft.managednetworkfabric/networkdevices" 
}

När RW-konfigurationen lyckas flyttas enhetens konfigurationstillstånd till ett uppskjutet kontrolltillstånd . Ingen tillståndsändring sker om konfigurationen misslyckas.

show interfaces description  
|Interface  |Status  |Protocol  |Description  |
|---------|---------|---------|---------|
|Et1      | admin down        | down          | **RW-test1**         |
|Et2      | admin down        | down          | "AR-Mgmt2:Et2 to Not-Connected"        |
|Et3      | admin down        | down          | "AR-Mgmt2:Et3 to Not-Connected"          |
|Et4      | admin down        | down          | "AR-Mgmt2:Et4 to Not-Connected"     |

Ändra tre av gränssnittets beskrivningar

Det här exemplet visar hur du ändrar tre olika gränssnitt på en enhetsbeskrivning till RW-test1, RW-test2, RW-test3.

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 1\n description RW-test1\n interface Ethernet 2\n description RW-test2\n interface Ethernet 3\n description RW-test3"

Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name <ResourceName> Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group <ResourceGroupName> Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command "interface Ethernet 1\n description RW-test1\n interface Ethernet 2\n description RW-test2\n interface Ethernet 3\n description RW-test3" Anger de RW-kommandon som ska köras på nätverksenheten. Varje gränssnittskommando anger beskrivningen för det angivna Ethernet-gränssnittet.

Förväntat resultat:

{}

Kommando med --no-wait--debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 1\n description RW-test1\n interface Ethernet 2\n description RW-test2\n interface Ethernet 3\n description RW-test3" --no-wait --debug
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name <ResourceName> Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group <ResourceGroupName> Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command "interface Ethernet 1\n description RW-test1\n interface Ethernet 2\n description RW-test2\n interface Ethernet 3\n description RW-test3" Anger de RW-kommandon som ska köras på nätverksenheten. Varje gränssnittskommando anger beskrivningen för det angivna Ethernet-gränssnittet.
--no-wait Anger att kommandot ska köras asynkront utan att vänta på att åtgärden ska slutföras.
--debug Flagga aktivering av felsökningsläge med ytterligare information om körningen av kommandot i felsökningssyfte.

Förväntade trunkerade utdata:

cli.knack.cli: Command arguments: \['networkfabric', 'device', 'run-rw', '--resource-name', 'nffab100g-5-3-AggrRack-MgmtSwitch2', '--resource-group', 'Fab100GLabNF-5-3', '--rw-command', 'interface Ethernet 1\\\\n description RW-test1\\\\n interface Ethernet 2\\\\n description RW-test2\\\\n interface Ethernet 3\\\\n description RW-test3', '--debug'\]
cli.knack.cli: \_\_init\_\_ debug log:
cli.azure.cli.core.sdk.policies: 'Azure-AsyncOperation': 'https://eastus.management.azure.com/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2\*BF225A07F7F4850DA565ABE0036AB?api-version=2022-01-15-privatepreview&t=638479088323069839&c=
telemetry.main: Begin creating telemetry upload process.
telemetry.process: Creating upload process: "C:\\Program Files (x86)\\Microsoft SDKs\\Azure\\CLI2\\python.exe C:\\Program Files (x86)\\Microsoft SDKs\\Azure\\CLI2\\Lib\\site-packages\\azure\\cli\\telemetry\\\_\_init\_\_.pyc \\.azure"
telemetry.process: Return from creating process
telemetry.main: Finish creating telemetry upload process.

Du kan programmatiskt kontrollera statusen för åtgärden genom att köra följande kommando:

az rest -m get -u "<Azure-AsyncOperation-endpoint url>"

Exempel på den Azure-AsyncOperation slutpunkts-URL som extraherats från de trunkerade utdata.

<https://eastus.management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx>

Statusen bör ange om API:et lyckades eller misslyckades.

Förväntat resultat:

{ 
  "id": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/ResourceName", 
  "location": "eastus", 
  "name": "ResourceName", 
  "properties": { 
    "administrativeState": "Enabled", 
    "configurationState": "**DeferredControl**", 
    "hostName": "<Hostname>", 
    "networkDeviceRole": "Management", 
    "networkDeviceSku": "DefaultSku", 
    "networkRackId": "/subscriptions/ XXXXXXXXXXXX /resourceGroups/ ResourceGroupName /providers/Microsoft.ManagedNetworkFabric/networkRacks/ NFResourceName ", 
    "provisioningState": "Succeeded", 
    "serialNumber": "Arista;CCS-720DT-XXXX;11.07;WTW2248XXXX", 
    "version": "3.0.0" 
  }, 
  "systemData": { 
    "createdAt": "2024-XX-XXT13:41:13.8558264Z", 
    "createdBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "lastModifiedByType": "Application" 
  }, 
  "type": "microsoft.managednetworkfabric/networkdevices" 
} 
show interfaces description  
|Interface  |Status  |Protocol  |Description  |
|---------|---------|---------|---------|
|Et1      | admin down        | down          | **RW-test1**         |
|Et2      | admin down        | down          | **RW-test2**         |
|Et3      | admin down        | down          | **RW-test3**         |
|Et4      | admin down        | down          | "AR-Mgmt2:Et4 to Not-Connected"     |

Skriv över tidigare konfiguration

Det här exemplet visar hur den tidigare konfigurationen skrivs över om du inte lägger till den gamla RW-konfigurationen:

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 3\n description RW-test3"
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command "interface Ethernet 1\n description RW-test1\n interface Ethernet 2\n description RW-test2\n interface Ethernet 3\n description RW-test3" Anger de RW-kommandon som ska köras på nätverksenheten. Varje gränssnittskommando anger beskrivningen för det angivna Ethernet-gränssnittet.

Förväntat resultat:

{}

Kommando med --no-wait--debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 3\n description RW-test3" --no-wait --debug 
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command "interface Ethernet 1\n description RW-test1\n interface Ethernet 2\n description RW-test2\n interface Ethernet 3\n description RW-test3" Anger de RW-kommandon som ska köras på nätverksenheten. Varje gränssnittskommando anger beskrivningen för det angivna Ethernet-gränssnittet.
--no-wait Anger att kommandot ska köras asynkront utan att vänta på att åtgärden ska slutföras.
--debug Flagga aktivering av felsökningsläge med ytterligare information om körningen av kommandot i felsökningssyfte.

Förväntade trunkerade utdata:

cli.knack.cli: Command arguments: \['networkfabric', 'device', 'run-rw', '--resource-name', 'nffab100g-5-3-AggrRack-MgmtSwitch2', '--resource-group', 'Fab100GLabNF-5-3', '--rw-command', \`interface Ethernet 3\\n description RW-test3\`, '--debug'\]cli.knack.cli: \_\_init\_\_ debug log:
cli.azure.cli.core.sdk.policies: 'Azure-AsyncOperation': 'https://eastus.management.azure.com/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2\*BF225A07F7F4850DA565ABE0036AB?api-version=2022-01-15-privatepreview&t=638479088323069839&c=
telemetry.main: Begin creating telemetry upload process.
telemetry.process: Creating upload process: "C:\\Program Files (x86)\\Microsoft SDKs\\Azure\\CLI2\\python.exe C:\\Program Files (x86)\\Microsoft SDKs\\Azure\\CLI2\\Lib\\site-packages\\azure\\cli\\telemetry\\\_\_init\_\_.pyc \\.azure"
telemetry.process: Return from creating process
telemetry.main: Finish creating telemetry upload process.

Du kan programmatiskt kontrollera statusen för åtgärden genom att köra följande kommando:

az rest -m get -u "<Azure-AsyncOperation-endpoint url>"

Exempel på den Azure-AsyncOperation slutpunkts-URL som extraherats från de trunkerade utdata.

<https://eastus.management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx>

Förväntat resultat:

{ 
  "id": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/ResourceName", 
  "location": "eastus", 
  "name": "ResourceName", 
  "properties": { 
    "administrativeState": "Enabled", 
    "configurationState": "**DeferredControl**", 
    "hostName": "<Hostname>", 
    "networkDeviceRole": "Management", 
    "networkDeviceSku": "DefaultSku", 
    "networkRackId": "/subscriptions/ XXXXXXXXXXXX /resourceGroups/ ResourceGroupName /providers/Microsoft.ManagedNetworkFabric/networkRacks/ NFResourceName ", 
    "provisioningState": "Succeeded", 
    "serialNumber": "Arista;CCS-720DT-XXXX;11.07;WTW2248XXXX", 
    "version": "3.0.0" 
  }, 
  "systemData": { 
    "createdAt": "2024-XX-XXT13:41:13.8558264Z", 
    "createdBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "lastModifiedByType": "Application" 
  }, 

  "type": "microsoft.managednetworkfabric/networkdevices" 

} 
show interfaces description
|Interface  |Status  |Protocol  |Description  |
|---------|---------|---------|---------|
|Et1      | admin down        | down          | "AR-Mgmt2:Et1 to Not-Connected"          |
|Et2      | admin down        | down          | "AR-Mgmt2:Et2 to Not-Connected"        |
|Et3      | admin down        | down          | **RW-test3**         |
|Et4      | admin down        | down          | "AR-Mgmt2:Et4 to Not-Connected"     |

Rensa läsa-och-skriva-konfigurationen

Det här exemplet visar hur RW-konfigurationen rensas. När du kör rensningen återgår konfigurationen till den ursprungliga konfigurationen.

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command " " 
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name <ResourceName> Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group <ResourceGroupName> Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command " " Anger ett tomt RW-kommando som ska köras på nätverksenheten. Det här kommandot är i princip en platshållare utan några åtgärder.

Anmärkning

Kontrollera att det finns ett blanksteg mellan citattecknen i det tomma RW-kommandot.

Förväntat resultat:

{}

Kommando med --no-wait--debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command " " --no-wait --debug
Parameter Description
az networkfabric device run-rw Azure CLI-kommando för att köra en läs- och skrivåtgärd på en nätverksenhet i Azure Network Fabric.
--resource-name <ResourceName> Anger namnet på den resurs (nätverksenhet) som RW-åtgärden ska utföras på.
--resource-group <ResourceGroupName> Anger namnet på resursgruppen som innehåller nätverksenheten.
--rw-command " " Anger ett tomt RW-kommando som ska köras på nätverksenheten. Det här kommandot är i princip en platshållare utan åtgärd.
--no-wait Anger att kommandot ska köras asynkront utan att vänta på att åtgärden ska slutföras.
--debug Flagga aktivering av felsökningsläge med ytterligare information om körningen av kommandot i felsökningssyfte.

Förväntade trunkerade utdata:

cli.knack.cli: Command arguments: \['networkfabric', 'device', 'run-rw', '--resource-name', 'nffab100g-5-3-AggrRack-MgmtSwitch2', '--resource-group', 'Fab100GLabNF-5-3', '--rw-command', ' ' '--debug'\]cli.knack.cli: \_\_init\_\_ debug log:
cli.azure.cli.core.sdk.policies: 'Azure-AsyncOperation': 'https://eastus.management.azure.com/subscriptions/XXXXXXXXXXXXXXXXXXXXXXXXXXXXX/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/e239299a-8c71-426e-8460-58d4c0b470e2\*BF225A07F7F4850DA565ABE0036AB?api-version=2022-01-15-privatepreview&t=638479088323069839&c=
telemetry.main: Begin creating telemetry upload process.
telemetry.process: Creating upload process: "C:\\Program Files (x86)\\Microsoft SDKs\\Azure\\CLI2\\python.exe C:\\Program Files (x86)\\Microsoft SDKs\\Azure\\CLI2\\Lib\\site-packages\\azure\\cli\\telemetry\\\_\_init\_\_.pyc \\.azure"
telemetry.process: Return from creating process
telemetry.main: Finish creating telemetry upload process.

Du kan programmatiskt kontrollera statusen för åtgärden genom att köra följande kommando:

az rest -m get -u "<Azure-AsyncOperation-endpoint url>"

Exempel på den Azure-AsyncOperation slutpunkts-URL som extraherats från de trunkerade utdata.

<https://eastus.management.azure.com/subscriptions/xxxxxxxxxxx/providers/Microsoft.ManagedNetworkFabric/locations/EASTUS/operationStatuses/xxxxxxxxxxx?api-version=20XX-0X-xx-xx>

Statusen anger om API:et lyckades eller misslyckades.

Förväntat resultat:

{ 
  "id": "/subscriptions/XXXXXXXXXXXX/resourceGroups/ResourceGroupName/providers/Microsoft.ManagedNetworkFabric/networkDevices/ResourceName", 
  "location": "eastus", 
  "name": "ResourceName", 
  "properties": { 
    "administrativeState": "Enabled", 
    "configurationState": "**Succeeded**", 
    "hostName": "<Hostname>", 
    "networkDeviceRole": "Management", 
    "networkDeviceSku": "DefaultSku", 
    "networkRackId": "/subscriptions/ XXXXXXXXXXXX /resourceGroups/ ResourceGroupName /providers/Microsoft.ManagedNetworkFabric/networkRacks/ NFResourceName ", 
    "provisioningState": "Succeeded", 
    "serialNumber": "Arista;CCS-720DT-XXXX;11.07;WTW2248XXXX", 
    "version": "3.0.0" 
  }, 
  "systemData": { 
    "createdAt": "2024-XX-XXT13:41:13.8558264Z", 
    "createdBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxxxx", 
    "lastModifiedByType": "Application" 
  }, 
  "type": "microsoft.managednetworkfabric/networkdevices" 
} 

När RW-konfigurationen återställs till den ursprungliga konfigurationen flyttas enhetens konfigurationstillstånd till "Lyckades" från Uppskjuten kontroll.

show interfaces description
|Interface  |Status  |Protocol  |Description  |
|---------|---------|---------|---------|
|Et1      | admin down        | down          | **"AR-Mgmt2:Et1 to Not-Connected"**         |
|Et2      | admin down        | down          | **"AR-Mgmt2:Et2 to Not-Connected"**         |
|Et3      | admin down        | down          | **"AR-Mgmt2:Et3 to Not-Connected"**      |
|Et4      | admin down        | down          |  **"AR-Mgmt2:Et4 to Not-Connected"**    |

Kommandobegränsningar

RW-kommandofunktionen är öppen och det finns inga begränsningar för den. Fortsätt dock med försiktighet eftersom felaktig användning av konfigurationen kan sänka systemet.

  • Skapandet av vLAN mellan 1 och 500 och 3 000 till 4 095 rekommenderas inte eftersom det här intervallet är reserverat för infrastrukturändamål.

  • Manipulera inte vLAN-konfigurationen för hantering.

  • Det är absolut nödvändigt att inte manipulera NNI-ingress- och egress-åtkomstkontrollistor (ACL:er), eftersom vilka som helst ändringar riskerar att leda till att anslutningen till Azure Operator Nexus-instansen går förlorad.

  • Det finns inga schema- eller syntaxvalideringar som utförs för RW-kommandon. Du måste se till att konfigurationen granskas innan du kör den.

  • RW-konfigurationskommandona bör vara ett absolut kommando. korta formulär och uppmaningar stöds inte. Till exempel: Ange router bgp <ASN>\n vrf <name>\n neighbor <IPaddress> shutdown Inte router bgp <ASN>\n vrf <name>\n nei <IPaddress> sh or shut

  • Det är viktigt att noggrant granska konfigurationen av routningsprincipen före implementeringen, eftersom eventuell tillsyn kan äventyra den befintliga konfigurationen av routningsprinciper.

  • Om du ändrar BGP-konfigurationen för routern och stänger av den minskar enhetens stabilitet.

Hämta runRW-konfiguration

För att hämta den senast framgångsrikt tillämpade runRW-konfigurationen, se rwDeviceConfig-egenskapen. Den här egenskapen lagrar den senast tillämpade RW-konfigurationen för enheten. Om du vill komma åt den utför du en GET-begäran på enhetsresursen.

az networkfabric device show --resource-group "example-rg" --resource-name "example-device"
Parameter Alias Description
--resource-group -g Namnet på resursgruppen. Du kan konfigurera standardgruppen med hjälp av az configure --defaults group=<name>.
--resource-name Namnet på nätverksenheten.

Förväntad utdata

{
  "id": "/subscriptions/xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-device-name",
  "location": "uaenorth",
  "name": "example-device-name",
  "properties": {
    "administrativeState": "Enabled",
    "configurationState": "DeferredControl",
    "hostName": "AR-CE1",
    "networkDeviceRole": "CE",
    "networkDeviceSku": "DefaultSku",
    "networkRackId": "/subscriptions/xxxxxx-xxxx-xxxx-xxxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkRacks/example-rack-name",
    "provisioningState": "Succeeded",
    "rwDeviceConfig": "interface Ethernet 1/1\n description RW-test1",
    "serialNumber": "Arista;CCS-720DT-XXXX;11.07;WTW2248XXXX",
    "version": "4.0.0"
  },
  "systemData": {
    "createdAt": "2025-02-23T04:57:13.6113277Z",
    "createdBy": "xxxxxxxx-xxxx-xxxx-xxxxxx",
    "createdByType": "Application",
    "lastModifiedAt": "2025-02-27T08:27:46.3818706Z",
    "lastModifiedBy": "xxxxxxxx-xxxx-xxxx-xxxxxx",
    "lastModifiedByType": "Application"
  },
  "type": "microsoft.managednetworkfabric/networkdevices"
}

Anmärkning

RW-konfigurationen bibehålls vid en omstart utan ZTP men bibehålls inte vid uppgraderingar, enhets-RMA eller en omstart med ZTP. Efter dessa händelser är egenskapen rwDeviceConfig tom om inte användaren återställer RW-konfigurationen manuellt.

Beständiga RW-konfigurationer under enhetsuppgraderingar

I Azure Operator Nexus bevaras nu Read-Write-konfigurationer (RW) på nätverksenheter i enhetsprogramuppgraderingar. Detta säkerställer att användardefinierade RW-ändringar förblir intakta efter en uppgradering, bibehåller konsekvens och minskar risken för konfigurationsavvikelse.

Så här fungerar det

Uppgraderingsprocessen följer en tvåstegsmetod:

  • Enhetsuppgradering: Enhetens EOS-programvara uppgraderas och startas.

  • RW-återanvändning: När uppgraderingen är klar återanvänder systemet automatiskt alla tidigare konfigurerade RW-kommandon till enheten.

Den här replikeringen säkerställer att beständiga konfigurationer återställs och förblir effektiva efter en enhetsomstart eller versionsövergång.

Viktigt!

Arista EOS stöder för närvarande inte förvalidering av RW-konfigurationer. Om något kommando är inaktuellt, ogiltigt eller inte fungerar kan uppgraderingen misslyckas.

Felhantering

Om en RW-konfiguration misslyckas under replikeringen kommer enheten att ange ett feltillstånd och uppgraderingsprocessen slutförs inte.

Användarna får felutdata via Azure CLI.

I sådana fall:

Öppna ett supportärende med den uppdaterade och korrigerade RW-konfigurationen.

Supportteamet kommer att samordna med dig för att tillämpa den nya RW-konfigurationen igen via en Lockbox-aktiverad administratörsåtgärd.

Om replikeringen fortfarande misslyckas kan administratörsåtgärden behöva utföras på nytt med ytterligare korrigeringar.

Sammanfattning

Feature Beteende
RW-kommando-beständighet Tillämpas automatiskt igen efter uppgraderingen
Förvalidering av RW-konfigurationer Stöds inte
Vid fel Enheten anger feltillstånd
Recovery Skicka in ett supportärende; korrigerad konfiguration tillämpas via en administratörsåtgärd aktiverad via Låsbox

Begränsningar

Vanliga frågor:

  • Kan jag köra flera kommandon samtidigt?

    Ja, du kan köra flera kommandon samtidigt. Se exemplen för att granska hur du kör flera kommandon samtidigt.

  • Hur kontrollerar jag om konfigurationen lyckades?

    Du kan kontrollera konfigurationen genom att antingen:

    • Köra ett Read-Only API och köra de kommandon som krävs show för att verifiera att konfigurationen har slutförts.

    • Använd funktionen för konfigurationsskillnad för att visa skillnaden mellan konfigurationerna.

    RW POST-meddelandet indikerar om körningen lyckades eller inte.

  • Vad händer om jag kör RW-konfigurationskommandot felaktigt?

    RW POST-meddelandet returnerar ett felmeddelande som visas i exemplet i den här artikeln. Inga konfigurationsändringar tillämpas på enheten. Du måste köra konfigurationskommandot igen.

  • Hur kan jag spara RW-konfigurationskommandot flera gånger?

    Om du försöker ändra och uppdatera konfigurationen över en redan behållen konfiguration måste du ange alla ändrade beständiga konfigurationer, annars skrivs konfigurationen över med den senaste RW-konfigurationen.

    Till exempel

    Om du har skapat en vlan 505 och försöker skapa en annan uppsättning vlans (vlan 510) måste du lägga till vlan 505\\n vlan 510. Det senaste RW-konfigurationskommandot skriver över vlan 505, om du inte gör det.

  • Hur tar jag bort konfigurationen?

    Du måste ange null-värdet " ". Se exempelavsnittet i den här artikeln.

  • Är RW-kommandot beständigt över tyget?

    RW-konfigurationskommandot är beständigt, men med API:et kan du köra på enhetsnivå. Om du vill köra RW-kommandot över nätverksstrukturen måste du köra RW API över de nödvändiga nätverksenheterna.

Kända problem

Följande är känt problem för RW-konfigurationen:

  • Ett fel rapporteras eftersom ett internt fel eller ett gNMI-uppsättningsfel inte kan särskiljas med felsvar.