Contenido

Introducción

Antecedentes

Flujo de trabajo de detección de fabric

Check01: estado del sistema

Check02: estado de DHCP

Check03 — Detalles AV

Check04: disponibilidad de IP para APIC

Check05: VLAN Infra

Check06 — adyacencia LLDP

Check07 — Versión del switch

Check08 — FPGA/EPLD/BIOS desincronizado

Check09: verificación SSL

Check10 — Política de descarga

Check11 — Hora

Check12 — Módulo, PSU, comprobación del ventilador

Ejemplo de escenarios rotos

Situación 1: la primera hoja no aparece en la pertenencia al fabric

Situación 2: otros APIC no se unen al clúster

Situación 3: la columna no aparece en la pertenencia al fabric

Situación 4: tras la detección inicial del fabric, el clúster se aletea entre el ajuste completo y el estado degradado

Introducción

Este documento describe los pasos para comprender y resolver problemas del proceso inicial de detección del fabric, incluidos ejemplos de situaciones problemáticas.

Antecedentes

El material de este documento se ha extraído de la Solución de problemas de Cisco Application Centric Infrastructure, segunda edición libro, específicamente el Detección de fabric: configuración inicial de fabric capítulo.

Flujo de trabajo de detección de fabric

El proceso de detección del fabric de ACI sigue una secuencia específica de eventos. Los pasos básicos son los siguientes:

1. Conéctese a la consola KVM del primer APIC y complete el script de configuración introduciendo valores como el nombre del fabric, el tamaño del clúster de APIC y el conjunto de direcciones del punto final del túnel (TEP).

2. Una vez completado, el APIC1 comenzará a enviar LLDP a través de sus puertos de fabric. Los paquetes LLDP contienen TLV especiales con información como la VLAN infra y su función como APIC (también denominado controlador).

3. Al recibir estos paquetes LLDP de APIC1, la hoja programará la VLAN infra en todos los puertos donde se detecte un APIC.

4. La hoja comienza a enviar detecciones de DHCP en la ahora conocida VLAN infra.

5. El usuario inicia sesión en la IP OOB de APIC1 a través de HTTPS y registra el primer nodo de hoja en el submenú Fabric Membership.

6. Una vez que la hoja recibe un ID de nodo, APIC1 responderá con una dirección IP del conjunto de direcciones TEP configurado y el proceso DHCP se completa.

7. La hoja registrada retransmite DHCP detecta de otras espinas conectadas directamente que fueron descubiertas vía LLDP al APIC1.

8. El usuario verá esas columnas detectadas dinámicamente en el submenú Fabric Membership (Pertenencia al fabric) y podrá registrarlas.

9. Una vez registradas las columnas, el APIC1 responde con una dirección IP del conjunto TEP y DHCP se completa para esos nodos.

10. Las espinas retransmiten DHCP detecta de todos los otros nodos de pod1. (Esto supone que existe una malla completa entre los switches de columna y de hoja, como se recomienda y es la arquitectura típica).

11. Una vez que se registran los nodos de hoja conectados a los otros APIC, el clúster APIC se puede establecer a través de la comunicación TCP entre ellos. Asegúrese de completar el cuadro de diálogo de configuración en APIC2 y APIC3.

12. Confirme que todos los APIC han formado un clúster y se ajustan completamente. Si este es el caso, la detección de fabric está completa.

A partir de la versión 4.2, se encuentra disponible un nuevo comando CLI en los nodos de fabric para ayudar en el diagnóstico de problemas comunes de detección. Las secciones siguientes tratarán las comprobaciones realizadas y proporcionarán comandos de validación adicionales para ayudar en la resolución de problemas de errores.

leaf101# show discoveryissues

Checking the platform type................LEAF!

Check01 - System state - in-service [ok]

Check02 - DHCP status [ok]

TEP IP: 10.0.72.67 Node Id: 101 Name: leaf101

Check03 - AV details check [ok]

Check04 - IP rechability to apic [ok]

Ping from switch to 10.0.0.1 passed

Check05 - infra VLAN received [ok]

infra vLAN:3967

Check06 - LLDP Adjacency [ok]

Found adjacency with SPINE

Found adjacency with APIC

Check07 - Switch version [ok]

version: n9000-14.2(1j) and apic version: 4.2(1j)

Check08 - FPGA/BIOS out of sync test [ok]

Check09 - SSL check [check]

SSL certificate details are valid

Check10 - Downloading policies [ok]

Check11 - Checking time [ok]

2019-09-11 07:15:53

Check12 - Checking modules, power and fans [ok]

Check01: estado del sistema

Cuando se haya asignado un ID de nodo a la hoja y se haya registrado en el fabric, comenzará a descargar su bootstrap y, a continuación, pasará a un estado en servicio.

Check01 - System state - out-of-service [FAIL]

Check01 - System state - downloading-boot-script [FAIL]

Para validar el estado actual de la hoja, el usuario puede ejecutar moquery -c topSystem

leaf101# moquery -c topSystem

Total Objects shown: 1

# top.System

address                  : 10.0.72.67

bootstrapState           : done

...

serial                   : FDO20160TPS

serverType               : unspecified

siteId                   : 1

state                    : in-service

status                   :

systemUpTime             : 00:18:17:41.000

tepPool                  : 10.0.0.0/16

unicastXrEpLearnDisable  : no

version                  : n9000-14.2(1j)

virtualMode              : no

Check02: estado de DHCP

