Freigeben über


Ausführen von Lese-/Schreibbefehlen

Mit dem Feature zum Lesen/Schreiben (Read Write, RW) können Sie Gerätekonfigurationen remote ändern, ohne auf das Network Fabric-Gerät zuzugreifen. Wenden Sie den RW-Konfigurationsbefehl auf Geräteebene im Network Fabric an. Da der Konfigurationsbefehl auf Geräteebene beibehalten wird, müssen Sie die Konfiguration zum Konfigurieren aller Geräte auf jedes Gerät im Fabric anwenden.

Das Ausführen des RW-Befehls schützt Ihre Konfiguration vor Änderungen, die über die Befehlszeilenschnittstelle (Command Line Interface, CLI) oder das Portal vorgenommen werden. Um mehrere Konfigurationen über die RW-API hinzuzufügen, fügen Sie neue Befehle an den vorhandenen RW-Befehl an. Schließen Sie beispielsweise nach dem Ändern mehrerer Geräteschnittstellen die vorherige Konfiguration mit allen neuen Änderungen ein, um das Überschreiben zu verhindern.

Stellen Sie die RW-Konfiguration nur während eines Upgradeszenarios wieder her. Nach einem Upgrade müssen Sie die RW-Änderungen bei Bedarf erneut anwenden. Die folgenden Beispiele führen Sie Schritt für Schritt durch den Prozess mit der RW-API.

Voraussetzungen

Stellen Sie sicher, dass Nexus Network Fabric erfolgreich bereitgestellt wurde.

Prozedur

Wenn Sie einen RW-Konfigurationsbefehl ausführen und Änderungen am Gerät vornehmen, ändert sich der Konfigurationsstatus des Geräts in Verzögerte Steuerung. Dieser Status gibt an, dass die RW-Konfiguration auf diesem Gerät pusht wurde. Wenn die angewendete RW-Konfiguration zurückgesetzt wird, wird die Konfiguration des Geräts auf den ursprünglichen Status Erfolgreich zurückgesetzt.

Netzwerkgerät auswählen

Melden Sie sich beim Azure-Portal

Zugreifen auf die Netzwerkgeräte:

Nachdem Sie angemeldet sind, verwenden Sie die Suchleiste oben, um nach Network Devices zu suchen oder zu „Alle Dienste“ zu navigieren und Netzwerkgeräte unter der Kategorie „Netzwerk“ zu finden.

Klicken Sie auf Netzwerkgeräte, um die Liste der Netzwerkgeräte in Ihrem Abonnement zu öffnen.

Wählen Sie das Netzwerkgerät aus:

Suchen und klicken Sie in der Liste der Netzwerkgeräte auf das Netzwerkgerät, das Sie konfigurieren möchten. Dadurch gelangen Sie zur Detailseite des ausgewählten Netzwerkgeräts.

Notieren Sie sich den Ressourcennamen und die Ressourcengruppe dieses Netzwerkgeräts, da Sie diese für den CLI-Befehl benötigen.

Oder

Um den Namen der Ressource abzurufen, klicken Sie auf die JSON-Ansicht (im Abschnitt „Eigenschaften“ oder „Übersicht“), in der die detaillierten Eigenschaften des Geräts angezeigt werden, einschließlich des Ressourcennamens.

Screenshot des Azure-Portals mit der Übersicht über das Netzwerkgerät.

Beispiele

Die folgenden Abschnitte enthalten Beispiele für RW-Befehle, die zum Ändern der Konfiguration des Geräts verwendet werden können. In den Beispielen werden die Ethernet-Schnittstellen 1, 2 und 3 verwendet, um zu veranschaulichen, wie Sie den Schnittstellennamen ändern und die Ergebnisse dieser Änderungen beobachten können.

Momentaufnahme des Network Fabric-Geräts vor dem Ändern der Konfiguration mithilfe der RW-API

show interfaces description  
|Interface  |Status  |Protocol  |Decsription  |
|---------|---------|---------|---------|
|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"**       |

Ändern der Beschreibung einer Schnittstelle

Das Beispiel zeigt, wie Sie die Schnittstellenbeschreibung des Geräts in „RW-test“ ändern.

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 1\n description RW-test"
Parameter Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält.
--rw-command "interface Ethernet 1\n description RW-test" Gibt den RW-Befehl an, der auf dem Netzwerkgerät ausgeführt werden soll. In diesem Beispiel wird die Beschreibung der Ethernet-Schnittstelle 1 auf „RW-test“ festgelegt.

Erwartete Ausgabe:

