Cisco APIC トラブルシューティング ガイド
クラスタのトラブルシューティング
クラスタのトラブルシューティング

クラスタのトラブルシューティング

クラスタ管理の注意事項

APIC クラスタは複数の APIC コントローラで構成され、ACI ファブリックに対する統合されたリアルタイム モニタリング、診断および構成管理機能がオペレータに提供されます。 最適なシステム パフォーマンスが得られるように、APIC クラスタを変更する場合は次のガイドラインに従ってください。


(注)  


クラスタへの変更を開始する前に、必ずその状態を確認してください。 クラスタに対して計画した変更を実行するときは、クラスタ内のすべてのコントローラが正常である必要があります。 クラスタ内の 1 つ以上の APIC コントローラが正常でない場合は、先に進む前にその状況を修復してください。 APIC クラスタの健全性の問題の解決についての詳細は、『Cisco APIC トラブルシューティング ガイド』を参照してください。


クラスタを管理する場合、次の一般的ガイドラインに従ってください。

  • 現在クラスタにない APIC からのクラスタ情報は無視します。正確なクラスタ情報ではありません。

  • クラスタ スロットには、APIC シャーシ ID が含まれます。 スロットを設定すると、割り当てられたシャーシ IDAPIC を解放するまでそのスロットは使用できません。

  • APIC ファームウェア アップグレードが進行中の場合は、それが完了し、クラスタが完全に適合するまでクラスタへの他の変更はしないでください。

APIC クラスタ サイズの拡大

APIC クラスタ サイズを拡大するには、次のガイドラインに従ってください。

  • クラスタの拡大がファブリックのワークロードの要求に影響しないときに、クラスタの拡大を予定します。

  • ハードウェア インストレーション ガイドの手順に従って、新しい APIC コントローラを準備します。 PING テストでインバンド接続を確認します。

  • クラスタの目標サイズを既存のクラスタ サイズ コントローラ数に新規コントローラ数を加えた数になるように増やします。 たとえば、既存のクラスタ サイズ コントローラの数が 3 で、3 台のコントローラを追加する場合は、新しいクラスタの目標サイズを 6 に設定します。 クラスタは、クラスタにすべての新規コントローラが含まれるまで一度にコントローラ 1 台ずつ順にサイズを増やします。


    (注)  


    既存の APIC コントローラが利用できなくなった場合、クラスタの拡大は停止します。 クラスタの拡大を進める前に、この問題を解決します。
  • 各アプライアンスの追加時に APIC が同期化しなければならないデータ量によって、拡大処理を完了するために必要な時間はアプライアンスごとに 10 分を超える可能性があります。 クラスタが正常に拡大すると、APIC の運用サイズと目標サイズが同じになります。


    (注)  


    APIC がクラスタの拡大を完了するまでは、クラスタに追加の変更をしないようにします。

クラスタでの APIC コントローラの交換

APIC コントローラを交換するには、次の注意事項に従ってください。

  • 交換する APIC コントローラの ID 番号を記録します。

  • 交換する APIC コントローラを解放します。


    (注)  


    交換する前に APIC コントローラを解放しないと、クラスタによる交換コントローラの吸収が妨げられます。
  • ハードウェア インストレーション ガイドの手順に従って、 APIC コントローラの交換を準備します。 PING テストでインバンド接続を確認します。

  • APIC クラスタに交換コントローラを追加する場合、以前 APIC コントローラで使用したコントローラ ID 番号を交換する APIC コントローラに割り当てます。 APIC が交換するコントローラとクラスタの同期へと進みます。


    (注)  


    既存の APIC コントローラが使用できなくなると、クラスタの同期が停止します。 クラスタの同期を進める前に、この問題を解決します。
  • データ量によって APIC はコントローラの交換時に同期する必要があり、交換が完了するまでに交換コントローラごとに 10 分以上かかることがあります。 交換コントローラとクラスタが正常に同期されると、APIC の動作サイズと目標サイズは未変更のままです。


    (注)  


    APIC がクラスタの同期を完了するまで、クラスタに追加の変更を加えないでください。
  • クラスタの同期がファブリックのワークロードの要求に影響しないときに、APIC コントローラの交換を予定します。

  • UUID とファブリックのドメイン名は、リブートしても APIC コントローラに保持されます。 ただし、初期状態にリブートするとこの情報は削除されます。 APIC コントローラを 1 つのファブリックから別のファブリックへ移動する場合、そのコントローラを異なる ACI ファブリックに追加する前に初期状態にリブートする必要があります。

クラスタ サイズの縮小