Check02 - DHCP status [FAIL]

ERROR: node Id not configured

ERROR: Ip not assigned by dhcp server

ERROR: Address assigner's IP not populated

TEP IP: unknown Node Id: unknown Name: unknown

La hoja necesita recibir una dirección TEP a través de DHCP del APIC1 y luego establecer la conectividad IP con los otros APIC. El TEP físico (PTEP) de la hoja se asigna a loopback0. Si no se asigna ninguna dirección, el usuario puede validar que la hoja está enviando una detección DHCP con la utilidad tpcdump. Aviso para esto usaremos la interfaz kpm_inb que le permite ver todo el tráfico de red del plano de control dentro de la banda de la CPU.

(none)# tcpdump -ni kpm_inb port 67 or 68

tcpdump: verbose output suppressed, use -v or -vv for full protocol decode

listening on kpm_inb, link-type EN10MB (Ethernet), capture size 65535 bytes

16:40:11.041148 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request from a0:36:9f:c7:a1:0c, length 300

^C

1 packets captured

1 packets received by filter

0 packets dropped by kernel

El usuario también puede validar que dhcpd se está ejecutando en el APIC y está escuchando en la subinterfaz bond0. La interfaz de enlace representa el fabric orientado a los puertos APIC. Utilizaremos el formato bond0.<infra VLAN>.

apic1# ps aux | grep dhcp

root     18929  1.3  0.2 818552 288504 ?       Ssl  Sep26  87:19 /mgmt//bin/dhcpd.bin -f -4 -cf /data//dhcp/dhcpd.conf -lf /data//dhcp/dhcpd.lease -pf /var/run//dhcpd.pid --no-pid bond0.3967

admin   22770  0.0  0.0   9108   868 pts/0    S+   19:42   0:00 grep dhcp

Check03 — Detalles AV

Check03 - AV details check [ok]

La hoja validará si el APIC registrado tiene una IP en un rango válido para el conjunto TEP. Si aún no se ha registrado ninguna información de APIC, esta comprobación pasará. El usuario puede ver la información APIC actual desde la perspectiva del nodo de hoja mediante el comando 'acidiag avread'. Observe en el siguiente ejemplo que cuando el mensaje de hoja/columna muestra (none)#, esto es una indicación de que la hoja/columna aún no es un miembro del entramado.

(none)# acidiag avread

Cluster of 0 lm(t):0(zeroTime) appliances (out of targeted 0 lm(t):0(zeroTime)) with FABRIC_DOMAIN name=Undefined Fabric Domain Name set to version= lm(t):0(zeroTime); discoveryMode=PERMISSIVE lm(t):0(zeroTime); drrMode=OFF lm(t):0(zeroTime)

---------------------------------------------

clusterTime=<diff=0 common=2019-10-01T18:51:50.315+00:00 local=2019-10-01T18:51:50.315+00:00 pF=<displForm=1 offsSt=0 offsVlu=0 lm(t):0(zeroTime)>>

---------------------------------------------

leaf101# acidiag avread

Cluster of 3 lm(t):0(2019-09-30T18:45:10.320-04:00) appliances (out of targeted 3 lm(t):0(2019-10-01T14:52:55.217-04:00)) with FABRIC_DOMAIN name=ACIFabric1 set to version=apic-4.2(1j) lm(t):0(2019-10-01T14:52:55.217-04:00); discoveryMode=PERMISSIVE lm(t):0(1969-12-31T20:00:00.003-04:00); drrMode=OFF lm(t):0(1969-12-31T20:00:00.003-04:00); kafkaMode=OFF lm(t):0(1969-12-31T20:00:00.003-04:00)

appliance id=1  address=10.0.0.1 lm(t):2(2019-09-27T17:32:08.669-04:00) tep address=10.0.0.0/16 lm(t):1(2019-07-09T19:41:24.672-04:00) routable address=192.168.1.1 lm(t):2(2019-09-30T18:37:48.916-04:00) oob address=0.0.0.0 lm(t):0(zeroTime) version=4.2(1j) lm(t):1(2019-09-30T18:37:49.011-04:00) chassisId=c67d1076-a2a2-11e9-874e-a390922be712 lm(t):1(2019-09-30T18:37:49.011-04:00) capabilities=0X3EEFFFFFFFFF--0X2020--0X1 lm(t):1(2019-09-26T09:32:20.747-04:00) rK=(stable,absent,0) lm(t):0(zeroTime) aK=(stable,absent,0) lm(t):0(zeroTime) oobrK=(stable,absent,0) lm(t):0(zeroTime) oobaK=(stable,absent,0) lm(t):0(zeroTime) cntrlSbst=(APPROVED, FCH1929V153) lm(t):1(2019-10-01T12:46:44.711-04:00) (targetMbSn= lm(t):0(zeroTime), failoverStatus=0 lm(t):0(zeroTime)) podId=1 lm(t):1(2019-09-26T09:26:49.422-04:00) commissioned=YES lm(t):101(2019-09-30T18:45:10.320-04:00) registered=YES lm(t):3(2019-09-05T11:42:41.371-04:00) standby=NO lm(t):0(zeroTime) DRR=NO lm(t):101(2019-09-30T18:45:10.320-04:00) apicX=NO lm(t):0(zeroTime) virtual=NO lm(t):0(zeroTime) active=YES