{}

Befehl mit --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 Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält.
--rw-command "interface Ethernet 1\n description RW-test" Gibt den RW-Befehl an, der auf dem Netzwerkgerät ausgeführt werden soll. In diesem Beispiel wird die Beschreibung der Ethernet-Schnittstelle 1 auf „RW-test“ festgelegt.
--no-wait Gibt an, dass der Befehl asynchron ausgeführt werden soll, ohne auf den Abschluss des Vorgangs zu warten.
--debug Flag zum Aktivieren des Debugmodus, in dem zusätzliche Informationen zur Ausführung des Befehls zu Problembehandlungszwecken bereitgestellt werden

Erwartete gekürzte Ausgabe:

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. 

Sie können den Status des Vorgangs programmgesteuert überprüfen, indem Sie den folgenden Befehl ausführen:

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

Beispiel für die Azure-AsyncOperation-Endpunkt-URL, die aus der gekürzten Ausgabe extrahiert wird.

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

Der Status sollte angeben, ob die Ausführung der API erfolgreich war oder fehlgeschlagen ist.

Erwartete Ausgabe:

{ 
  "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": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "lastModifiedByType": "Application" 
  }, 
  "type": "microsoft.managednetworkfabric/networkdevices" 
}

Wenn die RW-Konfiguration erfolgreich war, ändert sich der Gerätekonfigurationsstatus in Verzögerte Steuerung. Wenn die Konfiguration fehlschlägt, ändert sich der Status nicht.

show interfaces description  
|Interface  |Status  |Protocol  |Decsription  |
|---------|---------|---------|---------|
|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"     |

Ändern von drei Schnittstellenbeschreibungen

In diesem Beispiel wird gezeigt, wie Sie die Beschreibungen von drei verschiedenen Schnittstellen in einer Gerätebeschreibung in „RW-test1“, „RW-test2“ und „RW-test3“ ändern.

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 Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name <ResourceName> Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group <ResourceGroupName> Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält
--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" Gibt die RW-Befehle an, die auf dem Netzwerkgerät ausgeführt werden sollen. Durch jeden „interface“-Befehl wird die Beschreibung für die angegebene Ethernet-Schnittstelle festgelegt.

Erwartete Ausgabe:

{}

Befehl mit --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 Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name <ResourceName> Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group <ResourceGroupName> Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält
--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" Gibt die RW-Befehle an, die auf dem Netzwerkgerät ausgeführt werden sollen. Durch jeden „interface“-Befehl wird die Beschreibung für die angegebene Ethernet-Schnittstelle festgelegt.
--no-wait Gibt an, dass der Befehl asynchron ausgeführt werden soll, ohne auf den Abschluss des Vorgangs zu warten.
--debug Flag zum Aktivieren des Debugmodus, in dem zusätzliche Informationen zur Ausführung des Befehls zu Problembehandlungszwecken bereitgestellt werden

Erwartete gekürzte Ausgabe:

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.

Sie können den Status des Vorgangs programmgesteuert überprüfen, indem Sie den folgenden Befehl ausführen:

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

Beispiel für die Azure-AsyncOperation-Endpunkt-URL, die aus der gekürzten Ausgabe extrahiert wird.

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

Der Status sollte angeben, ob die Ausführung der API erfolgreich war oder fehlgeschlagen ist.

Erwartete Ausgabe:

{ 
  "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": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "lastModifiedByType": "Application" 
  }, 
  "type": "microsoft.managednetworkfabric/networkdevices" 
} 
show interfaces description  
|Interface  |Status  |Protocol  |Decsription  |
|---------|---------|---------|---------|
|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"     |

Überschreiben der vorherigen Konfiguration

In diesem Beispiel wird gezeigt, wie die vorherige Konfiguration überschrieben wird, wenn Sie die alte RW-Konfiguration nicht anfügen:

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command "interface Ethernet 3\n description RW-test3"
Parameter Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält
--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" Gibt die RW-Befehle an, die auf dem Netzwerkgerät ausgeführt werden sollen. Durch jeden „interface“-Befehl wird die Beschreibung für die angegebene Ethernet-Schnittstelle festgelegt.

Erwartete Ausgabe:

{}

Befehl mit --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 Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält
--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" Gibt die RW-Befehle an, die auf dem Netzwerkgerät ausgeführt werden sollen. Durch jeden „interface“-Befehl wird die Beschreibung für die angegebene Ethernet-Schnittstelle festgelegt.
--no-wait Gibt an, dass der Befehl asynchron ausgeführt werden soll, ohne auf den Abschluss des Vorgangs zu warten.
--debug Flag zum Aktivieren des Debugmodus, in dem zusätzliche Informationen zur Ausführung des Befehls zu Problembehandlungszwecken bereitgestellt werden