APIC クラスタのサイズを縮小し、クラスタから除去される APIC コントローラ アプライアンスを解放するには、以下のガイドラインに従ってください。


(注)  


縮小されたクラスタに含まれる APIC コントローラ アプライアンスの電源を切って解放するプロセスに順次従わないと、予期しない結果を招く可能性があります。 ファブリックへの接続を維持するには、認識されない APIC コントローラ アプライアンスを使わないでください。


(注)  


クラスタ サイズを縮小すると、残りの APIC コントローラ アプライアンスの負荷が増大します。

  • クラスタの同期がファブリックのワークロードの要求に影響しないときに、APIC コントローラ サイズの縮小を予定します。

  • クラスタの目標サイズを新たな低い値に減らします。 たとえば、既存のクラスタ サイズが 6 で、3 台のコントローラを削除する場合は、クラスタの目標サイズを 3 に減らします。

  • 既存のクラスタの最も大きな番号が付いた コントローラ アプライアンス ID から始め、新しいより小さい目標番号に到達するまで、1 つずつ交換する APIC コントローラ アプライアンスを解放して、電源を切り、接続解除します。

    各コントローラ アプライアンスの解放と削除が終わると、APIC がクラスタを同期します。

  • 既存の APIC アプライアンスが使用できなくなると、クラスタの同期は停止します。 クラスタの同期を進める前に、この問題を解決します。

  • データ量によって APIC はアプライアンスの交換時に同期する必要があり、各コントローラ アプライアンスの解放が完了するまでにアプライアンスごとに 10 分以上かかることがあります。


(注)  


クラスタに追加の変更を行う前に、必要な解放手順全体を完了し、APIC がクラスタの同期を完了できるようにしてください。


クラスタ内の Cisco APIC の交換

APIC を交換するには、次の手順に従います。


(注)  


クラスタの管理の詳細については、「クラスタのベスト プラクティス」を参照してください。



(注)  