appliance id=2  address=10.0.0.2 lm(t):2(2019-09-26T09:47:34.709-04:00) tep address=10.0.0.0/16 lm(t):2(2019-09-26T09:47:34.709-04:00) routable address=192.168.1.2 lm(t):2(2019-09-05T11:45:36.861-04:00) oob address=0.0.0.0 lm(t):0(zeroTime) version=4.2(1j) lm(t):2(2019-09-30T18:37:48.913-04:00) chassisId=611febfe-89c1-11e8-96b1-c7a7472413f2 lm(t):2(2019-09-30T18:37:48.913-04:00) capabilities=0X3EEFFFFFFFFF--0X2020--0X7 lm(t):2(2019-09-26T09:53:07.047-04:00) rK=(stable,absent,0) lm(t):0(zeroTime) aK=(stable,absent,0) lm(t):0(zeroTime) oobrK=(stable,absent,0) lm(t):0(zeroTime) oobaK=(stable,absent,0) lm(t):0(zeroTime) cntrlSbst=(APPROVED, FCH2045V1X2) lm(t):2(2019-10-01T12:46:44.710-04:00) (targetMbSn= lm(t):0(zeroTime), failoverStatus=0 lm(t):0(zeroTime)) podId=1 lm(t):2(2019-09-26T09:47:34.709-04:00) commissioned=YES lm(t):101(2019-09-30T18:45:10.320-04:00) registered=YES lm(t):2(2019-09-26T09:47:34.709-04:00) standby=NO lm(t):0(zeroTime) DRR=NO lm(t):101(2019-09-30T18:45:10.320-04:00) apicX=NO lm(t):0(zeroTime) virtual=NO lm(t):0(zeroTime) active=YES

appliance id=3  address=10.0.0.3 lm(t):3(2019-09-26T10:12:34.114-04:00) tep address=10.0.0.0/16 lm(t):3(2019-09-05T11:42:27.199-04:00) routable address=192.168.1.3 lm(t):2(2019-10-01T13:19:08.626-04:00) oob address=0.0.0.0 lm(t):0(zeroTime) version=4.2(1j) lm(t):3(2019-09-30T18:37:48.904-04:00) chassisId=99bade8c-cff3-11e9-bba7-5b906a49dc39 lm(t):3(2019-09-30T18:37:48.904-04:00) capabilities=0X3EEFFFFFFFFF--0X2020--0X4 lm(t):3(2019-09-26T10:18:13.149-04:00) rK=(stable,absent,0) lm(t):0(zeroTime) aK=(stable,absent,0) lm(t):0(zeroTime) oobrK=(stable,absent,0) lm(t):0(zeroTime) oobaK=(stable,absent,0) lm(t):0(zeroTime) cntrlSbst=(APPROVED, FCH1824V2VR) lm(t):3(2019-10-01T12:48:03.726-04:00) (targetMbSn= lm(t):0(zeroTime), failoverStatus=0 lm(t):0(zeroTime)) podId=2 lm(t):3(2019-09-26T10:12:34.114-04:00) commissioned=YES lm(t):101(2019-09-30T18:45:10.320-04:00) registered=YES lm(t):2(2019-09-05T11:42:54.935-04:00) standby=NO lm(t):0(zeroTime) DRR=NO lm(t):101(2019-09-30T18:45:10.320-04:00) apicX=NO lm(t):0(zeroTime) virtual=NO lm(t):0(zeroTime) active=YES

---------------------------------------------

clusterTime=<diff=15584 common=2019-10-01T14:53:01.648-04:00 local=2019-10-01T14:52:46.064-04:00 pF=<displForm=0 offsSt=0 offsVlu=-14400 lm(t):21(2019-09-26T10:40:35.412-04:00)>>

---------------------------------------------

Check04: disponibilidad de IP para APIC

Cuando la hoja ha recibido una dirección IP, intentará establecer sesiones TCP con el APIC e iniciará el proceso de descarga de su configuración. El usuario puede validar la conectividad IP al APIC mediante la utilidad 'iping'.

leaf101# iping -V overlay-1 10.0.0.1

PING 10.0.0.1 (10.0.0.1) from 10.0.0.30: 56 data bytes

64 bytes from 10.0.0.1: icmp_seq=0 ttl=64 time=0.651 ms

64 bytes from 10.0.0.1: icmp_seq=1 ttl=64 time=0.474 ms

64 bytes from 10.0.0.1: icmp_seq=2 ttl=64 time=0.477 ms

64 bytes from 10.0.0.1: icmp_seq=3 ttl=64 time=0.54 ms

64 bytes from 10.0.0.1: icmp_seq=4 ttl=64 time=0.5 ms

--- 10.0.0.1 ping statistics ---  5 packets transmitted, 5 packets received, 0.00% packet loss

round-trip min/avg/max = 0.474/0.528/0.651 ms

Check05: VLAN Infra

Check05 - infra VLAN received [ok]

La comprobación de la VLAN infra sólo se realizará correctamente si el nodo está conectado a un grupo de dispositivos donde existe un APIC. Si este no es el caso, el usuario puede ignorar el mensaje porque se espera que la comprobación falle.

La hoja determinará la VLAN infra en función de los paquetes LLDP recibidos de otros nodos ACI. El primero que reciba será aceptado cuando el switch esté en detección.

(none)# moquery -c lldpInst

Total Objects shown: 1

# lldp.Inst

adminSt        : enabled

childAction    :

ctrl           :

dn             : sys/lldp/inst

holdTime       : 120

infraVlan      : 3967

initDelayTime  : 2

lcOwn          : local

