はじめに
このドキュメントでは、ACI における TechSupport と設定ファイルについて解説します。
問題の背景
ACI における TechSupport は、元々設定ファイルを含んでおりませんでした。Standalone の Nexus switch や UCS の TechSupport (show tech) には含まれており、ACI についても同様にすることが望まれたため、以下の enhancement にて APIC の release 1.0(4x) 以降、および 1.1(x) 以降では設定ファイルが含まれるようになっております。
CSCut83632 APIC show tech doesn't include configuration.
TechSupport の取得、設定ファイルの取得
TechSupport や設定ファイルの取得方法については CCO ドキュメントに記載がございます。また、以下のドキュメントもご参照ください。
設定ファイルを含んだ TechSupport
上記 CSCut83632 の enhancement が適用された release 1.1(1j) にて TechSupport の確認例をお見せします。
まず、APIC の TechSupport (圧縮ファイル) を展開すると、複数フォルダと共に "cli.debug" というファイルがあります。cli.debug の中を見ると、TechSupport 取得時にどのようなコマンドを実行したかがわかります。
/debug/apic1/vmmmgr/comp/prov-VMware/*/counters/*: No such file or directory
Output dir=/var/log/dme/oldlog/cli1437702423536
Initing thread pool
Executing cmd=timeout 240 loginshell -e username=admin -e remote=0 -e unix_user_id=15374 -e groupuid=15374 -e inactive_timeout=65536 -e webtoken=/W/QBBI//FMfR/KCBNHlOnOAQMU89+QGh8A4Seykba90fm5GUmKvq6ASIyc3K57Miy/u7VMC+vcnt1/8C0JRLv/7i0keabiSJ/49aTkyXCHyyxpLPxvRwJ+mad71vRaYuNNfrBypmS/R3s582pzAzUbeHEkXhssU4as00DNG52g= -c "echo COMMAND:showconfig;echo SUMMARY:user_config;showconfig" > /var/log/dme/oldlog/cli1437702423536/user_config ; starting at Fri Jul 24 10:47:03 2015
Executing cmd=timeout 240 loginshell -e username=admin -e remote=0 -e unix_user_id=15374 -e groupuid=15374 -e inactive_timeout=65536 -e webtoken=/W/QBBI//FMfR/KCBNHlOnOAQMU89+QGh8A4Seykba90fm5GUmKvq6ASIyc3K57Miy/u7VMC+vcnt1/8C0JRLv/7i0keabiSJ/49aTkyXCHyyxpLPxvRwJ+mad71vRaYuNNfrBypmS/R3s582pzAzUbeHEkXhssU4as00DNG52g= -c "echo COMMAND:more /debug/`hostname`/vmmmgr/comp/prov-VMware/*/counters/* | cat;echo SUMMARY:ifc_vmm_ctrlrcounters;more /debug/`hostname`/vmmmgr/comp/prov-VMware/*/counters/* | cat" > /var/log/dme/oldlog/cli1437702423536/ifc_vmm_ctrlrcounters ; starting at Fri Jul 24 10:47:03 2015
-----snip-----
この例では、'showconfig' というコマンドが実行され、その出力が "/var/log/dme/oldlog/cli1437702423536/user_config" というファイルに保存されていることがわかります。
実際に TechSupport 内に "/var/log/dme/oldlog/cli1437702423536/user_config" というファイルが含まれており、その中を見ると以下のような XML 形式の設定ファイルであることが確認できます。
COMMAND:showconfig
SUMMARY:user_config
<?xml version="1.0" ?>
<polUni status="modified">
<fvTenant name="infra" status="modified">
<fvAp name="access" status="modified">
<fvAEPg name="default" status="modified"/>
</fvAp>
<fvBD name="default" status="modified">
<fvSubnet ip="10.0.0.30/27"/>
</fvBD>
<igmpSnoopPol name="default"/>
<fvCtx name="overlay-1" status="modified"/>
<aaaDomainRef name="infra"/>
</fvTenant>
<fabricInst status="modified">
<monCommonPol status="modified">
<statsHierColl granularity="1w"/>
<syslogSystemMsgP status="modified">
<syslogFacilityFilter facility="daemon"/>
<syslogFacilityFilter facility="mail"/>
<syslogFacilityFilter facility="default"/>
<syslogFacilityFilter facility="user"/>
<syslogFacilityFilter facility="syslog"/>
<syslogFacilityFilter facility="news"/>
<syslogFacilityFilter facility="auth"/>
<syslogFacilityFilter facility="cron"/>
<syslogFacilityFilter facility="lpr"/>
<syslogFacilityFilter facility="authpriv"/>
<syslogFacilityFilter facility="uucp"/>
<syslogFacilityFilter facility="kern"/>
<syslogFacilityFilter facility="ftp"/>
<syslogFacilityFilter facility="local3"/>
<syslogFacilityFilter facility="local2"/>
<syslogFacilityFilter facility="local1"/>
<syslogFacilityFilter facility="local0"/>
<syslogFacilityFilter facility="local7"/>
<syslogFacilityFilter facility="local6"/>
<syslogFacilityFilter facility="local5"/>
<syslogFacilityFilter facility="local4"/>
</syslogSystemMsgP>
<statsHierColl granularity="1qtr"/>
<statsHierColl granularity="1mo"/>
<statsHierColl granularity="15min"/>
<statsHierColl granularity="1year"/>
<statsHierColl granularity="5min"/>
<statsHierColl granularity="1d"/>
<statsHierColl granularity="1h"/>
<faultLcP code="generic"/>
</monCommonPol>
<datetimeFormat name="default"/>
-----snip-----