Erwartete gekürzte Ausgabe:

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.

Sie können den Status des Vorgangs programmgesteuert überprüfen, indem Sie den folgenden Befehl ausführen:

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

Beispiel für die Azure-AsyncOperation-Endpunkt-URL, die aus der gekürzten Ausgabe extrahiert wird.

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

Erwartete Ausgabe:

{ 
  "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": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "lastModifiedByType": "Application" 
  }, 

  "type": "microsoft.managednetworkfabric/networkdevices" 

} 
show interfaces description
|Interface  |Status  |Protocol  |Decsription  |
|---------|---------|---------|---------|
|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"     |

Bereinigen der RW-Konfiguration

Dieses Beispiel zeigt, wie die RW-Konfiguration bereinigt wird. Wenn Sie die Bereinigung ausführen, wird die ursprüngliche Konfiguration wiederhergestellt.

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command " " 
Parameter Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name <ResourceName> Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group <ResourceGroupName> Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält.
--rw-command " " Gibt einen leeren RW-Befehl an, der auf dem Netzwerkgerät ausgeführt werden soll. Dieser Befehl ist im Grunde ein Platzhalter ohne Aktion.

Hinweis

Stellen Sie sicher, dass zwischen den Anführungszeichen im leeren RW-Befehl ein Leerzeichen vorhanden ist.

Erwartete Ausgabe:

{}

Befehl mit --no-wait--debug

az networkfabric device run-rw --resource-name <ResourceName> --resource-group <ResourceGroupName> --rw-command " " --no-wait --debug
Parameter Beschreibung
az networkfabric device run-rw Azure CLI-Befehl zum Ausführen eines Lese-/Schreibvorgangs auf einem Netzwerkgerät in Azure Network Fabric
--resource-name <ResourceName> Gibt den Namen der Ressource (Netzwerkgerät) an, für die der RW-Vorgang ausgeführt wird
--resource-group <ResourceGroupName> Gibt den Namen der Ressourcengruppe an, die das Netzwerkgerät enthält.
--rw-command " " Gibt einen leeren RW-Befehl an, der auf dem Netzwerkgerät ausgeführt werden soll. Dieser Befehl ist im Grunde ein Platzhalter ohne Aktion.
--no-wait Gibt an, dass der Befehl asynchron ausgeführt werden soll, ohne auf den Abschluss des Vorgangs zu warten.
--debug Flag zum Aktivieren des Debugmodus, in dem zusätzliche Informationen zur Ausführung des Befehls zu Problembehandlungszwecken bereitgestellt werden

Erwartete gekürzte Ausgabe:

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.

Sie können den Status des Vorgangs programmgesteuert überprüfen, indem Sie den folgenden Befehl ausführen:

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

Beispiel für die Azure-AsyncOperation-Endpunkt-URL, die aus der gekürzten Ausgabe extrahiert wird

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

Der Status gibt an, ob die Ausführung der API erfolgreich war oder fehlgeschlagen ist.

Erwartete Ausgabe:

{ 
  "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": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "createdByType": "Application", 
    "lastModifiedAt": "2024-XX-XXT10:44:21.3736554Z", 
    "lastModifiedBy": "cbe7d642-9e0a-475d-b2bf-2cb0a9825e13", 
    "lastModifiedByType": "Application" 
  }, 
  "type": "microsoft.managednetworkfabric/networkdevices" 
} 

Wenn die RW-Konfiguration auf die ursprüngliche Konfiguration zurückgesetzt wird, wird der Konfigurationsstatus des Geräts von Verzögerte Steuerung in Erfolgreich geändert.

show interfaces description
|Interface  |Status  |Protocol  |Decsription  |
|---------|---------|---------|---------|
|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"**    |

Befehlseinschränkungen