modTs          : 2019-09-12T07:25:33.194+00:00

monPolDn       : uni/fabric/monfab-default

name           :

operErr        :

optTlvSel      : mgmt-addr,port-desc,port-vlan,sys-cap,sys-desc,sys-name

rn             : inst

status         :

sysDesc        : topology/pod-1/node-101

txFreq         : 30

(none)# show vlan encap-id 3967

VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

8    infra:default                    active    Eth1/1

VLAN Type  Vlan-mode

---- ----- ----------

8    enet  CE

Si la VLAN infra no se ha programado en las interfaces de puerto de switch conectadas a los APIC, verifique los problemas de cableado detectados por la hoja.

(none)# moquery -c lldpIf -f 'lldp.If.wiringIssues!=""'

Total Objects shown: 1

# lldp.If

id           : eth1/1

adminRxSt    : enabled

adminSt      : enabled

adminTxSt    : enabled

childAction  :

descr        :

dn           : sys/lldp/inst/if-[eth1/1]

lcOwn        : local

mac          : E0:0E:DA:A2:F2:83

modTs        : 2019-09-30T18:45:22.323+00:00

monPolDn     : uni/fabric/monfab-default

name         :

operRxSt     : enabled

operTxSt     : enabled

portDesc     :

portMode     : normal

portVlan     : unspecified

rn           : if-[eth1/1]

status       :

sysDesc      :

wiringIssues : infra-vlan-mismatch

Check06 — adyacencia LLDP

Check06 - LLDP Adjacency [FAIL]

Error: leaf not connected to any spine

Para determinar qué puertos se conectan a otros dispositivos ACI, la hoja debe recibir LLDP de los otros nodos de fabric. Para validar que LLDP ha sido recibido, el usuario puede marcar 'show lldp neighbors'.

(none)# show lldp neighbors

Capability codes:

(R) Router, (B) Bridge, (T) Telephone, (C) DOCSIS Cable Device

(W) WLAN Access Point, (P) Repeater, (S) Station, (O) Other

Device ID            Local Intf      Hold-time  Capability  Port ID

apic1                 Eth1/1          120                    eth2-1

apic2                 Eth1/2          120                    eth2-1

switch                Eth1/51         120        BR          Eth2/32

switch                Eth1/54         120        BR          Eth1/25

Total entries displayed: 4

Check07 — Versión del switch

Check07 - Switch version [ok]

version: n9000-14.2(1j) and apic version: 4.2(1j)

Si las versiones APIC y de hoja no son iguales, la detección de fabric podría fallar. Para validar la versión que se ejecuta en la hoja, utilice 'show version' o 'vsh -c 'show version''.

(none)# show version

Cisco Nexus Operating System (NX-OS) Software

TAC support: http://www.cisco.com/tac

Documents: http://www.cisco.com/en/US/products/ps9372/tsd_products_support_series_home.htmlCopyright (c) 2002-2014, Cisco Systems, Inc. All rights reserved.

The copyrights to certain works contained in this software are

owned by other third parties and used and distributed under

license. Certain components of this software are licensed under

the GNU General Public License (GPL) version 2.0 or the GNU

Lesser General Public License (LGPL) Version 2.1. A copy of each

such license is available at

http://www.opensource.org/licenses/gpl-2.0.php and

http://www.opensource.org/licenses/lgpl-2.1.php

Software

BIOS:      version 07.66

kickstart: version 14.2(1j) [build 14.2(1j)]

system:    version 14.2(1j) [build 14.2(1j)]

PE:        version 4.2(1j)

BIOS compile time:       06/11/2019

kickstart image file is: /bootflash/aci-n9000-dk9.14.2.1j.bin

kickstart compile time:  09/19/2019 07:57:41 [09/19/2019 07:57:41]

system image file is:    /bootflash/auto-s

system compile time:     09/19/2019 07:57:41 [09/19/2019 07:57:41]

...

El mismo comando también funcionará en los APIC.

apic1# show version

Role        Pod         Node        Name                      Version

----------  ----------  ----------  ------------------------  --------------------

controller  1           1           apic1                     4.2(1j)

controller  1           2           apic2                     4.2(1j)

controller  2           3           apic3                     4.2(1j)

leaf        1           101         leaf101                   n9000-14.2(1j)

leaf        1           102         leaf102                   n9000-14.2(1j)

leaf        1           103         leaf103                   n9000-14.2(1j)

spine       1           1001        spine1                    n9000-14.2(1j)

spine       1           1002        spine2                    n9000-14.2(1j)

Check08 — FPGA/EPLD/BIOS desincronizado

Las versiones FPGA, EPLD y BIOS podrían afectar la capacidad del nodo de hoja para activar los módulos como se esperaba. Si estas están demasiado desactualizadas, las interfaces del switch podrían fallar en aparecer. El usuario puede validar las versiones en ejecución y esperadas de FPGA, EPLD y BIOS con los siguientes comandos moquery.

(none)# moquery -c firmwareCardRunning

Total Objects shown: 2

# firmware.CardRunning

biosVer        : v07.66(06/11/2019)

childAction    :

descr          :

dn             : sys/ch/supslot-1/sup/running

expectedVer    : v07.65(09/04/2018)  interimVer     : 14.2(1j)

internalLabel  :

modTs          : never

mode           : normal

monPolDn       : uni/fabric/monfab-default

operSt         : ok

rn             : running

status         :

ts             : 1970-01-01T00:00:00.000+00:00

