Einleitung
In diesem Dokument wird beschrieben, wie Sie das Betriebssystem (Betriebssystem) mit Auto-Provisioning (POAP) Auto-Conversion von Nexus Operating System (NXOS®) auf die ACI umstellen können.
Wann wird sie gebraucht?
Im bestehenden Prozess Retourengenehmigung (RMA)/Neue Switches, wenn sie mit NXOS®-Image empfangen werden, wird es sehr zeitaufwendig und komplex, diese Switches in den ACI-Modus umzuwandeln und sie dann der ACI-Fabric hinzuzufügen.
Es gibt drei Fälle, in denen Sie diese Funktion benötigen:
1) Ersatz des defekten Leaf/Spine Switch
2) Hinzufügen neuer Leaf/Spine zur Erweiterung der ACI-Fabric
3) Hinzufügen/Ersetzen von Remote-Leaf
Voraussetzung
Der bestehende Prozess zur Umwandlung des NXOS®-Modus in den ACI-Modus ist sehr komplex und zeitaufwendig, um das Verfahren zu vereinfachen und nahtlos Plug-and-Play (PowerOn Auto Provisioning) zu ermöglichen. Die POAP-Auto-Conversion-Funktion wurde in ACI Version 5.2(3) eingeführt. Die POAP-Funktion steht in NXOS® ab Version 7.x zur Verfügung. Daraus ergibt sich, dass für den neuen Switch, den Sie hinzufügen möchten, eine höhere Version ausgeführt werden muss.
Was ist POAP?
POAP steht für Power on auto provisioning. Der POAP-Prozess wird auf Nexus-Switches automatisch ausgelöst, wenn keine Startkonfiguration gefunden wird.
Wenn POAP ausgelöst wird, startet der Switch zunächst den DHCP-Prozess (Dynamic Host Configuration Protocol) von der Verwaltungsschnittstelle. Wenn kein DHCP-ack empfangen wird, wird die DHCP-Erkennung auf allen anderen Ports gestartet. In der ACI fungiert der APIC als DHCP-Server, der den Switches die IP-Adresse und den Standort des Python-Skripts bereitstellt. Nach dem Download des Python-Skripts wird das ACI-Image heruntergeladen, und die Konvertierung erfolgt automatisch auf den Switches. Die ACI führt Poap im Infrarotnetzwerk aus.
Topologie
In dieser Topologie müssen der Spine-Knoten 201, der Leaf-Knoten 101 und der Nexus-Switch konvertiert werden. Dieser Nexus-Switch kann direkt mit dem Spine- oder Leaf-Switch verbunden werden, d. h. Sie können ihn nach erfolgreicher Konvertierung direkt in die Fabric integrieren.
Für dieses Konfigurationsbeispiel verbinden Sie ACI Leaf 101 Port E1/53 mit dem neuen Switch-Knoten-Port E1/47. Stellen Sie sicher, dass nur Fabric-Ports auf Leaf und Spine für POAP verwendet werden können.
Wie wird POAP konfiguriert?
Verweisen Sie auf die beschriebenen Schritte, und schalten Sie den neuen Nexus-Switch-Knoten ein, und verbinden Sie ihn mit Leaf101, wie im Abschnitt zur Topologie dargestellt.
Schritt 1: Aktivieren der Umwandlung von Nexus in ACI
Navigieren Sie zu Fabric —> Fabric-Mitgliedschaft —> Registrierte Knoten —> Mit NXos zur ACI-Umwandlung hinzufügen
Schritt 2: Fügen Sie den entsprechenden Node 101 (vorhandener ACI-Switch) und die Schnittstelle E1/53 auf Leaf 101 hinzu, um sie für POAP zu verwenden (für POAP auf Leaf/Spine können nur Fabric-Links verwendet werden).
Schritt 3: Doppelklicke auf den Leaf Node, den du für POAP verwendest.
Schritt 4: Überprüfen Sie den POAP-Status von eth1/53. Sie können sehen, dass POAP für Port E1/53 aktiviert ist.
Schritt 5: Verbinden Sie den Nexus-Knoten mit der Leaf 101-Schnittstelle E1/53. Anschließend wird der neue Switch-Knoten unter "Nodes Pending registration" (Knoten mit ausstehender Registrierung) angezeigt. In diesem Beispiel wird der Port E1/47 auf dem neuen NX-OS-Switch verwendet.
Schritt 6: Registrieren Sie den neuen Switch-Knoten, klicken Sie mit der rechten Maustaste, und wählen Sie Registrieren aus.
Schritt 7: Node ID, Node Name hinzufügen und Leaf registrieren.
Schritt 8:Beim Start des NXOS-Switches wird eine Eingabeaufforderung angezeigt, in der Sie gefragt werden, ob Sie POAP abbrechen und mit der normalen Einrichtung fortfahren möchten. Wählen Sie "no continue with POAP" (Nein, mit POAP fortfahren).
(Wenn das Gerät über eine Startkonfiguration verfügt, müssen Sie eine Schreiblöschung durchführen und das Gerät neu laden, um den Wechsel des Nexus in den POAP-Modus zu erzwingen.)
Abort Power On Auto Provisioning [yes - continue with normal setup, skip - bypass password and basic configuration, no - continue with Power On Auto Provisioning] (yes/skip/no)[no]: >>>> This message appears on the console which means POAP process started on new switch node, Do not break this sequence.
Schritt 9: Beobachten Sie die Konsole des neuen Switch-Knotens, Sie werden diese Protokolle sehen.
%$ %POAP-2-POAP_DHCP_DISCOVER_START: [FDO233002HC-A4:53:0E:3D:D9:A3] - POAP DHCP Discover phase started <<< POAP Process started, new switch node is sending DHCP discover message2024 Jun 24 13:21:31 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: - Abort Power On Auto Provisioning [yes - continue with normal setup, skip - bypass password and basic configuration, no - continue with Power On Auto Provisioning] (yes/skip/no)[no]:
2024 Jun 24 13:21:32 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: Recieved DHCP offer from server ip - 10.0.0.1 <<< DHCP offer has been recived from APIC
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: Recieved DHCP offer from server ip - 10.0.0.1 (message repeated 1 time)
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Using DHCP, valid information received over Eth1/47 from 10.0.0.1 <<< This is the interface used on new switch node
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Assigned Host Name: poap-leaf <<< Hostname assigned to new switch node based on node-name you specified while registering2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Assigned IP address: 10.0.232.68 <<< New switch node got an IP Address
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Netmask: 255.255.0.0
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - DNS Server: 10.0.0.1
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Default Gateway: 10.0.0.30
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Script Server: 10.0.0.1
2024 Jun 24 13:21:39 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Script Name: aci_poap_bootfile.py <<< This script is responsible for performing NXOS to ACI mode conversion
2024 Jun 24 13:21:49 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - The POAP Script download has started <<< Downloading script
2024 Jun 24 13:21:49 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - The POAP Script is being downloaded from [copy tftp://10.0.0.1/aci_poap_bootfile.py bootflash:scripts/script.sh vrf default ]
2024 Jun 24 13:21:50 switch %$ VDC-1 %$ %POAP-2-POAP_SCRIPT_DOWNLOADED: [FDO233002HC-A4:53:0E:3D:D9:A3] - Successfully downloaded POAP script file <<< Script downloaded
2024 Jun 24 13:21:50 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - Script file size 106768, MD5 checksum 8b31543966b6dd518441a45d3546e0e1
2024 Jun 24 13:21:50 switch %$ VDC-1 %$ %POAP-2-POAP_INFO: [FDO233002HC-A4:53:0E:3D:D9:A3] - MD5 checksum received from the script file is 8b31543966b6dd518441a45d3546e0e1
2024 Jun 24 13:21:50 switch %$ VDC-1 %$ %POAP-2-POAP_SCRIPT_STARTED_MD5_VALIDATED: [FDO233002HC-A4:53:0E:3D:D9:A3] - POAP script execution started(MD5 validated) <<< Validating MD5 Checksum before downloading ACI image aci-n9000-dk9.15.2.8h.bin
2024 Jun 24 13:21:52 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Starting to download image - /script.sh <<< Starting ACI image download as script is executed in the backend
2024 Jun 24 13:21:52 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - The command is : terminal dont-ask ; terminal password <removed> ; copy http://10.0.0.1:7777/fwrepo/aci-n9000-dk9.15.2.8h.bin bootflash:aci-n9000-dk9.15.2.8h.bin vrf default - /script.sh
184633.793: 2024 Jun 24 13:25:50 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Downloading the image completed - /script.sh <<< ACI image download completed
184633.819: 2024 Jun 24 13:25:50 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - Image file found in bootflash folder - /script.sh
184635.739: 2024 Jun 24 13:25:52 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - no boot nxos o/p : - /script.sh
184640.147: 2024 Jun 24 13:25:56 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - copy running-config o/p : [# ] 1% [# ] 2% [## ] 3% [## ] 4% [### ] 5% [### ] 6% [### ] 7% [#### ] 8% [#### ] 9% [##### ] 10% [##### ] 11% [##### ] 12% [###### ] 13% [###### ] 14% [####### ] 15%184640.147: [####### ] 16% [####### ] 17% [######## ] 18% [######## ] 19% [######### ] 20% [#########
184642.147: 2024 Jun 24 13:25:58 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - boot aci o/p : Warning: Please check list of all ACI supported hardware before doing this operation, not all hardware are supported. Performing image verification and compatibility check, pleas184642.147: e wait.... Unable remove internal file Image verification successful. - /script.sh
184649.973: 2024 Jun 24 13:26:06 switch %$ VDC-1 %$ %USER-1-SYSTEM_MSG: - md5sum o/p : e9065f12d6eac79d15091f0c595ed9e5 - /script.sh <<< Post download MD5 checksum validation
184657.960: 2024 Jun 24 13:26:14 switch %$ VDC-1 %$ %VMAN-2-ACTIVATION_STATE: Successfully deactivated virtual service 'guestshell+'
184701.033: 2024 Jun 24 13:26:17 switch %$ VDC-1 %$ %PLATFORM-2-PFM_SYSTEM_RESET: Manual system restart from Command Line Interface <<< Rebooting the device to perform the conversion
Schritt 10: Neuer Switch-Knoten mit dem Namen Poap-Leaf wird in registrierten Knoten angezeigt.
Schritt 11: Validieren Sie, ob der neue Switch-Knoten in den ACI-Modus umgewandelt wurde.
User Access Verification(none) login: admin
********************************************************************************
Fabric discovery in progress, show commands are not fully functional
Logout and Login after discovery to continue to use show commands.
Run show discoveryissues for more details.
********************************************************************************
(none)# <<< Device is in ACI discovey mode now
Schritt 12: Verbinden Sie nun den neuen Switch-Knoten mit der ACI-Fabric entsprechend.
Schritt 13: Löschen Sie die NXOS-Konvertierungsrichtlinie nach erfolgreicher Konvertierung.
++ You also encounter an Fault F427 when you configure POAP, please ensure that fault is cleared post step 13.
This fault is an reminder that you have configured an port on ACI Leaf switch for POAP usage
POAP-DHCP-Protokollierung auf APIC
Um die DHCP-Protokolle auf dem APIC zu überprüfen, verwenden Sie den angegebenen Speicherort und die Protokolldateien.
apic1# cd /var/log/dme/log/
apic1# less dhcpd.bin.log | grep ISC | grep a4:53:0e:3d:d9:a330167||2024-06-24T13:12:04.170069236+00:00||dhcp||INFO||||ISC
dhcpd: DHCPDISCOVER from a4:53:0e:3d:d9:a3 via 10.0.232.64||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68 <<< DHCP Discovered recieved from Leaf101 Infra Loopback IP , Leaf 101 is acting as DHCP Relay30167||2024-06-24T13:12:04.170129519+00:00||dhcp||INFO||||ISC
dhcpd: DHCPOFFER on 10.0.232.68 to a4:53:0e:3d:d9:a3 via 10.0.232.64||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68 <<< DHCP Offer forwarded from APIC30167||2024-06-24T13:12:07.219176308+00:00||dhcp||INFO||||ISC dhcpd: Received host decl = FDO233002HC { uid "FDO233002HC"; dynamic; option host-name "poap-leaf"; fixed-address 10.0.232.68; option cisco.node-role 2; option cisco.node-type 0; pool subclass "pod" 00:1; option cisco.fabric-id 1; option cisco.pod-id 1; option cisco.node-id 1891; option subnet-mask 255.255.0.0; option routers 10.0.0.30; option domain-name-servers 10.0.0.1; filename "aci_poap_bootfile.py"; } ||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68 bico 04.421. <<< DHCP Server provides IP, DHS and TFTP server IP address to download python script and ACI image
30167||2024-06-24T13:12:07.220213143+00:00||dhcp||INFO||||ISC dhcpd: Received host decl = FDO233002HC { uid "FDO233002HC"; dynamic; option host-name "poap-leaf"; fixed-address 10.0.232.68; option cisco.node-role 2; option cisco.node-type 0; pool subclass "pod" 00:1; option cisco.fabric-id 1; option cisco.pod-id 1; option cisco.node-id 1891; option subnet-mask 255.255.0.0; option routers 10.0.0.30; option domain-name-servers 10.0.0.1; filename "aci_poap_bootfile.py"; } ||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68
30167||2024-06-24T13:12:10.167297645+00:00||dhcp||DBG4||||ISC dhcpd: Before updateUid 12:||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||73 bico 07.220
30167||2024-06-24T13:12:10.167454624+00:00||dhcp||DBG4||||ISC dhcpd: not our server id ours 0.0.0.0 received 10.0.0.1||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||73
30167||2024-06-24T13:12:10.167588015+00:00||dhcp||DBG4||||ISC dhcpd: Before updateUid 12:||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||73
30167||2024-06-24T13:12:10.167639084+00:00||dhcp||INFO||||ISC dhcpd: DHCPREQUEST for 10.0.232.68 (10.0.0.1) from a4:53:0e:3d:d9:a3 via 10.0.232.64||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68
30167||2024-06-24T13:12:10.167706966+00:00||dhcp||INFO||||ISC dhcpd: DHCPACK on 10.0.232.68 to a4:53:0e:3d:d9:a3 via 10.0.232.64||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68
30167||2024-06-24T13:12:10.167806426+00:00||dhcp||DBG4||||ISC dhcpd: updateUid 11:FDO233002HC, ../common/external/dhcp/dhcp-4.1-ESV-R6/server/svcapi.c:410||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||73
30167||2024-06-24T13:12:12.221336321+00:00||dhcp||INFO||||ISC dhcpd: Received host decl = FDO233002HC { uid "FDO233002HC"; dynamic; option host-name "poap-leaf"; fixed-address 10.0.232.68; option cisco.node-role 2; option cisco.node-type 0; pool subclass "pod" 00:1; option cisco.fabric-id 1; option cisco.pod-id 1; option cisco.node-id 1891; option subnet-mask 255.255.0.0; option routers 10.0.0.30; option domain-name-servers 10.0.0.1; filename "aci_poap_bootfile.py"; } ||../svc/dhcpd/src/gen/ifc/beh/imp/./DhcpdSvc.cc||68 bico 10.436