Das RW-Befehlsfeature ist verfügbar, und es gibt keine Einschränkungen. Gehen Sie jedoch mit Bedacht vor, da eine falsche Verwendung der Konfiguration zu einem Ausfall des Systems führen kann.

  • Die Erstellung von VLANs im Bereich 1 bis 500 sowie 3000 bis 4095 wird nicht empfohlen, da diese Bereiche für Infrastrukturzwecke reserviert sind.

  • Manipulieren Sie die VLAN-Verwaltungskonfiguration nicht.

  • Die Eingangs- und Ausgangs-Zugriffssteuerungslisten (Access Control Lists, ACLs) für die Netzwerk-zu-Netzwerk-Verbindung (Network to Network Interconnect, NNI) dürfen in keinem Fall manipuliert werden, da Änderungen zu einem Verlust der Konnektivität mit der Azure Operator Nexus-Instanz führen können.

  • Für RW-Befehle werden keine Schema- oder Syntaxüberprüfungen ausgeführt. Sie müssen sicherstellen, dass die Konfiguration vor der Ausführung überprüft wird.

  • Die RW-Konfigurationsbefehle müssen als absolute Befehle angegeben werden. Kurzformen und Eingabeaufforderungen werden nicht unterstützt. Beispiel: Geben Sie router bgp <ASN>\n vrf <name>\n neighbor <IPaddress> shutdown ein, nicht router bgp <ASN>\n vrf <name>\n nei <IPaddress> sh or shut.

  • Es ist wichtig, die Routingrichtlinienkonfiguration vor der Implementierung gründlich zu überprüfen, da jeder Fehler das vorhandene Setup der Routingrichtlinien potenziell beeinträchtigen kann.

  • Wenn Sie die Konfiguration des BGP-Routers ändern und ihn herunterfahren, beeinträchtigt dies die Stabilität des Geräts.

Begrenzungen

Allgemeine Fragen:

  • Kann ich mehrere Befehle gleichzeitig ausführen?

    Ja. Sie können mehrere Befehle geleichzeitig ausführen. In den Beispielen wird gezeigt, wie Sie mehrere Befehle gleichzeitig ausführen.

  • Wie überprüfe ich, ob die Konfiguration erfolgreich war?

    Sie können die Konfiguration wie folgt überprüfen:

    • Führen Sie eine schreibgeschützte API und die erforderlichen show-Befehle aus, um zu überprüfen, ob die Konfiguration erfolgreich war.

    • Verwenden Sie das „Config Difference“-Feature, um den Unterschied zwischen den Konfigurationen anzuzeigen.

    Die RW POST-Nachricht gibt an, ob die Ausführung erfolgreich war.

  • Was geschieht, wenn ich den RW-Konfigurationsbefehl falsch ausführe?

    Die RW POST-Nachricht gibt eine Fehlermeldung zurück (siehe dazu das Beispiel in diesem Artikel). Es werden keine Konfigurationsänderungen auf das Gerät angewendet. Sie müssen den Konfigurationsbefehl erneut ausführen.

  • Wie kann ich den RW-Konfigurationsbefehl beibehalten und mehrmals verwenden?

    Wenn Sie versuchen, die Konfiguration für eine bereits persistente Konfiguration zu ändern und zu aktualisieren, müssen Sie alle Details der geänderten persistenten Konfiguration bereitstellen. Andernfalls wird die Konfiguration mit der neuesten RW-Konfiguration überschrieben.

    Beispiel:

    Wenn Sie erfolgreich ein VLAN 505 erstellt haben und versuchen, eine weitere Gruppe von VLANs (VLAN 510) zu erstellen, müssen Sie vlan 505\\n vlan 510 hinzufügen. Andernfalls überschreibt der neueste RW-Konfigurationsbefehl das VLAN 505.

  • Wie lösche ich die Konfiguration?

    Sie müssen den NULL-Wert (" ") angeben. Weitere Informationen finden Sie im Abschnitt mit den Beispielen in diesem Artikel.

  • Ist der RW-Befehl im gesamten Fabric persistent?

    Der RW-Konfigurationsbefehl ist persistent, die API ermöglicht Ihnen jedoch die Ausführung auf Geräteebene. Wenn Sie den RW-Befehl für das gesamte Fabric ausführen möchten, müssen Sie die RW-API auf allen erforderlichen Fabric-Geräten ausführen.

Bekannte Probleme

Die folgende Liste enthält bekannte Probleme für die RW-Konfiguration:

  • Es gibt keine Unterstützung für die Beibehaltung der RW-Konfiguration während eines Upgrades. Während des Upgrades wird der Konfigurationsstatus Verzögerte Kontrolle überschrieben. Die Fabric-Dienstautomatisierung überschreibt die RW-Konfiguration über den Network Fabric-Abstimmungsworkflow. Sie müssen den RW-Konfigurationsbefehl erneut für die erforderlichen Geräte ausführen.

  • Ein Fehler wird gemeldet, da ein interner Fehler oder ein gNMI-SET-Fehler nicht von Fehlerantworten unterschieden werden kann.