type           : switch

version        : 14.2(1j)

# firmware.CardRunning

biosVer        : v07.66(06/11/2019)

childAction    :

descr          :

dn             : sys/ch/lcslot-1/lc/running

expectedVer    : v07.65(09/04/2018)  interimVer     : 14.2(1j)

internalLabel  :

modTs          : never

mode           : normal

monPolDn       : uni/fabric/monfab-default

operSt         : ok

rn             : running

status         :

ts             : 1970-01-01T00:00:00.000+00:00

type           : switch

version        : 14.2(1j)

(none)# moquery -c firmwareCompRunning

Total Objects shown: 2

# firmware.CompRunning

childAction    :

descr          :

dn             : sys/ch/supslot-1/sup/fpga-1/running

expectedVer    : 0x14  internalLabel  :

modTs          : never

mode           : normal

monPolDn       : uni/fabric/monfab-default

operSt         : ok

rn             : running

status         :

ts             : 1970-01-01T00:00:00.000+00:00

type           : controller

version        : 0x14

# firmware.CompRunning

childAction    :

descr          :

dn             : sys/ch/supslot-1/sup/fpga-2/runnin

expectedVer    : 0x4

internalLabel  :

modTs          : never

mode           : normal

monPolDn       : uni/fabric/monfab-default

operSt         : ok

rn             : running

status         :

ts             : 1970-01-01T00:00:00.000+00:00

type           : controller

version        : 0x4

Si la versión de FPGA en ejecución no coincide con la versión de FPGA esperada, se puede actualizar con los pasos que se encuentran en el capítulo "Detección de fabric", sección "Reemplazo de dispositivo" en el escenario "EPLD de columna/hoja/FPGA incorrecto, F1582".

Check09: verificación SSL

Check09 - SSL check [check]

SSL certificate details are valid

La comunicación SSL se utiliza entre todos los nodos de fabric para garantizar el cifrado del tráfico del plano de control. El certificado SSL utilizado se instala durante la fabricación y se genera en función del número de serie del chasis. El formato del asunto debe ser el siguiente:

subject= /serialNumber=PID:N9K-C93xxxxx SN:FDOxxxxxxxx/CN=FDOxxxxxxx

Para validar el certificado SSL durante la detección de un switch, utilice el siguiente comando.

(none)# cd /securedata/ssl && openssl x509 -noout -subject -in server.crt

subject= /serialNumber=PID:N9K-C93180YC-EX SN:FDO20432LH1/CN=FDO20432LH1

Tenga en cuenta que lo anterior sólo funcionará como usuario no raíz si el nodo de switch aún está en detección.

El número de serie del chasis se puede encontrar con el siguiente comando.

(none)# show inventory

NAME: "Chassis",  DESCR: "Nexus C93180YC-EX Chassis"

PID: N9K-C93180YC-EX     ,  VID: V00  ,  SN: FDO20160TPS

...

Además, el certificado debe ser válido en el momento actual. Para ver las fechas válidas del certificado, utilice el indicador '-dates' en el comando openssl.

(none)# cd /securedata/ssl && openssl x509 -noout -dates -in server.crt

notBefore=Nov 28 17:17:05 2016 GMT

notAfter=Nov 28 17:27:05 2026 GMT

Check10 — Política de descarga

Check10 - Downloading policies [FAIL]

Registration to all PM shards is not complete

Policy download is not complete

Una vez que la hoja tenga acceso IP al APIC, descargará su configuración del APIC y el APIC reconocerá que la descarga ha finalizado. El estado de este proceso se puede ver con el siguiente comando.

(none)# moquery -c pconsBootStrap

Total Objects shown: 1

# pcons.BootStrap

allLeaderAcked         : no

allPortsInService      : yes

allResponsesFromLeader : yes

canBringPortInService  : no

childAction            :

completedPolRes        : no

dn                     : rescont/bootstrap

lcOwn                  : local

modTs                  : 2019-09-27T22:52:48.729+00:00

rn                     : bootstrap

state                  : completed

status                 :

timerTicks             : 360

try                    : 0

worstCaseTaskTry       : 0

Check11 — Hora

Check11 - Checking time [ok]

2019-10-01 17:02:34

Esta comprobación muestra al usuario la hora actual. Si hay demasiado delta entre APIC y el tiempo del switch, la detección podría fallar. En el APIC, la hora se puede comprobar con el comando date.

apic1# date

Tue Oct  1 14:35:38 UTC 2019

Check12 — Módulo, PSU, comprobación del ventilador

Para que el switch tenga conectividad con otros dispositivos, los módulos deben estar activos y en línea. Esto se puede validar mediante los comandos 'show module' y 'show environment'.

(none)# show module

Mod  Ports  Module-Type                         Model              Status

---  -----  ----------------------------------- ------------------ ----------

1    54     48x10/25G+6x40/100G Switch          N9K-C93180YC-EX    ok

Mod  Sw              Hw

---  --------------  ------

1    14.2(1j)        0.3050

Mod  MAC-Address(es)                         Serial-Num

---  --------------------------------------  ----------

1    e0-0e-da-a2-f2-83 to e0-0e-da-a2-f2-cb  FDO20160TPS

Mod  Online Diag Status

---  ------------------

1    pass

(none)# show environment

Power Supply:

Voltage: 12.0 Volts

Power                              Actual        Total

Supply    Model                    Output     Capacity    Status

(Watts )     (Watts )

-------  -------------------  -----------  -----------  --------------

