Introduzione
In questo documento viene descritto come risolvere i problemi relativi a un blocco Cisco Fabric Services (CFS) su uno switch Nexus serie 5000.
Premesse
CFS fornisce un'infrastruttura comune per la sincronizzazione automatica della configurazione nell'infrastruttura. Fornisce la funzione di trasporto e una ricca serie di servizi comuni alle applicazioni. CFS è in grado di rilevare gli switch compatibili con CFS nel fabric e le relative funzionalità applicative. Alcune delle applicazioni che è possibile sincronizzare utilizzando CFS su uno switch Nexus 5000 includono:
- arp
- callhome
- alias-dispositivo
- dhcp_snoop
- dpvm
- eth_port_sec
- fc-port-security
- fcdomain
- fctimer
- fscm
- fwm
- icmpv6
- igmp
- mcectest
- msp
- ntp
- rscn
- session-mgr
- fermata
- syslogd
- tapp
- vem_mgr
- vim
- vm
- vpc
Quando si configura un'applicazione che utilizza l'infrastruttura CFS, tale funzionalità avvia una sessione CFS e blocca l'infrastruttura. Quando un fabric è bloccato, il software Nexus non consente modifiche alla configurazione di uno switch, ad eccezione dello switch che mantiene il blocco. Il software Nexus emette anche un messaggio di errore che afferma "Operazione non riuscita. Fabric è già bloccato".
Se si avvia una sessione CFS che richiede un blocco dell'infrastruttura ma si dimentica di terminare la sessione, un amministratore può cancellare la sessione. Se si blocca un'infrastruttura in qualsiasi momento, il nome utente viene memorizzato nei riavvii e negli switchover. Se un altro utente (sullo stesso computer) tenta di eseguire attività di configurazione, i tentativi di tale utente vengono rifiutati e viene visualizzato il messaggio di errore "sessione attualmente di proprietà di un altro utente".
Problema
Un utente non è in grado di apportare modifiche relative alla configurazione per l'applicazione corrispondente, per la quale un blocco CFS è bloccato, oppure non è in grado di eseguire un aggiornamento software in servizio (ISSU) se il CFS è bloccato per la gestione delle sessioni.
Nell'elenco vengono visualizzati alcuni messaggi di errore comuni causati da un blocco CFS:
- Operazione non riuscita. Fabric già bloccato
- Sessione attualmente di proprietà di un altro utente
- Il servizio "cfs" ha restituito l'errore: Operazione non riuscita. Fabric già bloccato (0x40B30029)
Soluzione
Per cancellare un blocco CFS, è possibile procedere in due modi:
- Immettere il comando clear <application>session.
- Identificare l'applicazione SAP-ID e sbloccare la struttura per l'applicazione con il comando nascosto cfs internal unlock <sap-id>. Sap-ID è l'ID numerico assegnato in modo univoco a ciascun processo.
Questa procedura include entrambi i metodi:
- Convalida se il servizio CFS è bloccato e identifica l'applicazione interessata.
In questo output di esempio viene mostrato che il servizio CFS è attualmente bloccato per Virtual Port Channel (VPC):
cisco-N5k# show cfs lock
Application: vpc
Scope : Physical-eth
--------------------------------------------------------------
Switch WWN IP Address User Name User Type
--------------------------------------------------------------
20:00:00:2a:6a:6d:03:c0 0.0.0.0 CLI/SNMP v3
Total number of entries = 1
Cisco-N5k# show cfs lock name vpc
Scope : Physical-eth
--------------------------------------------------------------
Switch WWN IP Address User Name User Type
--------------------------------------------------------------
20:00:00:2a:6a:6d:03:c0 0.0.0.0 CLI/SNMP v3
Total number of entries = 1
cisco-N5k#
cisco-N5k# show system internal csm info trace
Thu Feb 19 13:20:40.856718 csm_get_locked_ssn_ctxt[515]: Lock not yet taken.
Thu Feb 19 11:21:11.106929 Unlocking DB, Lock Owner Details:Client:2 ID:-1
Thu Feb 19 11:21:11.104247 DB Lock Successful by Client:2 ID:-1
Mon Feb 16 20:45:16.320494 csm_get_locked_ssn_ctxt[515]: Lock not yet taken.
Mon Feb 16 20:45:14.223875 csm_get_locked_ssn_ctxt[515]: Lock not yet taken.
Mon Feb 16 20:44:59.40095 csm_get_locked_ssn_ctxt[515]: Lock not yet taken.
È inoltre possibile immettere il comando show cfs application per visualizzare le applicazioni che attualmente utilizzano CFS:
cisco-N5k# show cfs application
----------------------------------------------
Application Enabled Scope
----------------------------------------------
arp Yes Physical-eth
fwm Yes Physical-eth
ntp No Physical-fc-ip
stp Yes Physical-eth
vpc Yes Physical-eth
fscm Yes Physical-fc
igmp Yes Physical-eth
role No Physical-fc-ip
rscn No Logical
icmpv6 Yes Physical-eth
radius No Physical-fc-ip
fctimer No Physical-fc
syslogd No Physical-fc-ip
fcdomain No Logical
session-mgr Yes Physical-ip
device-alias Yes Physical-fc
Total number of entries = 16
- Cancellare il blocco CFS. Scegliere uno dei due metodi forniti in questo passaggio:
Metodo 1: Immettere il comando clear <application>session per cancellare il blocco.
In questo esempio viene cancellato un blocco CFS per l'applicazione NTP:
cisco-N5k#clear ntp session
Nota: Questo comando non è applicabile a tutte le applicazioni. Ad esempio, le applicazioni che rientrano nell'ambito "Physical-eth", quali Address Resolution Protocol (ARP), Forwarding Manager (FWM), Spanning Tree Protocol (STP), VPC, Internet Group Management Protocol (IGMP) e Internet Control Message Protocol (ICMP6). Per sbloccare la sessione, è necessario utilizzare il comando hidden del metodo 2.
Metodo 2: Identificare lo sap-id dell'applicazione e sbloccare l'infrastruttura con il comando nascosto cfs internal unlock <sap-id>.
cisco-N5k# show system internal sysmgr service all
Name UUID PID SAP state Start count Tag Plugin ID
---------------- ------- ---- ----- ----- ---------- ----- ---------
aaa 0x000000B5 3221 111 s0009 1 N/A 0
cert_enroll 0x0000012B 3220 169 s0009 1 N/A 0
Flexlink 0x00000434 [NA] [NA] s0075 None N/A 0
psshelper_gsvc 0x0000021A 3159 398 s0009 1 N/A 0
radius 0x000000B7 3380 113 s0009 1 N/A 0
securityd 0x0000002A 3219 55 s0009 1 N/A 0
tacacs 0x000000B6 [NA] [NA] s0075 None N/A 0
eigrp 0x41000130 [NA] [NA] s0075 None N/A 0
isis_fabricpath0x41000243 3876 436 s0009 1 N/A 0
vpc 0x00000251 3900 450 s0009 1 N/A 0 < <
vsan 0x00000029 3817 15 s0009 1 N/A 2
vshd 0x00000028 3149 37 s0009 1 N/A 0
vtp 0x00000281 3902 478 s0009 1 N/A 0
Identificare lo sap-id dall'output e sbloccare la struttura come mostrato nell'esempio seguente:
cisco-N5k# cfs internal unlock 450
Application Unlocked
cisco-N5k#
Nota: Il comando cfs internal unlock è un comando Nexus nascosto utilizzato per sbloccare il CFS ed è sicuro da eseguire in produzione.
- Per convalidare la soluzione, usare i seguenti comandi show:
cisco-N5k# show cfs lock name vpc
cisco-N5k#
cisco-N5k# show cfs internal session-history name vpc
--------------------------------------------------------
Time Stamp Source WWN Event
User Name Session ID
---------------------------------------------------------
Tue May 26 23:35:51 2015 20:00:00:05:73:d0:c0:00 LOCK_OBTAINED
admin 147513262
Tue May 26 23:53:52 2015 20:00:00:05:73:d0:c0:00 LOCK_CLEAR
admin 147513262
---------------------------------------------------------
Problemi noti
Di seguito sono riportati alcuni dei difetti noti del software relativi al servizio CFS:
- ID bug Cisco CSCtj40756 - Errore ISSU - "cfs" ha restituito l'errore:Fabric è già bloccato (0x40B30029)
- ID bug Cisco CSCue03528 - Database di sessione / Sincronizzazione configurazione / CFS bloccato su un lato senza commit