はじめに
以前、CLICommandCollector App が別のドキュメントで紹介されました。 この ACI App はユーザが CLI コマンドを検索したり、複数の ACI ノードから同時にコマンド出力を収集することを可能にしますが、より効率的な方法で CLI 出力を収集するための Import という機能があります。このドキュメントでは、例を用いて、この機能とそこで必要になる custom import file の形式を紹介します。
Import 機能は、監視やトラブルシューティングの目的で同じノードで同じコマンドを複数回収集する場合に非常に役立ちます。
また、TAC にお問い合わせいただいた場合に、取得すべきコマンドを TAC が custom import file 形式にして提供すればお客様はそれを import して結果をダウンロードするだけでログ取得が完了します。
本ドキュメントは、既に APIC に CLICommandCollector App をインストールし、前のドキュメントの「前提条件」に記載されているように認証情報を既に保存済みであることを前提としています。
Import 可能な YAML フォーマット
APIC 上の CLICommandCollector App を開いたら、左側のメニューから Import を選択します。Import 機能は、出力を収集したいノードとコマンド情報を含む YAML 形式を受け入れます。テキストエリアに直接入力したり、"Choose import file" ボタンから import するファイルを選択したりできますが、サポートされる形式がわからない場合でも右側の "Sample Format" を使用すれば簡単に利用できます。1つまたは複数のサンプルフォーマットをクリックすると、以下のスクリーンショットのようにテキストエリアに反映されます。

サポートされる YAML 形式は非常に直感的であり、記載のコマンドがどのノードで収集されるか (node-list)、どの command/shell type が使用されるか (shell-type)、指定されたノードの指定された shell type でどのコマンドが実行されるか (command) などの情報を含んでいます。
# Supported YAML format
- node: [node-list1]
shell-type1:
- command1
- command2
- ...
shell-type2:
- command1
- ...
- node: [node-list2]
...
サポートされる command/shell type は以下の通りです。
- APIC: moquery, show, acidiag
- Leaf: ish, vsh, vsh_lc
- Spine(Box): ish, vsh, vsh_lc
- Spine(Chassis): ish, vsh, linecard, fabric module
例として、サンプルフォーマットを編集して、3つのAPIC (1,2,3) と2つのスイッチノード (101,103) の各ノードで基本的なノードステータスをチェックする custom import file を作成しましょう。この YAML ファイルは hw_check.yml として保存し、次のセクションで使用します。
- node: [1, 2, 3]
acidiag:
- acidiag avread
- acidiag fnvread
show:
- show versions
- show controllers
- show switch
- node: [101, 103]
ish:
- show version
- show environment
- show diagnostic result module all detail
vsh:
- show logging onboard internal reset-reason
Import 機能の使い方
Custom import file を準備したら、"Choose import file" ボタンをクリックし、ファイルを選択します。

すると、その内容は上記のようにボタン下のテキストエリアに反映されます。必要に応じてテキストエリアを編集できます。次に、"Next" ボタンをクリックし、Submit する前に選択したノードとコマンドを確認します。

Submit ボタンをクリックすると、リクエストは App のバックエンドに送信され、その後自動的に各ノードにアクセスして Command Selection メニューと同様に指定されたコマンド出力を収集します。コマンドの収集が完了すると、GUI 画面は自動的に Result メニューに遷移します。

その後、ノードを選択して GUI 上で収集したログを確認したり、Download All ボタンを使用してオフラインログ解析のためにダウンロードしたりできます。以下のスクリーンショットは、GUI 画面で2つの leaf ノードのログを表示した例です。

まとめ
上記の例を通じて、簡単に custom import file を作成し、ファイルで定義されたログを収集できることを示しました。
この機能の利点は、一度ファイルを作成すれば、同じノードに対して同じコマンドを収集することがその custom import file 1つで何度でも可能になることです。
これは、監視やトラブルシューティングの目的で特定のノードで特定のコマンドを収集することを予め用意する場合に非常に役立ちます。
また、TAC にお問い合わせいただいた場合に、CLICommandCollector App を導入済みの環境であれば、取得すべきコマンドを TAC が custom import file 形式にして提供することも可能です。