1        NXA-PAC-650W-PI              0 W        650 W       shut

2        NXA-PAC-650W-PI            171 W        650 W        ok

Actual        Power

Module     Model                     Draw    Allocated    Status

(Watts )     (Watts )

--------  -------------------  -----------  -----------  --------------

1         N9K-C93180YC-EX            171 W        492 W    Powered-Up

fan1      NXA-FAN-30CFM-B              N/A          N/A    Powered-Up

fan2      NXA-FAN-30CFM-B              N/A          N/A    Powered-Up

fan3      NXA-FAN-30CFM-B              N/A          N/A    Powered-Up

fan4      NXA-FAN-30CFM-B              N/A          N/A    Powered-Up

N/A - Per module power not available

Power Usage Summary:

--------------------

Power Supply redundancy mode (configured)                Non-Redundant(combined)

Power Supply redundancy mode (operational)               Non-Redundant(combined)

Total Power Capacity (based on configured mode)               650  W

Total Power of all Inputs (cumulative)                        650  W

Total Power Output (actual draw)                              171  W

Total Power Allocated (budget)                                N/A

Total Power Available for additional modules                  N/A

Fan:

------------------------------------------------------

Fan             Model                Hw         Status

------------------------------------------------------

Fan1(sys_fan1)  NXA-FAN-30CFM-B      --         ok

Fan2(sys_fan2)  NXA-FAN-30CFM-B      --         ok

Fan3(sys_fan3)  NXA-FAN-30CFM-B      --         ok

Fan4(sys_fan4)  NXA-FAN-30CFM-B      --         ok

Fan_in_PS1      --                   --         unknown

Fan_in_PS2      --                   --         ok

Fan Speed: Zone 1:  0x7f

Fan Air Filter : Absent

Temperature:

-----------------------------------------------------------------------------------

Module   Sensor                       MajorThresh   MinorThres   CurTemp     Status

(Celsius)     (Celsius)    (Celsius)

-----------------------------------------------------------------------------------

1        Inlet(1)                      70            42           35         normal

1        outlet(2)                     80            70           37         normal

1        x86 processor(3)              90            80           38         normal

1        Sugarbowl(4)                  110           90           60         normal

1        Sugarbowl vrm(5)              120           110          50         normal

Si un módulo no está en línea, vuelva a colocar el módulo y compruebe si hay discrepancias de FPGA, EPLD o BIOS.

Ejemplo de escenarios rotos

Situación 1: la primera hoja no aparece en la pertenencia al fabric

En esta situación, el usuario inicia sesión en APIC1 después de completar el script de configuración y no ha aparecido ningún switch en Fabric Membership. Para que la detección de la primera hoja se realice correctamente, el APIC debe recibir una detección DHCP de la hoja en la fase de detección.

Verifique que APIC1 esté enviando TLV LLDP que coincidan con los parámetros establecidos en el script de configuración.

apic1# acidiag run lldptool out eth2-1

Chassis ID TLV

MAC: e8:65:49:54:88:a1

Port ID TLV

MAC: e8:65:49:54:88:a1

Time to Live TLV

120

Port Description TLV

eth2-1

System Name TLV

apic1

System Description TLV

topology/pod-1/node-1

Management Address TLV

IPv4: 10.0.0.1

Ifindex: 4

Cisco Port State TLV

1

Cisco Node Role TLV

0

Cisco Node ID TLV

1

Cisco POD ID TLV

1

Cisco Fabric Name TLV

ACIFabric1

Cisco Appliance Vector TLV

Id: 1

IPv4: 10.0.0.1

UUID: c67d1076-a2a2-11e9-874e-a390922be712

Cisco Node IP TLV

IPv4:10.0.0.1

Cisco Port Role TLV

2

Cisco Infra VLAN TLV

3967

Cisco Serial Number TLV

FCH1929V153

Cisco Authentication Cookie TLV

1372058352

Cisco Standby APIC TLV

0

End of LLDPDU TLV

Valide también que APIC1 esté recibiendo LLDP del nodo de hoja conectado directamente.

apic1# acidiag run lldptool in eth2-1

Chassis ID TLV

MAC: e0:0e:da:a2:f2:83

Port ID TLV

Local: Eth1/1

Time to Live TLV

120

Port Description TLV

Ethernet1/1

System Name TLV

switch

System Description TLV

Cisco Nexus Operating System (NX-OS) Software 14.2(1j)

TAC support: http://www.cisco.com/tacCopyright (c) 2002-2020, Cisco Systems, Inc. All rights reserved.

System Capabilities TLV

System capabilities:  Bridge, Router

Enabled capabilities: Bridge, Router

Management Address TLV

MAC: e0:0e:da:a2:f2:83

Ifindex: 83886080

Cisco 4-wire Power-via-MDI TLV

4-Pair PoE supported

Spare pair Detection/Classification not required

PD Spare pair Desired State: Disabled

PSE Spare pair Operational State: Disabled

Cisco Port Mode TLV

0

Cisco Port State TLV

1

Cisco Serial Number TLV

FDO20160TPS

Cisco Model TLV

N9K-C93180YC-EX

Cisco Firmware Version TLV

n9000-14.2(1j)

Cisco Node Role TLV

1

Cisco Infra VLAN TLV

3967

Cisco Node ID TLV

0

End of LLDPDU TLV