クラスタを拡大または縮小する方法の詳細については、APIC の『Getting Started Guide』を参照してください。



    ステップ 1   交換する APIC を特定します。
    ステップ 2   controller controller-id decommission コマンドを使用して、APIC を解放します。
    (注)      APIC を解放すると、APIC ID とシャーシ ID のマッピングが削除されます。 通常、新しい APIC には、異なる APIC ID があるので、クラスタに新しい APIC を追加するにはこのマップを削除する必要があります。
    ステップ 3   同じ APIC を再稼動する場合には、次の手順に従ってください。
    1. acidiag reboot コマンドを使用して APIC を再起動します。
    2. APIC がエラーなしでブートされることを確認します。
    3. controller controller-id commission コマンドを使用して、APIC を稼働させます。
    4. クラスタの残りの部分に新しい APIC 情報が伝播するまでに数分かかります。
    ステップ 4   新しい APIC を稼動する場合は、次の手順に従ってください。
    1. ファブリックから APIC を切断します。
    2. ファブリックに交換 APIC を接続します。
    3. controller controller-id commission コマンドを使用して、APIC を稼働させます。
    4. 新しい APIC を起動します。
    5. クラスタの残りの部分に新しい APIC 情報が伝播するまでに数分かかります。

    クラスタのトラブルシューティングのシナリオ

    次の表は、Cisco APIC に共通するクラスタのトラブルシューティングのシナリオを示します。
    問題 ソリューション
    APIC ノードはクラスタ内でエラーが発生します。 たとえば、5 つのAPIC のクラスタのノード 2 がエラーを起こすとします。

    2 つの解決策があります。

    • 目標サイズはそのままにし、APIC を交換します。 APIC の交換の手順については、「クラスタの APIC の交換」を参照してください。

    • クラスタ サイズを 4 に縮小するには、コントローラ 5 を解放し、APIC 2 として再稼動します。 APIC の解放および再稼働の手順については、「クラスタの APIC の交換」を参照してください。目標サイズは 4 のままにし、再設定した APIC が実行されると動作サイズは 4 になります。

    (注)     

    クラスタに交換する APIC を追加し、目標サイズと動作サイズを増大することができます。 新しい APIC を追加する手順については、『Getting Started Guide for the Cisco APIC』を参照してください。

    新しい APIC はファブリックに接続し、リーフ スイッチへの接続は失われます。

    インフラ VLAN の不一致があるかを確認するには、次のコマンドを使用します。

    • cat /mit/sys/lldp/inst/if-\[eth1--1\]/ctrlradj/summary:リーフ スイッチ上で設定された VLAN を表示します。

    • cat /mit/sys/lldp/inst/if-\[eth1--1\]/ctrlradj/summary:接続された APIC によってアドバタイズされるインフラ VLAN を表示します。

    これらのコマンドの出力が異なる VLAN を表示する場合、新しい APIC は正しいインフラ VLAN で設定されていません。 この問題を解決するには、次の手順に従います。

    • レスキューユーザを使用して APIC にログインします。
      (注)     

      APIC はファブリックの一部ではないため、管理者のクレデンシャルは動作しません。

    • 設定を消去し、eraseconfig setup コマンドを使って APIC をリブートします。

    • APIC を再設定します。 ファブリック名、TEP アドレス、およびクラスタの APIC にマッチするインフラ VLAN を確認します。

    • リーフ ノードをリロードします。

    リブート後は 2 つのAPIC が通信できません。

    この問題は次の一連のイベントの後に発生することがあります。

    • APIC1 と APIC2 が相互に検出する。

    • APIC1 がリブートし、新しいシャーシ ID (APIC1a)でアクティブになる。

    • 2 つの APIC が通信しなくなる。

    このシナリオでは、APIC1a が APIC2 を検出しますが、APIC2 はオフラインと見なされる APIC1 があるクラスタ内に存在するので使用できません。 その結果、APIC1a は APIC2 からのメッセージを受け入れません。

    この問題を解決するには、APIC2 上の APIC1 を解放し、再度 APIC1 を稼働させます。

    リブート後のシャーシ ID の不一致 この問題は、APIC がクラスタで登録されたシャーシ ID と異なるシャーシ ID で起動したときに起こります。 その結果、この APIC からのメッセージが廃棄されます。

    この問題を解決するには、リブートの前に APIC が解放されていることを確認してください。

    APIC はクラスタ サイズの変更時にエラーを表示します。

    さまざまな条件が、AdminstrativeClusterSize に合わせたクラスタによる OperationalClusterSize の拡張の妨げになる可能性があります。 詳しくは、エラーを検査し、「クラスタのエラー」を確認してください。

    APIC がクラスタに参加できない

    この問題は、クラスタを拡大するときに 2 つの APIC が同じクラスタ ID で設定されると起こります。 その結果、2 つのうち 1 つの APIC がクラスタに参加できず、拡張競合シャーシ ID 不一致のエラーが表示されます。

    この問題を解決するには、新しいクラスタ ID でクラスタの外側に APIC を設定します。

    APIC がクラスタで到達不能

    この問題を診断するには、次の設定を確認してください。

    • ファブリック検出が完了していることを確認します。

    • ファブリックから欠落しているスイッチを特定します。

    • スイッチが APIC からの IP アドレスを要求し、受信したかどうかを確認します。

    • スイッチがソフトウェア イメージをロードしたことを確認します。

    • スイッチがアクティブになっている時間を確認します。

    • すべてのプロセスがスイッチ上で動作していることを確認します。 詳細については、acidiag コマンドを参照してください。

    • 欠落しているスイッチに正しい日付と時刻が設定されていることを確認します。

    • スイッチが他の APIC と通信できることを確認します。

    クラスタが拡大しない

    この問題は、次の状況で発生します。

    • OperationalClusterSize が APIC の数より少ない。

    • 拡大候補(例:admin size = 5、APIC w/ ID 4 がない)

    • クラスタと新しい APIC の間に接続がない

    • 新しい APIC によってハートビート メッセージが拒否される

    • システムの不健全

    • 再ロケーションに関連するデータ サブセットを運ぶアプライアンスが使用できない

    • 再ロケーションに関連するデータ サブセットを運ぶアプライアンスのサービスがダウンしている

    • 再ロケーションに関連するデータ サブセットの不健全

    APIC がダウンしている。

    次の点をチェックします。
    • 接続の問題:ping を使用して接続を確認します。

    • インターフェイス タイプの不一致:すべての APIC がインバンド通信になっていることを確認します。
    • ファブリック接続:ファブリック接続が正常であること、およびファブリック検出が完了していることを確認します。

    • 拒否されたハートビート:fltInfraIICIMsgSrcOutsider エラーを確認します。 一般的なエラーには、動作クラスタ サイズ、シャーシ ID の不一致、動作クラスタ サイズの外の送信元 ID 、承認されていない送信元、およびファブリック ドメインの不一致が含まれます。

    アウトオブバンド接続を使用する APIC のリカバリ

    Cisco APIC は、クラスタ内の他の APIC と通信するために通常インバンド接続を使用します。 ただし、まれにクラスタを通常に戻すためにスイッチをアウトオブバンド接続に切り替えることが必要になります。 ここでは、アウトオブバンド接続を使用してリカバリする方法について説明します。


      ステップ 1   APIC をアウトオブバンド通信に切り替えます。

      例:
      $APIC_Address/api/node/mo/topology/pod-1/node-$APIC_Id/lon.xml <infraLoNode isOobNotInfra="yes"/>
      ステップ 2   クラスタの問題を修復します。 クラスタの問題のトラブルシューティングの詳細については、「クラスタのトラブルシューティングのシナリオ」を参照してください。
      ステップ 3   インバンド通信に APIC を戻します。

      例:
      $APIC_Address/api/node/mo/topology/pod-1/node-$APIC_Id/lon.xml
      <infraLoNode isOobNotInfra="no"/>
      
      (注)     

      収束には、クラスタ内の APIC が同じインターフェイス タイプ(インバンドまたはアウトオブバンド)を使用する必要があります。


      クラスタのエラー

      APIC は、クラスタの問題の診断に役立つさまざまなエラーをサポートします。 ここでは、2 つの主要なクラスタのエラーの種類について説明します。

      エラーの破棄

      APIC は現在のクラスタのピアまたはクラスタ拡大候補以外からのクラスタ メッセージを破棄します。 APIC はメッセージを破棄すると、発信元の APIC のシリアル番号、クラスタ ID 、およびタイムスタンプを含むエラーを提起します。 次の表で、破棄されるメッセージのエラーを要約します。

      エラー 意味
      expansion-contender-chassis-id-mismatch 送信側 APIC のシャーシ ID が拡大のためにクラスタが認識するシャーシ ID と一致しません。
      expansion-contender-fabric-domain-mismatch 送信側 APIC のファブリック ID が拡大のためにクラスタが認識するファブリック ID と一致しません。
      expansion-contender-id-is-not-next-to-oper-cluster-size 送信側 APIC に拡大に不適切なクラスタ ID があります。 値は、現在の OperationalClusterSize よりも 1 大きい必要があります。
      expansion-contender-message-is-not-heartbeat 送信側 APIC が継続的ハートビート メッセージを送信しません。
      fabric-domain-mismatch 送信側 APIC のファブリック ID がクラスタのファブリック ID と一致しません。
      operational-cluster-size-distance-cannot-be-bridged 送信側 APIC に、受信側 APIC のものとは 1 以上違う OperationalClusterSize があります。 受信側 APIC は要求を拒否します。
      source-chassis-id-mismatch 送信側 APIC のシャーシ ID がクラスタに登録されたシャーシ ID と一致しません。
      source-cluster-id-illegal 送信側 APIC に許可されていないクラスタ ID 値があります。
      source-has-mismatched-target-chassis-id 送信側 APIC の目標シャーシ ID が受信側 APIC のシャーシ ID に一致しません。
      source-id-is-outside-operational-cluster-size 送信側 APIC に、クラスタの OperationalClusterSize 外のクラスタ ID があります。
      source-is-not-commissioned 送信側 APIC にクラスタで現在解放されている ID があります。

      クラスタ変更時エラー

      次のエラーは、APIC のクラスタ サイズの変更時のエラーがある場合に適用されます。

      エラー 意味
      cluster-is-stuck-at-size-2 このエラーは、OperationalClusterSize が拡張期間にわたり 2 のままになると発行されます。 問題を解決するには、クラスタの目標サイズをリストアします。
      most-right-appliance-remains-commissioned クラスタ内の最後の APIC が稼働中で、クラスタの縮小を妨げています。
      no-expansion-contender クラスタがより大きいクラスタ ID を持つ APIC を検出できず、クラスタの拡張を行えません。
      service-down-on-appliance-carrying-replica-related-to-relocation 移動するデータのサブセットは、障害が起きているサービス上にコピーがあります。 APIC に複数のこのような障害があることを示します。
      unavailable-appliance-carrying-replica-related-to-relocation 移動するデータのサブセットは、使用できない APIC 上にコピーがあります。 このエラーを解決するには、使用できない APIC を復元します。
      unhealthy-replica-related-to-relocation 移動するデータのサブセットは、正常でない APIC 上にコピーがあります。 このエラーを解決するには、障害の根本原因を特定します。

      APIC の使用不可

      次のクラスタのエラーは、APIC が使用できない場合に適用できます。

      エラー 意味
      fltInfraReplicaReplicaState クラスタがデータのサブセットを起動できません。
      fltInfraReplicaDatabaseState データ ストア サービスの破損を示します。
      fltInfraServiceHealth データのサブセットが完全には機能していないことを示します。
      fltInfraWiNodeHealth APIC が完全には機能していないことを示します。