概要
このドキュメントでは、ACIのデバイス交換シナリオを理解し、トラブルシューティングする手順について説明します。
背景説明
このドキュメントの内容は、 Troubleshooting Cisco Application Centric Infrastructure, Second Edition 特にFabric Discovery(FPD)を確認します。 医療機器交換 章
概要
ACIファブリックの進化に伴い、次のようなさまざまなコンポーネントの交換が必要になります。APIC、リーフスイッチ、スパインスイッチ、およびIPNデバイス。交換の最も一般的な理由は、RMAとハードウェアアップグレードです。これらの手順はシスコのインストール/アップグレードガイドに詳しく記載されており、交換前に最新のガイドをお読みください。このセクションでは、フードの下での手順の動作について詳しく説明します。最も一般的なトラブルシューティングシナリオをいくつか紹介します。
手順と検証
注:ACIスイッチバージョン5.2(3)以降、検出されたACIファブリックスイッチに接続されたNXOSスイッチは、POAPを使用してACIスイッチに変換できます。
ハードウェアの交換
リーフ
NXOSソフトウェアを実行しているRMAデポからのリーフが到着します。「問題:リーフをACIモードに正しく変換するためにNXOSモードで着信します。別のファブリックのリーフまたは以前の設定を使用している場合は、「acidiag touch clean」コマンドと「reload」コマンドを使用してください。
上記の手順が完了し、新しいリーフスイッチを登録する準備が整ったら、[Remove from Controller]オプションを使用して、交換するリーフをファブリックから削除します。
[Remove from Controller]オプションを使用すると、APICからノードが完全に削除され、APICによって割り当てられたノードID、SN関連付け、およびTEPアドレスが解放されます。これらのプロセスは、スイッチノードを交換するときに必要です。[Decommission]オプションは、同じノードが同じノードIDとSNでファブリックに再参加することを期待する場合にのみ使用されます。
置き換えるリーフスイッチが[Fabric Membership] ページに表示されなくなると、新しいリーフをスパインインターフェイス経由でファブリックに接続できます。リーフがAPICによって検出されると、ファブリックインベントリに表示され、登録の準備が整います。置き換え前のデバイスがノードIDを解放しておらず、新しいスイッチが同じノードIDで登録されている場合、IDが既に別のリーフノードに関連付けられていることを示すエラーがスローされます。この障害はしばらくすると解消されるはずです。新しいノードが[Fabric Membership]サブメニューに表示されない場合は、ケーブル配線に問題がある可能性があります。これは、新しく接続されたリーフスイッチに接続されているスパインスイッチで「show lldp neighbors detail」コマンドを使用してLLDPネイバーを表示することで確認できます。ファブリック検出プロセスの詳細については、「ファブリックの初期設定」の章を参照してください。
インフラストラクチャVLANが変更された場合は、すべてのリーフノードを同時にクリーンリブートする必要があります。すべてのリーフスイッチが同時にクリーニングされない場合、クリーンなリロードされたスイッチはオンラインになり、まだクリーニングされていないリーフからLLDPを介して古いインフラストラクチャVLANを受信します。クリーンなリロードされたリーフはAPICに登録できません。詳細については、「初期ファブリックセットアップ」の章を参照してください。
プラットフォームの制限により、VPCペアをGen1とGen2以上のリーフスイッチの組み合わせにすることはできません。ただし、執筆時点では、Gen2以上のリーフは、他のGen2以上のリーフと混在できます。
スパイン
リーフと同様に、スパインのHW(モジュラスパインなど)に応じて、NXOSモードで到達する可能性があります。「問題:変換を実行するシナリオの下でNXOSモードに到達します。
スパインスイッチを交換する際には、BGPルートリフレクタ機能を考慮する必要があります。ベストプラクティスとして、レイヤ3 Cisco ACIファブリックのBGPルートリフレクタとして設定されたスパインスイッチが少なくとも2つ必要です。この設定は、[Route Reflector Nodes]の[System] > [System Settings] > [BGP Route Reflectors]にあります。スパインスイッチを交換または取り外す場合は、1つのアクティブなルートリフレクタを維持するために適切な設定変更が行われていることを確認し、変更が完了した後で少なくとも2つのアクティブなルートリフレクタが存在することを確認します。
BGPルートリフレクタの詳細については、「管理とコアサービス」の章の「ポッドポリシー:BGP RR/日時/SNMP」の項を参照してください。
APIC
APIC交換を実行する際に最も重要な考慮事項は、既存のAPICクラスタの健全性です。交換の前に、クラスタ内のすべてのAPICがFully Fitとして報告される必要があります。4.2では、CLIを使用してAPICクラスタの状態を確認するための追加ツールが導入されました。
apic1# acidiag cluster
Admin password:
Product-name = APIC-SERVER-L2
Serial-number = FCH2206W0RK
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: 192.168.4.20 - OK
Ping Infra IPs:
APIC-1: 10.0.0.1 - OK
Checking APIC Versions: Same (4.2(1i))
Checking SSL: OK
Done!
APICを交換する場合は、APICの使用停止を実行する前に、交換するAPICの初期設定の変数を書き留めておいてください。
apic1# cat /data/data_admin/sam_exported.config
Setup for Active and Standby APIC
fabricDomain = POD37
fabricID = 1
systemName =apic1
controllerID = 1
tepPool = 10.0.0.0/16
infraVlan = 3937
GIPo = 225.0.0.0/15
clusterSize = 3
standbyApic = NO
enableIPv4 = Y
enableIPv6 = N
firmwareVersion = 4.2(1i)
ifcIpAddr = 10.0.0.1
apicX = NO
podId = 1
oobIpAddr = 10.48.176.57/24
新しいAPICを正しいソフトウェアバージョンで準備し、前述の初期設定の値を再入力します。初期セットアップが完了し、APICが完全に起動したら、クラスタ内の他のAPICの1つのUIからファブリックにAPICを再コミットします。
IPNデバイスの交換
マルチポッド環境では、IPN(Inter-Pod Network)に使用されているデバイスの1つを交換する必要がある場合があります。 置き換えの前に、IPNネットワークでPIM Bidirectional Rendezvous Point RedundancyがPhantom RPの形式で設定されている必要があります。ファントムRPが設定されていない場合、交換されたノードがRPであれば、PIMコンバージェンスが発生し、IPNを介して送信されるすべてのBUMトラフィックでパケット損失が発生します。
ファントムRPの設定方法の詳細については、「マルチポッドディスカバリ」の章の「RP設定」を参照してください。
APIC/リーフ/スパインのクリーンリロード
特定のシナリオでは、ファブリックに参加しないリーフ/スパインを回復するための最良のオプションは、デバイスのクリーンリロードを実行することです。
アップグレードの順番を待っているデバイスでクリーンリロードを実行することは推奨されません。どのデバイスのクリーンリロードにも時間がかかる場合があります。
「acidiag touch」コマンドには、クリーンとセットアップの2つのオプションがあります。cleanオプションは、APICネットワーク設定(ファブリック名、IPアドレス、ログインなど)を維持したまま、すべてのポリシーデータを削除します。 setupオプションは、ポリシーデータとAPICネットワーク設定の両方を削除します。Pod IDを変更する必要があり、通常は管理ネットワークも更新する必要があるため、セットアップオプションはPod間でデバイスを移動するときに最も一般的に使用されます。
APIC
fab1-apic1# acidiag touch clean
This command will wipe out this device, Proceed? [y/N] y
fab1-apic1# acidiag reboot
This command will restart this device, Proceed? [y/N] y
リーフ/スパイン
fab1-leaf101# acidiag touch clean
This command will wipe out this device, Proceed? [y/N] y
fab1-leaf101# reload
This command will reload the chassis, Proceed (y/n)? [n]: y
「acidiag touch clean」コマンドは、.cleanという名前の隠しファイルを/mnt/pssのリーフに配置することで機能します。リーフがブートされると、.cleanファイルが存在するかどうかを確認するシェルスクリプトが実行されます。/mnt/pssに.cleanファイルが存在する場合、ポリシー設定は消去され、APICから設定が再ダウンロードされます。このコマンドを入力してもノードがリロードされない場合、ファイルは存在し、touch cleanコマンドを入力してからの経過時間に関係なく、次回のリロード時にポリシーが消去されます。
トラブルシューティングのシナリオ
問題:NXOSモードで到着
確認
スイッチがRMAで出荷されると、Power On Auto Provisioning(POAP)プロセスでまだ設定されていないNXOSソフトウェアがスイッチに付属している場合があります。ユーザがこのデバイスにコンソール接続すると、次のようなメッセージが表示されます。
自動プロビジョニングを中止し、通常のセットアップを続行しますか?(はい/いいえ)
デバイスがすでにPOAPを通過している場合、リーフがスタンドアロンNXOSコードを実行しているかどうかを判別する最も簡単な方法は、「show version」出力の「NXOS image file」行を探すことです。このような出力がある場合、リーフはスタンドアロンコードを実行しており、ACIモードに変換する必要があります。キックスタートイメージとシステムイメージの存在は、ACIイメージを実行しているリーフ上でのみ確認できます。イメージ自体を確認すると、スタンドアロンではn9000、ACIではaci-n9000になります。
スタンドアロンNXOS
nxos-n9k# show version
Cisco Nexus Operating System (NX-OS) Software
.
.
.
Software
BIOS: version 07.17
NXOS: version 6.1(2)I3(4)
BIOS compile time: 09/10/2014
NXOS image file is: bootflash:///n9000-dk9.6.1.2.I3.4.bin
NXOS compile time: 3/18/2015 0:00:00 [03/18/2015 07:49:10]
ACI
aci-leaf101# show version
Cisco Nexus Operating System (NX-OS) Software
.
.
.
Software
BIOS: version 07.66
kickstart: version 14.2(1i) [build 14.2(1i)]
system: version 14.2(1i) [build 14.2(1i)]
PE: version 4.2(1i)
BIOS compile time: 06/11/2019
kickstart image file is: /bootflash/aci-n9000-dk9.14.2.1i.bin
kickstart compile time: 09/07/2019 10:25:16 [09/07/2019 10:25:16]
system image file is: /bootflash/auto-s
system compile time: 09/07/2019 10:25:16 [09/07/2019 10:25:16]
解決方法
スイッチがNXOSコードを実行して出荷された場合は、ACIモードに変換する必要があります。スイッチは、ブートフラッシュ内のNXOSとACIイメージの両方とともに出荷される必要がありますが、必ずしもそうとは限りません。ACIイメージは「aci-n9000」で始まります。 ACIイメージが存在しない場合は、ブートフラッシュに手動でロードする必要があります。これは、USB接続(ローカルアクセスが必要)またはAPICから直接SCPを介して実行できます(両方のデバイスが管理ネットワーク経由で接続されていると仮定)。 SCP経由でイメージをコピーする手順は次のとおりです。
1. nexus-9000(config)# feature scp-server
2. apic1# scp -r /firmware/fwrepos/fwrepo/switch-image-name admin@standalone_switch:switch-image-name
その後、リーフはNXOSイメージをブートしないように設定し、設定を保存し、ブートステートメントをACIに変更する必要があります。
1. (config)# no boot nxos
2. (config)# copy run start
3. (config)# boot aci bootflash:
4. (config)# reload
問題:リーフ/スパインEPLD/FPGAが正しくありません。F1582
確認
Nexus 9000 ACIスイッチの障害には、次の障害が表示されます。
F1582 FPGAバージョンの不一致が検出されました。実行中のバージョン:0x(z)予期されるバージョン:0x(y)
APIC CLIから、障害F1582のすべてのインスタンスを検索します。
apic1# moquery -c faultInst -f 'fault.Inst.code=="F1582"'
EPLDメモ
Cisco Nexus 9000シリーズACIモードスイッチには、すべてのモジュールにハードウェア機能を提供する複数のプログラマブル論理デバイス(PLD)が含まれています。シスコでは、ハードウェア機能を強化したり、既知の問題を解決したりするために、Electronic Programmable Logic Device(EPLD)イメージのアップグレードを提供しています。PLDには、電子プログラマブルロジックデバイス(EPLD)、フィールドプログラマブルゲートアレイ(FPGA)、および複合プログラマブルロジックデバイス(CPLD)が含まれますが、ASICは含まれません。
EPLDという用語は、FPGAとCPLDの両方をカバーするために使用されます。
一部のモジュール機能にEPLDを使用する利点は、これらの機能をアップグレードする必要がある場合に、ハードウェアを交換するのではなく、ソフトウェアイメージをアップグレードすることです。
I/OモジュールのEPLDイメージアップグレードでは、アップグレード中にモジュールの電源を一時的に切る必要があるため、モジュールを通過するトラフィックが中断します。モジュラシャーシでは、システムは一度に1つのモジュールに対してEPLDアップグレードを実行します。そのため、一度に1つのモジュールを通過するトラフィックだけがアップグレードによって中断されます。
シスコでは、各リリースで最新のEPLDイメージを提供しています。通常、これらのイメージは以前のリリースと同じですが、一部のイメージが更新されることがあります。これらのEPLDイメージの更新は、特に指定がない限り必須ではありません。シスコがEPLDイメージのアップグレードを提供すると、これらのリリースノートにその提供状況が通知され、シスコのWebサイトからダウンロードできます。
新しいEPLDイメージが使用可能な場合は、ネットワーク環境がある程度のトラフィック中断を許容できるメンテナンス期間が必要な場合は、常にアップグレードが推奨されます。一般に、EPLDのアップグレードは、ソフトウェアのアップグレードの結果として新しいハードウェア機能が追加されたときに必要になります。
すでにACIモードになっている間にEPLDファームウェアをアップグレードする必要がある理由はさまざまです。
- EPLDバージョンでは、Cisco NX-OSからACIブートモードに変換する前にアップグレードが必要で、FPGA/EPLDはアップグレードされませんでした。
- リーフ/スパインは(APICからのポリシーアップグレードの代わりに)手動でアップグレードされました。これにはEPLDアップグレードは含まれません。
リーフまたはスパインがファブリックに追加されると、新しいバージョンのEPLDが利用可能なポリシーアップグレード(APICファームウェアタブから開始される通常のアップグレード)でEPLDが自動的にアップグレードされます。
解決方法
古いバージョンのACIでは、問題のリーフ/スパインをダウングレードしてからアップグレードする必要がありましたが、11.2(1m)の時点で、管理ユーザが使用できるシェルスクリプトが2つあり、プロセスが大幅に簡素化されています。
fab1-leaf101# /bin/check-fpga.sh FpGaDoWnGrAdE
fab1-leaf101# /usr/sbin/chassis-power-cycle.sh
「/usr/sbin/chassis-power-cycle.sh」スクリプトは、単にソフトウェアの再起動である「reload」に比べて、電力をハードリセットします。EPLDをアップグレードする際は、電源を完全に取り外して、ラインカードのファームウェアを再プログラムする必要があります。「/usr/sbin/chassis-power-cycle.sh」が使用できないか機能しない場合は、電源ケーブルを少なくとも30秒間取り外してから、電源を回復するために再接続する必要があります。