Si APIC1 recibe LLDP del nodo de hoja conectado directamente, la hoja debe programar la VLAN infra en los puertos conectados al APIC. Esta programación VLAN se puede validar mediante el comando 'show vlan encap-id <x>', donde 'x' es la VLAN infra configurada.

(none)# show vlan encap-id 3967

VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

8    infra:default                    active    Eth1/1

VLAN Type  Vlan-mode

---- ----- ----------

8    enet  CE

Si la VLAN infra no se ha programado, verifique los problemas de cableado detectados por el nodo de hoja.

(none)# moquery -c lldpIf -f 'lldp.If.wiringIssues!=""'

Total Objects shown: 1

# lldp.If

id           : eth1/1

adminRxSt    : enabled

adminSt      : enabled

adminTxSt    : enabled

childAction  :

descr        :

dn           : sys/lldp/inst/if-[eth1/1]

lcOwn        : local

mac          : E0:0E:DA:A2:F2:83

modTs        : 2019-09-30T18:45:22.323+00:00

monPolDn     : uni/fabric/monfab-default

name         :

operRxSt     : enabled

operTxSt     : enabled

portDesc     :

portMode     : normal

portVlan     : unspecified

rn           : if-[eth1/1]

status       :

sysDesc      :

wiringIssues : infra-vlan-mismatch

Cuando el atributo de problemas de cableado se establece en 'infra-vlan-mismatch', la indicación es que la hoja ha aprendido de una VLAN infra diferente del valor que el APIC está enviando (el valor enviado del APIC se puede verificar usando el comando 'moquery -c lldpInst'). Este escenario puede ocurrir si la hoja recibe LLDP de un nodo que una vez fue parte de otro fabric. Esencialmente, un nodo en detección aceptará la primera VLAN infra recibida vía LLDP. Para resolver esto, elimine las conexiones entre esta hoja y los otros nodos ACI, excepto para el APIC, luego vuelva a cargar el switch con los comandos 'acidiag touch clean' y 'reload'. Una vez que el switch se haya iniciado, verifique que esté programada la infra VLAN correcta. Si esto es así, las conexiones se pueden restaurar en los otros nodos y el usuario puede continuar con la configuración del fabric de ACI.

Situación 2: otros APIC no se unen al clúster

En esta situación, se han detectado todos los nodos de fabric, pero APIC2 y 3 aún no se han unido al clúster APIC.

Valide los valores del script de configuración en los APIC. Los valores que deben coincidir son:

- Dominio de fabric

- ID de fabric

- grupo TEP

- VLAN Infra

- GIPo

- Tamaño del clúster

- Versión del firmware

apic1# cat /data/data_admin/sam_exported.config

Setup for Active and Standby APIC

fabricDomain = ACIFabric1

fabricID = 1

systemName =apic1

controllerID = 1

tepPool = 10.0.0.0/16

infraVlan = 3967

GIPo = 225.0.0.0/15

clusterSize = 3

standbyApic = NO

enableIPv4 = Y

enableIPv6 = N

firmwareVersion = 4.2(1j)

ifcIpAddr = 10.0.0.1

apicX = NO

podId = 1

oobIpAddr = 10.48.22.69/24

Verifique los problemas comunes con el comando 'acidiag cluster' en los 3 APIC.

apic1# acidiag cluster

Admin password:

Product-name = APIC-SERVER-M1

Serial-number = FCH1906V1XV

Running...

Checking Core Generation: OK

Checking Wiring and UUID: OK

Checking AD Processes: Running

Checking All Apics in Commission State: OK

Checking All Apics in Active State: OK

Checking Fabric Nodes: OK

Checking Apic Fully-Fit: OK

Checking Shard Convergence: OK

Checking Leadership Degration: Optimal leader for all shards

Ping OOB IPs:

APIC-1: 10.48.22.69 - OK

APIC-2: 10.48.22.70 - OK

APIC-3: 10.48.22.71 - OK

Ping Infra IPs:

APIC-1: 10.0.0.1 - OK

APIC-2: 10.0.0.2 - OK

APIC-3: 10.0.0.3 - OK

Checking APIC Versions: Same (4.2(1j))

Checking SSL: OK

Done!

Por último, utilice 'avread' para validar si estos ajustes coinciden en todos los APIC. Tenga en cuenta que este es un comando diferente del típico 'acidiag avread' que muestra un resultado similar, pero se analiza para facilitar el consumo.

apic1# avread

Cluster:

-------------------------------------------------------------------------

fabricDomainName        ACIFabric1

discoveryMode           PERMISSIVE

clusterSize             3

version                 4.2(1j)

drrMode                 OFF

operSize                3

APICs:

-------------------------------------------------------------------------

APIC 1                  APIC 2                  APIC 3

version           4.2(1j)                 4.2(1j)                 4.2(1j)

address           10.0.0.1                10.0.0.2                10.0.0.3

oobAddress        10.48.22.69/24          10.48.22.70/24          10.48.22.71/24

routableAddress   0.0.0.0                 0.0.0.0                 0.0.0.0

tepAddress        10.0.0.0/16             10.0.0.0/16             10.0.0.0/16

podId             1                       1                       1

chassisId         3c9e5024-.-5a78727f     573e12c0-.-6b8da0e5     44c4bf18-.-20b4f52&    cntrlSbst_serial  (APPROVED,FCH1906V1XV)  (APPROVED,FCH1921V1Q9)  (APPROVED,FCH1906V1PW)

active            YES                     YES                     YES

flags             cra-                    cra-                    cra-

health            255                     255                     255

