acidiag Command
To troubleshoot operations on the Cisco APIC, use the acidiag command.
Caution This command is not intended for every day operation of ACI. Running all forms of the command can
be very disruptive and cause major issues in your network if not used properly. Make sure you understand
the full effect on your fabric before running them.
Cluster Commands
acidiag
acidiag avread
acidiag fnvread
acidiag fnvreadex
Syntax Description Option Function
avread Displays APICs within the cluster. The avread output
includes:
• Cluster of —Operational cluster size
• out of targeted—The desired cluster size
• active= —Indicates whether the APIC is
reachable
• health= —The overall APIC health summary.
Displays services with degraded health scores.
• chassisID= —The known chassis IDs for a given
APIC.
Note Peer chassis IDs can be incorrect for
APICs not currently in the cluster.
acidiag Command
1
acidiag Command
acidiag Command
Option Function
bootcurr On the next boot, the APIC system will boot the
current APIC image in the Linux partition. This option
is not expected to normally be used.
bootother On the next boot, the APIC system will boot the
previous APIC image in the Linux partition. This
option is not expected to normally be used.
bond0test Disruptive test of the APIC connection to the leaf.
This is used for internal Cisco testing purposes only
and outside of that could cause issues with the APIC
connection to the fabric.
fnvread Displays the address and state of switch nodes
registered with the fabric.
fnvreadex Displays additional information for switch nodes
registered with the fabric.
linkflap Brings down and back up a specified APIC interface.
preservelogs APIC will archive current logs. During a normal
reboot this automatically occurs. This option can be
used prior to a hard reboot.
run Two available options are iptables-list and lldptool.
The iptables-list is used to display the Linux iptables,
which are controlled by the mgmt Tenant contracts.
lldptool is used to display lldp information which is
sent or received by the APIC.
rvread Summarizes the data layer state. The output shows a
summary of the data layer state for each service. The
shard view shows replicas in ascending order.
acidiag rvread service Displays the data layer state for a service on all shards
across all replicas.
Note For an example, see Examples, on page 6
acidiag rvread service shard Displays the data layer state for a service on a specific
shard across all replicas.
Note For an example, see Examples, on page 6
acidiag rvread service shard replica Displays the data layer state for a service on a specific
shard and replica.
Note For an example, see Examples, on page 6
validateimage Prior to loading an image into the firmware repository,
the image can be validated. Note that this function
runs as a normal part of the process of the image being
added into the repository.
acidiag Command
2
acidiag Command
acidiag Command
Option Function
validateenginxconf Validates the generated nginx configuration file on
APIC to ensure nginx can start with that configuration
file. This is meant for debug use, in cases where the
nginx webserver is not running on APIC.
Service IDs
The service IDs listed in the table below are also visible when entering the man acidiag command.
Table 1: Service IDs
Service ID
cliD 1
controller 2
eventmgr 3
extXMLApi 4
policyelem 5
policymgr 6
reader 7
ae 8
topomgr 9
observer 10
dbgr 11
observerelem 12
dbgrelem 13
vmmmgr 14
nxosmock 15
bootmgr 16
appliancedirector 17
adrelay 18
ospaagent 19
vleafelem 20
dhcpd 21
acidiag Command
3
acidiag Command
acidiag Command
Service ID
scripthandler 22
idmgr 23
ospaelem 24
osh 25
opflexagent 26
opflexelem 27
confelem 28
vtap 29
snmpd 30
opflexp 31
analytics 32
policydist 33
plghandler 34
Table 2: Data States
State ID
COMATOSE 0
NEWLY_BORN 1
UNKNOWN 2
DATA_LAYER_DIVERGED 11
DATA_LAYER_DEGRADED_LEADERSHIP 12
DATA_LAYER_ENTIRELY_DIVERGED 111
DATA_LAYER_PARTIALLY_DIVERGED 112
DATA_LAYER_ENTIRELY_DEGRADED_LEADERSHIP 121
DATA_LAYER_PARTIALLY_DEGRADED_LEADERSHIP 122
FULLY_FIT 255
System Keywords
acidiag [{ start | stop | restart }] [{ mgmt | xinetd }]
acidiag installer -u imageurl -c
acidiag Command
4
acidiag Command
acidiag Command
acidiag reboot
acidiag touch [{ clean | setup }]
acidiag verifyapic
Syntax Description Option Function
-c Specifies a clean install
-u Specifies a URL for the APIC image.
imageurl Specifies an APIC image.
installer Installs a new image on the APIC, -c for clean install
mgmt Specifies all services on the APIC.
reboot Reboots the APIC.
restart Restarts services on an APIC.
start Starts services on an APIC.
stop Stops services on an APIC.
touch [clean | setup] Resets the APIC configuration.
• The clean option removes all policy data while
retaining the APIC network configuration (such
as fabric name, IP address, login)
• The setup option removes both policy data and
the APIC network configuration.
verifyapic Displays the APIC software version.
xinetd Specifies xinetd (extended internet daemon) service,
which controls the ssh and telnet daemons.
Diagnostic Keywords
acidiag crashsuspecttracker
acidiag dbgtoken
acidiag version
Syntax Description Option Function
crashsuspecttracker Tracks states of a service or data subset that indicate
a crash.
dbgtoken Generates a token used to generate a root password.
This is to be used as directed while working with the
TAC as needed.
acidiag Command
5
acidiag Command
acidiag Command
Option Function
version Displays the APIC ISO software version.
Examples
The following examples show how to use the acidiag command:
apic1# acidiag version 2.2.1o
apic1# acidiag verifyapic
openssl_check: certificate details
subject= CN=ABC12345678,serialNumber=PID:APIC-SERVER-L1 SN:ABC12345678
issuer= CN=Cisco Manufacturing CA,O=Cisco Systems
notBefore=Sep 28 17:17:42 2016 GMT
notAfter=Sep 28 17:27:42 2026 GMT
openssl_check: passed
ssh_check: passed
all_checks: passed
apic1# acidiag avread
Local appliance ID=1 ADDRESS=[Link] TEP ADDRESS=[Link]/16
CHASSIS_ID=10220833-ea00-3bb3-93b2-ef1e7e645889
Cluster of 3 lm(t):1(2014-07-12T19:54:04.877+00:00) appliances
(out of targeted 3 lm(t):3(2014-07-12T19:55:03.442+00:00))
with FABRIC_DOMAIN name=mininet set to version=1.0(0.414)
lm(t):3(2014-07-12T19:55:13.564+00:00)
appliance id=1 last mutated at 2014-07-12T19:46:06.831+00:00 address=[Link] tep
address=[Link]/16
oob address=[Link]/24 version=1.0(0.414) lm(t):1(2014-07-12T19:54:05.146+00:00)
chassisId=10220833-ea00-3bb3-93b2-ef1e7e645889 lm(t):1(2014-07-12T19:54:05.146+00:00)
commissioned=1 registered=1 active=yes(zeroTime)
health=(applnc:255 lm(t):1(2014-07-12T20:01:22.934+00:00) svc's)
appliance id=2 last mutated at 2014-07-12T19:51:10.649+00:00 address=[Link] tep
address=[Link]/16
oob address=[Link]/24 version=1.0(0.414) lm(t):2(2014-07-12T19:54:05.064+00:00)
chassisId=5d74122c-2ab9-3ccb-b06d-f620d5e20ccd lm(t):2(2014-07-12T19:54:05.064+00:00)
commissioned=1 registered=1 active=yes(2014-07-12T19:51:10.651+00:00)
health=(applnc:255 lm(t):2(2014-07-12T20:01:22.442+00:00) svc's)
appliance id=3 last mutated at 2014-07-12T19:54:05.028+00:00 address=[Link] tep
address=[Link]/16
oob address=[Link]/24 version=1.0(0.414) lm(t):3(2014-07-12T19:54:05.361+00:00)
chassisId=71355d49-6fe7-3a78-a361-72d6c1e3360c lm(t):3(2014-07-12T19:54:05.361+00:00)
commissioned=1 registered=1 active=yes(2014-07-12T19:54:05.029+00:00)
health=(applnc:255 lm(t):3(2014-07-12T20:01:22.892+00:00) svc's)
clusterTime=<diff=0 common=2014-07-14T16:52:20.343+00:00 local=2014-07-14T16:52:20.343+00:00
pF=<displForm=0
offsSt=0 offsVlu=0 lm(t):3(2014-07-12T19:55:03.750+00:00)>>
---------------------------------------------
apic1# acidiag rvread 6 3 1
(6,3,1) st:6 lm(t):3(2014-10-16T08:48:20.238+00:00) le: reSt:LEADER voGr:0 cuTerm:0x19
lCoTe:0x18
lCoIn:0x1800000000001b2a veFiSt:0x31 veFiEn:0x31 lm(t):3(2014-10-16T08:48:20.120+00:00)
acidiag Command
6
acidiag Command
acidiag Command
lastUpdt 2014-10-16T09:07:00.214+00:00
---------------------------------------------
clusterTime=<diff=65247252 common=2014-10-16T09:07:01.837+00:00
local=2014-10-15T14:59:34.585+00:00
pF=<displForm=0 offsSt=0 offsVlu=0 lm(t):3(2014-10-16T04:50:08.714+00:00)>>
apic1# acidiag rvread 6 3
(6,3,1) st:6 lm(t):3(2014-10-16T08:48:20.238+00:00) le: reSt:LEADER voGr:0 cuTerm:0x19
lCoTe:0x18
lCoIn:0x1800000000001b2a veFiSt:0x31 veFiEn:0x31 lm(t):3(2014-10-16T08:48:20.120+00:00)
lastUpdt 2014-10-16T09:08:30.240+00:00
(6,3,2) st:6 lm(t):1(2014-10-16T08:47:25.323+00:00) le: reSt:FOLLOWER voGr:0 cuTerm:0x19
lCoTe:0x18
lCoIn:0x1800000000001b2a veFiSt:0x49 veFiEn:0x49 lm(t):1(2014-10-16T08:48:20.384+00:00)
lp: clSt:2
lm(t):1(2014-10-16T08:47:03.286+00:00) dbSt:2 lm(t):1(2014-10-16T08:47:02.143+00:00)
stMmt:1
lm(t):0(zeroTime) dbCrTs:2014-10-16T08:47:02.143+00:00 lastUpdt
2014-10-16T08:48:20.384+00:00
(6,3,3) st:6 lm(t):2(2014-10-16T08:47:13.576+00:00) le: reSt:FOLLOWER voGr:0 cuTerm:0x19
lCoTe:0x18
lCoIn:0x1800000000001b2a veFiSt:0x43 veFiEn:0x43 lm(t):2(2014-10-16T08:48:20.376+00:00)
lastUpdt 2014-10-16T09:08:30.240+00:00
---------------------------------------------
clusterTime=<diff=65247251 common=2014-10-16T09:08:30.445+00:00
local=2014-10-15T15:01:03.194+00:00
pF=<displForm=0 offsSt=0 offsVlu=0 lm(t):3(2014-10-16T04:50:08.714+00:00)>>
acidiag Command
7
acidiag Command
acidiag Command
acidiag Command
8