apic1#

Situación 3: la columna no aparece en la pertenencia al fabric

En esta situación, se ha detectado la primera hoja en el fabric, pero no ha aparecido ninguna columna para su detección en el submenú Fabric Membership (Pertenencia al fabric).

Validar la conectividad física de la hoja a la columna. En el siguiente ejemplo, el switch de hoja está conectado a una columna mediante la interfaz e1/49.

leaf101# show int eth1/49

Ethernet1/49 is up

admin state is up, Dedicated Interface

Hardware: 1000/10000/100000/40000 Ethernet, address: 0000.0000.0000 (bia e00e.daa2.f3f3)

MTU 9366 bytes, BW 100000000 Kbit, DLY 1 usec

reliability 255/255, txload 1/255, rxload 1/255

Encapsulation ARPA, medium is broadcast

Port mode is routed

full-duplex, 100 Gb/s

...

Si el puerto se encuentra en un estado fuera de servicio, verifique en la columna que LLDP se ha recibido de la hoja conectada directamente.

(none)# show lldp neighbors

Capability codes:

(R) Router, (B) Bridge, (T) Telephone, (C) DOCSIS Cable Device

(W) WLAN Access Point, (P) Repeater, (S) Station, (O) Other

Device ID            Local Intf      Hold-time  Capability  Port ID

leaf102               Eth2/27         120        BR          Eth1/53

leaf103               Eth2/29         120        BR          Eth1/49

leaf101               Eth2/32         120        BR          Eth1/51

Total entries displayed: 3

Otra validación es verificar que no hay diferencia de versión entre la hoja y la columna. Si la hay, corrija la situación copiando la versión más reciente en /bootflash de la columna. Luego, configure el switch para que se inicie en el software con los siguientes comandos:

(none)# ls -alh /bootflash

total 3.0G

drwxrwxr-x  3 root admin 4.0K Oct  1 20:21 .

drwxr-xr-x 50 root root  1.3K Oct  1 00:22 ..

-rw-r--r--  1 root root  3.5M Sep 30 21:24 CpuUsage.Log

-rw-rw-rw-  1 root root  1.7G Sep 27 14:50 aci-n9000-dk9.14.2.1j.bin

-rw-r--r--  1 root root  1.4G Sep 27 21:20 auto-s

-rw-rw-rw-  1 root root     2 Sep 27 21:25 diag_bootup

-rw-r--r--  1 root root    54 Oct  1 20:20 disk_log.txt

-rw-rw-rw-  1 root root   693 Sep 27 21:23 libmon.logs

drwxr-xr-x  4 root root  4.0K Sep 26 15:24 lxc

-rw-r--r--  1 root root  384K Oct  1 20:20 mem_log.txt

-rw-r--r--  1 root root  915K Sep 27 21:10 mem_log.txt.old.gz

-rw-rw-rw-  1 root root   12K Sep 27 21:17 urib_api_log.txt

(none)# setup-bootvars.sh aci-n9000-dk9.14.2.1j.bin

In progress

In progress

In progress

In progress

Done

Si la nueva imagen se quita continuamente de la memoria de inicialización, asegúrese de que la carpeta esté menos de la mitad llena quitando las imágenes antiguas o el archivo auto-s; compruebe la utilización del espacio mediante 'df -h' en el switch.

Después de configurar la variable de arranque, recargue el switch y debería arrancar a la nueva versión.

La validación de FPGA, EPLD y BIOS puede ser necesaria después de la recarga. Consulte la subsección "Leaf/Spine EPLD/FPGA not Correct, F1582" para obtener más información sobre la resolución de problemas en este asunto.

Situación 4: tras la detección inicial del fabric, el clúster se aletea entre el ajuste completo y el estado degradado

Si esto ocurre después de una nueva configuración de fabric, puede deberse a un cableado incorrecto del APIC-M3 o APIC-L3 que se conecta al fabric. Puede confirmar este cableado incorrecto ejecutando "show lldp neighbors" en ambos switches de hoja conectados al APIC. Notará después de ejecutar esto varias veces que ambos switches de hoja están viendo la misma interfaz APIC.

La parte posterior de un servidor APIC-M3/L3 tiene el siguiente aspecto:

Parte posterior del servidor APIC-M3/L3

Tenga en cuenta que para un APIC-M3/L3, la tarjeta VIC tiene 4 puertos: ETH2-1, ETH2-2, ETH2-3 y ETH2-4, como se muestra a continuación:

Vista de APIC VIC 1455 con etiquetas

Las reglas para conectar el servidor APIC a los switches de hoja son las siguientes:

- Todos los puertos deben tener la misma velocidad, 10-Gigabit o 25-Gigabit.

- ETH2-1 y ETH2-2 es un par de canal de puerto, correspondiente a eth2-1 (salida 'ifconfig') del sistema operativo APIC.

- ETH2-3 y ETH2-4 es el otro par de canal de puerto, correspondiente a eth2-2 ('salida ifconfig') en APIC OS.

- Solo se permite una conexión por par de canal de puerto. Por ejemplo, conecte un cable a ETH2-1 o ETH2-2, y conecte otro cable a ETH2-3 o ETH2-4 (Nunca conecte ambos ETH en un par de canal de puerto. Esto provocará problemas de detección de fabric.).

Para mayor comprensión, a continuación se muestra una representación de la asignación de puertos VIC a enlace APIC.

Puertos VIC 1455: puerto de fabric redundante APIC