Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

センサーの概要

Paragon Insightsは、ジュニパーやサードパーティ製デバイス、各種タイプのテレメトリセンサー(システムログやSNMPなどの従来のネットワーク管理プロトコルを含む)からのデータを受信します。Paragon Insightsは、データ収集のプッシュ&プルモデルをサポートしています。プッシュモデルでは、デバイスはトラップ通知などを通じてテレメトリデータをParagon Insightsにプッシュします。プルモードでは、Paragon Insightsが定期的にデバイスをポーリングしてデータを探します。このガイドでは、サポートされている各取り込み方法について、例を挙げて説明し、プッシュモデルとプルモデルのどちらに分類されるかで並べ替えます。各説明とともに、特定の取り込みタイプを有効にするために必要な Junos OS バージョンとデバイス設定を提供します。

ネットワーク内のオブジェクトの数とそれらが生成するメトリックが増大するにつれて、ネットワークの状態を監視するための運用統計を収集することがますます困難な課題になっています。SNMPやCLIなどの従来の「プル」データ収集モデルでは、ネットワーク要素を定期的にポーリングするために追加の処理が必要になり、拡張を直接制限する可能性があります。

「プッシュ」モデルは、データを非同期に配信することでこれらの制限を克服し、ポーリングを排除します。このモデルでは、Paragon Insightsサーバーは、ネットワークデバイスに単一のリクエストを送信して、定期的な更新をストリーミングできます。そのため、「プッシュ」モデルは拡張性が高く、ネットワーク内の数千のオブジェクトの監視をサポートできます。Junos デバイスは、 Junos Telemetry Interface (JTI) の形式でこのモデルをサポートします。

Paragon Insightsは現在、5つのプッシュモデルセンサーをサポートしています。

効率性とスケーラビリティの点から「プッシュ」モデルが望ましいアプローチですが、「プル」データ収集モデルが適切な場合もあります。2つの例としては、デバイスがJunos Telemetry Interface(JTI)をサポートしていない場合や、サードパーティ製デバイスを管理している場合が考えられます。プルモデルでは、Paragon Insightsはユーザーが定義した定期的な間隔でネットワークデバイスからデータを要求します。

Paragon Insightsは現在、次のプルモデルセンサーをサポートしています。

ネイティブGPB

ネイティブセンサーは、Google Protocol Buffers(GPB)を使用したジュニパー独自のデータモデルを使用します。デバイスは、テレメトリデータ(設定されている場合)をUDP経由でプッシュします。

デバイスは、パケット転送エンジンから、つまりラインカードから直接データをプッシュします。つまり、テレメトリデータは転送プレーンを介して送信されるため、コレクターはデバイスへのインバンド接続を持っている必要があります。

Network telemetry setup with HealthBot collecting telemetry data from Junos device via in-band connection using Native GPB encoding. Out-of-band connection used for management.

ネイティブ形式を使用するには、テレメトリ データの送信先を含む設定でデバイスを構成します。データの収集を開始するようにParagon Insightsを設定すると、ストリームはすでにサーバーに向かって流れています。

ネイティブセンサーの詳細については、 収集データのJunos Telemetry Interfaceエクスポート形式についてを参照してください。

NetFlow

Paragon Insightsは、他のParagon Insights取り込みメカニズムと整合するデータモデルを使用して、NetFlow v9およびNetFlow v10(IPFIX)をNetFlow取り込み方法としてネイティブにサポートします。NetFlow は、IP トラフィックの統計情報を収集するためのネットワーク プロトコルであり、分析のためにツールにエクスポートできます。NetFlow v9 データ エクスポート形式は、 RFC 3954 で説明されています。NetFlow v10 は、正式には IPFIX として知られており、 RFC 7011 で標準化されています。

Junos デバイスは、これらのプロトコルを使用してフローの監視とアグリゲーションをサポートします。Junos OSはトラフィックをサンプリングし、フローテーブルを構築して、フローテーブルの詳細を設定されたUDPポートを介してコレクター(この場合はParagon Insights)に送信します。Paragon Insightsは、受信Netflowデータを受信し、v9またはv10として自動検出して、さらに処理します。

Network setup with NetFlow data collection using Juniper HealthBot and Junos device. Solid line shows out-of-band connection via fxp0; dashed line indicates in-band NetFlow data flow via ge-0/0/0.

上記のように、ネットワーク デバイスはパケット転送エンジンから、つまりラインカードから直接データをプッシュします。つまり、フローデータは転送プレーンを介して送信されるため、コレクターはデバイスへのインバンド接続を持っている必要があります。フローセンサーオプションを使用するには、フローデータの送信先などの設定でデバイスを構成します。データの収集を開始するようにParagon Insightsを設定すると、フローデータはすでにサーバーに向かって流れています。

Paragon Insightsは、フローテンプレートをメカニズムとして使用し、受信したフローデータを識別してデコードしてから、さらに処理します。Paragon Insightsには、NetFlow v9およびv10(IPFIX)用に事前定義されたフローテンプレートが用意されていますが、独自に定義することもできます。定義済みのテンプレートは、Junos OSが現在サポートしているものと一致しています。たとえば、Junos OS テンプレート ipv4-template は、Paragon Insights テンプレート hb-ipfix-ipv4-templateに合わせて調整されます。Junos OS テンプレートで使用されるフィールドを表示するには、 インライン アクティブ フロー監視についてを参照してください。

手記:

NetFlow の現在の取り込み実装では、次のフィールド タイプはサポートされていません。

  • 企業固有の要素のフィールド

  • 可変長フィールド

警告:

NetFlowを取り込む場合は、デバイスとParagon Insights間のネットワークパスにソースNATがないことを確認します。ネットワーク パスに送信元 NAT が含まれている場合、受信したデバイス情報は正確ではありません。

一般的なワークフローには、Paragon InsightsでのNetFlow設定デバイスの追加、NetFlowテンプレートの設定、Flow Sensorを使用したルールの設定、ルールを含むプレイブックのデバイスグループへの展開が含まれます。

プレイブックを適用したら、デバイスの監視を開始できます。

  1. 左側のナビゲーション バーで [ Monitoring > Network Health ] をクリックし、[ Device Group ] タブをクリックします。

  2. デバイス・グループ 」プルダウン・メニューから、プレイブックを適用したデバイス・グループを選択します。

  3. 監視するデバイスを 1 つ以上選択します。

  4. タイル ビューの外部タイルには、前に構成したルールのパラメーターが含まれています。

sフロー

Paragon Insightsは、別のフローベースの取り込み方法としてsFlow(v5)をネイティブにサポートしています。

sFlowは、高速スイッチドネットワークまたはルーティングネットワーク向けの統計サンプリングベースのテクノロジーです。必要に応じて、すべてのインターフェイスで同時に有線速度でトラフィックを継続的に監視するようにsFlowを設定できます。

sFlowは以下を提供または支援します。

  • ギガビットスピードでの詳細かつ定量的なトラフィック測定

  • 転送決定に関するインサイト

  • ネットワーク問題のトラブルシューティング

  • 輻輳制御

  • セキュリティと監査証跡の分析

  • ルートプロファイリング

sFlowが上記で行うことはすべて、転送やネットワークパフォーマンスに影響を与えることなく行われます。sFlow の詳細については 、RFC 3176、InMon Corporation の sFlow: A Method for Monitoring Traffic in Switched and Routed Networks を参照してください

統計サンプリングプロトコルとして、ジュニパーのsFlowエージェントは、ネットワークインターフェイス上のトラフィックとカウンターをサンプリングし、sFlowデータグラムを作成して、外部のsFlowコレクターに転送します。Paragon Insightsもそのようなコレクターの1つです。

Paragon InsightsでsFlowパケットを設定する方法については、 sFlow設定の構成を参照してください。

OpenConfig

OpenConfig 形式を使用するには、デバイスを gRPC サーバーとして設定します。Paragon Insightsがクライアントとして機能するため、購読するセンサーを定義し、デバイスに対して購読リクエストを行います。

gRPC を介してストリーミングされるデータは、プロトコル バッファー (GPB) でエンコードされたメッセージの OpenConfig キーと値のペアでフォーマットされます。キーは、監視対象デバイスの OpenConfig スキーマ内のシステム リソースのパスに対応する文字列です。値は、インターフェイス カウンターなどのシステム リソースの運用状態を識別する整数または文字列に対応します。OpenConfig RPC メッセージは、1 つのメッセージで複数のインターフェイス カウンターを提供するなど、一括で転送できるため、メッセージ転送の効率が向上します。

OpenConfig センサーの詳細については、 Junos Telemetry Interface での OpenConfig と gRPC についてを参照してください。

gNMI エンコード済み OpenConfig RPC

gNMIでエンコードされたOpenConfigは、Paragon Insightsがサブスクリプションリクエストを行うOpenConfigサーバーとしてネットワークデバイスを設定する必要があるという点で、OpenConfig RPCとよく似ています。ただし、gNMIは、Paragon Insightsが現在サポートしているよりも多くのサブスクリプションタイプをサポートしています。現在、Paragon Insightsは、SAMPLEモードでのgNMI STREAMサブスクリプションのみをサポートしています。STREAM サブスクリプションは、サブスクリプション内で構成されたパスのセットに関連する更新を無期限に送信し続ける、存続期間の長いサブスクリプションです。SAMPLE モードの STREAM サブスクリプションには、 sample_intervalを含める必要があります。

gNMI を介してクライアントに返されるメッセージは、デバイスによって protobuf、JSON、または JSON-IETF 形式でエンコードされ、一括で送信することはできません。このため、gNMI でエンコードされたメッセージングは gRPC でエンコードされたメッセージングよりも効率が悪くなります。

警告:
  • JSONまたはJSON-IETFの場合、デバイスは、階層全体またはサブ階層をJSONオブジェクトとして返すのではなく、JSONでエンコードされたリーフ値のみとしてgNMIアップデートを返すと想定されます。

  • JSONまたはJSON-IETFでエンコードされた数値は、 RFC 7159 および RFC 7951に従って、Paragon Insightsによってfloat64、int64、またはstringとしてデコードされます。OpenConfig ルールに異なるタイプのフィールドが含まれている場合は、それに応じてフィールドタイプを変更することをお勧めします。

Junos OSとCiscoのデバイスは、gNMIエンコードされたOpenConfigを使用してParagon Automationで管理できます。デバイスが一般に gNMI をサポートしていない場合、SAMPLE モードの STREAM サブスクリプションをサポートしていない場合、または OpenConfig 要求をサポートしていない場合、次のいずれかのエラーが返されます。

  • 未実装

  • 使用禁止

  • InvalidArgument (無効な引数)

Junos OS または Cisco デバイスの場合、エラーが発生すると、接続が OpenConfig RPC にフォールバックします。サードパーティのデバイスの場合、エラーが原因で接続が失敗します。

gNMI エンコードされた OpenConfig は、デバイスまたはデバイスグループレベルで有効にできます。デバイスグループレベルで有効にすると、グループに追加されたすべてのデバイスがデフォルトでgNMIを使用します。デバイスレベルで有効(または無効)の場合、デバイスレベルの設定がデバイスグループレベルの設定よりも優先されます。

手記:

初期接続中に、gNMI デバイスはクライアントとの初期同期を実行しようとします。デバイスは、デバイスとコレクター(Paragon Insights)が同期するまで、データの流れを連続的に送信します。初期同期後、デバイスは設定されたレポートレートに基づいて通常のストリーミング操作を開始します。処理負荷が発生するため、Paragon Insightsではこの機能がデフォルトで無効になっています。これは、必要に応じて、デバイスグループレベルまたはデバイスレベルで有効にできます。

gNMI の詳細については、 gRPC ネットワーク管理インターフェイス(gNMI)を参照してください。

OpenConfig のデバイス構成

OpenConfigには以下が必要です。

  • Junos OS バージョン:16.1 以降

    • OpenConfig センサーを使用するには、Junos デバイスに OpenConfig およびネットワーク エージェント パッケージがインストールされている必要があります。これらのパッケージは、Junos OSリリース18.2X75、18.3以降に組み込まれています。16.1 から 18.2X75 または 18.2 までのリリースの場合は、OpenConfig パッケージとネットワークエージェントパッケージをインストールする必要があります。

      ネットワークエージェントパッケージをインストールする前に、次の手順を実行します。

      • Junos OS リリース 16.1R3 以降をインストールします。

      • OpenConfig for Junos OS モジュールをインストールします。Web ブラウザを使用して、ジュニパーネットワークスの Web ページにあるすべての Junos プラットフォーム ソフトウェアのダウンロード URL に移動します 。 https://www.juniper.net/support/downloads/。 [ Network Management ] タブで、下にスクロールして [OpenConfig] を選択します。「 ソフトウェア 」タブを選択します。 OpenConfig パッケージ(Junos とアップグレードされた FreeBSD)を選択します。詳細については、「 OpenConfig パッケージのインストール」を参照してください。

      • ジュニパーネットワークスのデバイスに、SSL(Secure Sockets Layer)認証証明書をインストールします。

        手記:

        サーバーベースのSSL認証のみがサポートされます。クライアントベースの認証はサポートされていません。

      有効なネットワークエージェントのパッケージ名の例は次のとおりです。

      network-agent-x86-32-16.1R4.12-C1.1.tgz

      手記:

      ネットワークエージェントパッケージの各バージョンは、Junos OS の単一リリースでのみサポートされます。サポートされている Junos OS バージョンは、ネットワークエージェントのパッケージ名に含まれる Junos OS リリース番号で識別されます。

      32 ビット版と 64 ビット版の両方の Junos OS または Junos OS Evolved には、32 ビットネットワークエージェントパッケージを使用します。

      ネットワークエージェントパッケージをダウンロードしてインストールするには:

      1. ジュニパーネットワークスの Web ページで、すべての Junos プラットフォーム ソフトウェアのダウンロード URL に移動します 。 https://www.juniper.net/support/downloads/。

      2. ダウンロードするソフトウェアの Junos OS プラットフォームの名前を選択します。

      3. [Download Software] ページの右側にある [ Release ] ドロップダウンリストからリリース番号(ダウンロードするソフトウェア バージョンの番号)を選択します。

      4. ソフトウェア 」タブを選択します。

      5. [ソフトウェア(Software)] タブの [ツール(Tools)] セクションに移動し、リリースの Junos ネットワークエージェントパッケージを選択します。

      6. ジュニパーネットワークスの担当者から提供されたユーザー名(通常は電子メールアドレス)とパスワードを使用して、ジュニパーネットワークスの認証システムにログインします。

      7. ソフトウェアをローカルホストにダウンロードします。

      8. ソフトウェアをジュニパーネットワークスのデバイスまたは社内のソフトウェア配布サイトにコピーします。

      9. 動作モードから request system software add package-name を発行して、新しい network-agent パッケージをデバイスにインストールします。

        例えば:

        手記:

        このコマンドは、デフォルトで validate オプションを使用します。このオプションは、デバイスが正常に再起動するように、ソフトウェア パッケージを追加するための前提条件として、現在の設定に対してソフトウェア パッケージを検証します。これは、追加されるソフトウェアパッケージが別のリリースである場合のデフォルトの動作です。

      OpenConfig パッケージとネットワークエージェントパッケージがインストールされているかどうかを確認するには、次のコマンドを入力します。

      詳細については、Junos Telemetry Interface の OpenConfig と gRPC についてを参照してください。

    • ネットワークエージェントは、PPCプラットフォーム(MX104、MX80など)ではサポートされていません。

Device Configuration

以下のコマンドを入力して、デバイスを設定します。

Paragon Automation GUIのデバイス設定でOpenConfigポートを設定するには、「 デバイスの編集」の「デバイスの編集」ページテーブルの編集可能なフィールドを参照してください。

syslog

上記のJTI関連のオプションに加えて、Paragon Insightsは、他の取り込みメカニズムと整合するデータモデルを使用して、データ収集方法としてシステムログもサポートします。

デバイスは、Syslogメッセージ(設定されている場合)を、ルーターの管理インターフェイスを使用してルーティングエンジン(RE)を介してアウトオブバンドで、またはパケット転送エンジンを介してインバンドで、つまりラインカードから直接、UDP経由でParagon Insightsサーバーにプッシュできます。

Syslog message flow between Junos device and HealthBot system via out-of-band fxp0 and in-band ge-0/0/0 interfaces for redundancy and flexibility.

syslog形式を使用するには、syslogメッセージの送信先などの設定でデバイスを構成します。データの収集を開始するようにParagon Insightsを設定すると、メッセージはすでにサーバーに向かって流れています。

ジュニパーデバイスで使用されるsyslogの詳細については、 Junos OSシステムログの概要を参照してください。

syslogメッセージは、ヘッダー、角括弧内のKey-Value形式の構造化データ、およびログメッセージで構成されています。ヘッダーは、次の情報で構成されています。

  • ログの優先度

  • ヘッダー形式のSyslogプロトコル仕様のバージョン番号。

    現在、この数は 1 です。

  • 「Mmm dd hh:mm:ss」の形式でメッセージが生成されたときのタイムスタンプ。

  • ホスト名 は、syslog メッセージを送信したデバイスを識別します。

  • アプリケーション名

  • アプリケーション・プロセス ID

  • メッセージ ID

Paragon InsightsでSyslogを設定するための要件

Syslogの取り込みは、ルールのセンサーとして使用する前に、いくつかの設定が必要です。

  • パターン:パターンはsyslogイベントを識別します。監視するイベントごとにパターンを作成します。構造化イベントと非構造化イベントの両方にパターンを設定できます。

  • パターンセット:パターンを設定したら、それらをパターンセットにグループ化し、ルール内でsyslogセンサー設定を定義する際に参照します。

Syslog取り込み用のパターンとパターンセットを設定する前に、以下のフィールドがsyslogメッセージで共通であることに注意してください。Paragon Insightsは、これらのフィールドを抽出して自動的にローテーブルに含めるため、ルール作成時に直接使用でき、パターンを設定する必要がなくなります。

これらの値の使用法を説明するために、次のsyslogメッセージの例を考えてみましょう。

構造化 - <30>1 2019-11-22T03:17:53.605-08:00 R1 mib2d 28633 SNMP_TRAP_LINK_DOWN [junos@2636.10.1.1.2.29 snmp-interface-index="545" admin-status="up(1)" operational-status="down(2)" interface-name="ge-1/0/0.16"] ifIndex 545, ifAdminStatus up(1), ifOperStatus down(2), ifName ge-1/0/0.16

同等の非構造化 - <30>Nov 22 03:17:53 R1 mib2d[28633]: SNMP_TRAP_LINK_DOWN: ifIndex 545, ifAdminStatus up(1), ifOperStatus down(2), ifName ge-1/0/0.16

システム生成フィールド:

  • "__log_priority__" - syslogメッセージの優先度

    • この例では、 <30> は優先度を示しています

  • "__log_timestamp__" - syslogメッセージのepcoh単位のタイムスタンプ

    • 構造化された例では、 2019-11-22T03:17:53.605-08:00 はタイム ゾーンを示す -08:00 のエポックに変換されます

    • 非構造化の例では、設定のタイムゾーンがエポックの計算に使用されます

  • "__log_host__" - syslogメッセージ内のホスト名

    • この例では、 R1 はホスト名を示します

  • "__log_application_name__" - syslog メッセージのアプリケーション名

    • 例では、 mib2d はアプリケーション名です

  • "__log_application_process_id__" - syslog メッセージのアプリケーション プロセス ID

    • この例では、 28633 は ID です

  • "__log_message_payload__" - メッセージ内のペイロード

    • 構造化された例 - “SNMP_TRAP_LINK_DOWN [junos@2636.10.1.1.2.29 snmp-interface-index="545" admin-status="up(1)" operational-status="down(2)" interface-name="ge-1/0/0.16"] ifIndex 545, ifAdminStatus up(1), ifOperStatus down(2), ifName ge-1/0/0.16”

    • 非構造化の例 - “SNMP_TRAP_LINK_DOWN: ifIndex 545, ifAdminStatus up(1), ifOperStatus down(2), ifName ge-1/0/0.16”

  • "Event-id" - パターンで設定されたイベント ID を示します

    • 例では、 SNMP_TRAP_LINK_DOWN はイベント ID です

手記:

上記で既に定義されている名前を使用して新しいフィールドを定義しないようにしてください。

Syslogインジェストの設定方法については、「 システムログインジェストの設定」を参照してください。

サーバー監視センサー

Paragon Automationでは、サーバー監視センサーが、Paragonアプリケーションをホストしているサーバーおよび仮想マシンからデータを収集します。センサーは、サードパーティのプラグインである Node Exporter を使用します。Node Exporterプラグインは、Paragon Automationのすべてのサーバークラスターにプリインストールされています。GUIでは、Paragon Automationクラスターに導入されたデフォルトのサーバーと仮想マシンは、 Paragon-Cluster デバイスグループに自動的に追加されるデバイスとして表されます。センサーは、サーバーと仮想マシンからデータを収集して、CPU、メモリ、ネットワーク、トラフィック、ディスク、ファイルシステムのメトリックを追跡します。出力を時系列データベースに書き込みます。

手記:

ユーザーは、デフォルトの Paragon-Cluster デバイスグループを削除してはなりません。

Paragon Automationには、サーバーデータを監視するために、以下のプレイブックが事前に設定されています。

  • CPU使用率
  • ディスクの読み取りと書き込み
  • エラー、使用可能なバイト数、ファイルシステム内の使用バイト数
  • メモリ内の使用バイト数と使用可能なバイト数
  • 送受信された合計パケット サイズ、受信および送信パケットのエラー、ネットワーク内の受信および送信されたマルチキャスト パケットの合計

サーバー監視の取り込みを使用してルールを構成する場合は、 表 1 に記載されているセンサーパスの一部を使用できます。

表 1: サーバー メトリック
センサー パス の説明
/node/boot/time/seconds 各サーバ・ノードのブート時間。
/node/cpu/seconds/total CPU がアイドルモード、システムモード、ユーザーモード、および nice モードのままである合計時間 (秒単位)。
/node/disk/read/bytes/total 正常に読み取られた合計バイト数。
/node/disk/read/errors/total ノード内の読み取りエラーの合計数。
/node/disk/read/retries/total 障害が発生した場合に、取り込みがディスクからの読み取りを試行する回数。
/node/disk/read/sectors/total 正常に読み取られたセクターの総数。
/node/disk/read/time/seconds/total ノードごとの読み取りが正常に完了するまでにかかった合計時間。
/node/disk/reads/completed/total 正常に完了した読み取りの合計数。
/node/disk/write/errors/total 書き込みエラーの総数
/node/disk/write/retries/total 障害が発生した場合に、取り込みがディスクへの書き込みを試行する回数。
/node/disk/write/time/seconds/total すべての書き込みを完了するのにかかった合計時間。
/node/disk/writes/completed/total ノードごとに完了した書き込みの合計数。
/node/disk/written/bytes/total 正常に書き込まれた合計バイト数。
/node/disk/written/sectors/total 正常に書き込まれたセクターの総数。
/node/exporter/build/info 値が「1」で、ノードエクスポーターの構築元であるバージョン、リビジョン、goバージョン、およびブランチを持つメトリクス。
/node/filesystem/avail/bytes root 以外のユーザーが使用できるファイルシステムのサイズ。
/node/filesystem/device/error ファイルシステムからデータを収集するときに発生する入出力エラーの数。
/node/filesystem/files ノードで許可されるインデックス ノードの合計数。
/node/filesystem/files/free ノードで使用できるインデックス ノードの数。
/node/filesystem/free/bytes 予約済みブロックを除く、ユーザーが使用できる空き領域 (バイト単位)。
/node/filesystem/readonly ノード内のファイルシステムが読み取り専用としてマウントされているかどうかを示すデータ。
/node/filesystem/size/bytes すべてのファイルのサイズ (バイト単位)。
/node/load1 1分ごとにキャプチャされた各サーバー/ホストノードの負荷。
/node/load15 15 分ごとにキャプチャされた各サーバー/ホスト ノードの負荷。
/node/load5 5 分ごとにキャプチャされた各サーバー/ホスト ノードの負荷。
/node/memory/active/bytes プロセスによってアクティブに使用されているメモリ バイト。
/node/memory/compressed/bytes 圧縮メモリの合計サイズ。
/node/memory/free/bytes ノードで使用できるメモリの合計 (バイト単位)。
/node/memory/inactive/bytes プロセスによってアクティブに使用されていないメモリ バイト。
/node/memory/swap/total/bytes ノードでスワップされた合計メモリ。
/node/memory/swap/used/bytes ノードで使用されているスワップされたメモリの量。
/node/memory/swapped/in/bytes/total ノード内のメモリ内でスワップされた合計。
/node/memory/swapped/out/bytes/total ノード内のスワップアウトされたメモリの合計。
/node/memory/total/bytes ノード内のメモリの合計バイト数。
/node/memory/wired/bytes スワップアウトできないメモリ。
/node/network/receive/bytes/total デバイスが受信したパケットの合計サイズ。
/node/network/receive/errs/total パケット受信時にデバイスで発生したエラーの総数。
/node/network/receive/multicast/total デバイスが受信したマルチキャスト パケットの総数。
/node/network/receive/packets/total デバイスが受信したパケットの総数。
/node/network/transmit/bytes/total デバイスから送信されたパケットの合計サイズ。
/node/network/transmit/errs/total - パケット送信時にデバイスで発生したエラーの総数。
/node/network/transmit/multicast/total デバイスによって送信されたマルチキャスト パケットの総数。
/node/network/transmit/packets/total デバイスによって送信されたパケットの総数。
/node/scrape/collector/duration/seconds 各コレクターがメトリックをスクレイピングするのにかかった時間。
/node/scrape/collector/success Node Exporter コレクターがターゲットを正常にスクレイピングした回数。
/node/textfile/scrape/error テキストファイルスクリプトを使用してターゲットをスクレイピングするときにNode Exporterで発生したエラー。
/node/time/seconds エポック(1970)以降のノードのシステム時刻を秒単位で表示します。
/node/uname/info Node Exporter がメトリクスを収集するノードの名前。

mode、device などの以下のタグは、メインメトリック (/node/cpu または /node/network) にリストされているすべてのメトリックに適用可能なキーフィールドとして使用できます。

ルールでキーフィールドを設定する場合、[ パス ] フィールドにキーフィールド名のみを指定できます。

  • /node/cpu/
    • cpu: CPU で使用可能なコアの数。
    • mode: アイドル、システム、ユーザー、ナイスなどのノードのCPU使用率のタイプ。
  • /node/disk/
    • device: disk0、disk1、sda、sdb、sdc などのディスクの名前。
  • /node/filesystem/
    • device: /dev/sda1、/dev/sda2、/dev/sdb1 などのディスクパス
    • fstype:ext4、NTFS(New Technology File System)、APFS(Apple File System)などのパーティションフォーマットのタイプ。
    • mountpoint: デバイスにパスをマウントします。
  • /node/network/
    • device: デバイスのインターフェイス名(wlan0、en0、docker0 など)。

サーバーモニタリングの取り込みを使用してルールの例を設定するには、「サーバーモニタリングセンサーを使用したルールの設定」を参照してください。

iAgent(CLI/NETCONF)

「プッシュ」データ収集方法のすべての利点について、一部の操作情報と状態情報はCLI/VTYコマンドを介してのみ利用できます。iAgentは、NETCONF/SSH機能を活用して、デバイスへの接続、コマンドの実行、出力のキャプチャを行う機能をParagon Automationに提供することで、このギャップを埋めます。

iAgentセンサーは、NETCONF/SSHおよびYAMLベースのPyEZテーブルとビューを使用して、必要なデータを取得します。構造化データ(XML)と非構造化データ(VTYコマンドおよびCLI出力)の両方がサポートされています。

iAgentを使用すると、Paragon Automationサーバーは、インバンドかアウトオブバンドかにかかわらず、利用可能な任意のネットワークインターフェイス経由で受信SSH要求を開始します。そして、デバイスは(適切に構成されている場合)要求されたデータで応答します。

Communication flow between Juniper HealthBot, iAgent, and Junos device highlighting Out-of-Band and In-Band connections with NETCONF and operational/configuration data paths.

Paragon Automationプラットフォームでは、iAgentの取り込みは、Arista Networks、Palo Alto Networks、Ciscoの他のベンダーのデバイスに拡張されます。

iAgent センサーまたは NETCONF 接続を使用してテレメトリデータを送信するように Junos デバイスを設定する必要があります。

iAgent(NETCONF)には、少なくとも次のものが必要です。

  • Junos OS バージョン:11.4 以降

  • 最低限必要なデバイス構成:

Paragon Automation GUIでインバウンド接続用にiAgentまたはNETCONFポートを設定するには、 表1を参照してください。

Paragon Automationは、Netmikoを使用して、選択したポートからサードパーティデバイスへのインバウンドSSH接続を確立します。デバイス情報を収集するために、Paragon AutomationはSSH経由でCLIコマンドを送信し、文字列BLOBを出力として受信します。文字列BLOBは、NTCテンプレートを使用してTextFSMを介してJSON形式に解析され、データベースに保存されます。デフォルトのテンプレートは /srv/salt/_textfsm にあります。ネットワーク デバイス用の NTC テンプレート の GitHub リポジトリにアクセスできます。

存在しないテンプレートを必要とする上級ユーザは、独自のテンプレートを作成し、[設定>ルール(Configuration Rules)] ページの [ルール ファイルのアップロード(Upload Rule Files)] ボタンを使用してParagon Insightsにアップロードできます。ユーザー定義テンプレートは/jfit/_textfsmに保存されます。ファイルは .textfsm サフィックスで終わる必要があります。Paragon Automationプラットフォームで事前定義されたルールをアップロードする方法については、「事前定義されたルールを追加する」を参照してください。

TextFSMは、iAgentの不可欠な部分であるPyEZのテーブル/ビュー機能に統合されています。

Example: PaloAlto Panos– Show Running Security Policy

Panosデバイスで実行中のセキュリティポリシーを確認するには、次のことを行う必要があります。

PyEZテーブル/ビューの定義

Panosデバイスに割り当てられたiAgentルールで使用されるPyEZテーブルを定義する必要があります。次のテーブル定義には、ビュー定義がありません。このため、 show running security-policy からの出力全体が処理後にデータベースに格納されることになります。

(オプション)受信したデータの一部のみをParagon Automationに保存するには、同じファイル内にビューを定義します。このビューは、Paragon Automationに注目すべきフィールドを指示します。

デバイスからの出力の収集

上記で定義したPyEZテーブル(またはテーブル/ビュー)を参照するiAgentルールを使用して、Paragon Automationはコマンド show running security-policy をデバイスに送信し、次の出力を生成します。

Paragon Automationデータベースで使用するJSONを生成

デバイス構成では、ベンダーとして Palo Alto Networks、オペレーティング システムとして Panos OS が指定されているため、この例で使用される TextFSM テンプレートは次のようになります。

上記のテンプレートをParagon Automationが使用して前に示した出力を解析すると、結果のJSONは次のようになります。

アウトバウンド SSH(デバイス開始)

Paragon Automationは、アウトバウンドSSHを使用してデバイスから開始されるiAgent(NETCONF)接続もサポートします。この設定により、Paragon Automationは、接続するデバイスのクライアントとして機能します。このタイプの接続は、リモート デバイスが着信接続を受け入れることができない環境で役立ちます。JunosデバイスでアウトバウンドSSHが設定されている場合は、既存のiAgentルールすべてを使用できます。

手記:

SSH接続を介したNETCONFは、Junosデバイスでのみサポートされています。

アウトバウンドSSHはデフォルトで無効になっています。アウトバウンドSSH接続を設定できます。

  • 取り込みでは、単一のポートを設定します。このポートは、すべてのデバイスグループで使用されます。

  • デバイスグループ内(ポートの設定)。この構成は、取り込み構成よりも優先されます。

デバイスグループでアウトバウンドSSHを設定する場合、すべてのメンバーデバイスがParagon AutomationへのNETCONF接続を開始するTCPポート番号を入力する必要があります。管理 CLI を使用して、デバイスでアウトバウンド SSH を無効にできます。デバイスグループでアウトバウンドSSHポートを設定するには、「 デバイスグループの追加」のデバイスグループ設定の「ポート」セクションを参照してください。

Paragon Automationは、すべてのデバイスグループからのiAgent(NETCONF)アウトバウンドSSH接続用の単一のTCPポートをサポートします。このポートは、取り込みレベルで構成できます。異なるデバイスグループで複数のTCPポートを開く手間を省き、1つのポートでネットワーク管理を簡略化できます。取り込み時にiAgentポートを設定するには、 iAgentのアウトバウンドSSHポートを設定するを参照してください。

異なるデバイスグループで管理されているデバイスをアウトバウンドSSH経由で接続するには、各クライアントが同じポートを持つ複数のクライアントを設定します。この場合、デバイス・グループと同じ数のデバイスのコピーを作成する必要があります。各デバイスのポート番号は同じである必要があります。

例として、デバイスグループ dg1 および dg2 用に設定されたデバイス r0 (10.1.1.1) があるとします。同じアウトバウンドSSHポートを介して10.1.1.1を両方のデバイスグループに接続するには、同じIPでもう1つのデバイスr1(10.1.1.1)を作成し、dg2にデプロイします。

また、それぞれのデバイスグループで、これらのポートのParagon Automationを設定する必要があります。 図 1 は、デバイス グループの構成例です。

図 1: デバイス グループ構成の編集 Configuration interface for editing device group with fields for description, device selection, and advanced settings like flow ingest, reports, and retention policies. Options to Save or Save and Deploy.

次のサンプルクライアント設定を使用すると、デバイス10.1.1.1は、同じポートを持つ2つのアウトバウンドSSHクライアントを使用して、2つのデバイスグループに接続できます。

手記:

この例の10.1.1.1は、Paragon Automation(ホスト)のIPアドレスを示しています。

SNMP

SNMP は広く知られ、受け入れられているネットワーク管理プロトコルであり、ジュニパーネットワークスを含む多くのネットワーク デバイス メーカーが、そのデバイスで使用するために提供しています。これは、SNMP を使用するように設定されたネットワーク デバイスが構成、診断、およびイベント情報をコレクターに提供するポーリング タイプのプロトコルであり、コレクターも適切に構成および認証する必要があります。コレクターは、データを取得するために、get リクエストと呼ばれる特別に構造化されたリクエストを送信することで、デバイスをポーリングします。

Paragon Automationは、標準のgetリクエストを使用してデバイスから統計を収集することで、SNMPをセンサータイプとしてサポートしています。Paragon Automationは、インバンドかアウトオブバンドかにかかわらず、利用可能な任意のインターフェイスを介してリクエストを行い、デバイスは(設定されている場合)要求されたデータで応答します。

Communication flow between HealthBot system and Junos Device using SNMP via fxp0 for out-of-band and ge-0/0/0 for in-band management paths.

Junos OSデバイスで使用されるSNMPの詳細については、 Junos OSでのSNMP実装を理解するを参照してください。

Paragon Insightsは、SNMPの表形式オブジェクトとともに、スカラーオブジェクトインスタンスもサポートします。

  • SNMP オブジェクトは、スカラー、表形式、またはルール内のその両方の組み合わせにすることができます。SNMP 取り込みを使用してルールを作成する場合は、次を追加できます。

    • スカラー フィールドのみ。

    • 表形式フィールドとスカラー フィールドの組み合わせ。

    • スカラー オブジェクトとしてクエリされるインデックスと共に表形式の列。

      スカラーとして照会される表形式の列には、ルールで表形式フィールドを設定する場合、インデックス番号がすべてのデバイスで同じオブジェクトを参照しないという制限があります。たとえば、 IF-MIB::ifAdminStatus.16。ifAdminStatus は、 IF MIB テーブルの列です。 IF-MIB::ifAdminStatus.16 は、インデックスが 16 のテーブル列を指します。

    • 表形式のフィールドのみ。
  • スカラー オブジェクトは、MIB 名( JUNIPER-MIB::scalarObjectName など)または OID として識別されます。

  • Paragon Insightsは、MIB 定義の MAX-ACCESS プロパティをチェックすることで、与えられたスカラーを検証します。

    MIB 定義の MAX-ACCESS が読み取り専用、読み取り作成、または読み取り/書き込みに設定されている場合、そのオブジェクトをスカラーとして照会できます。

スカラー オブジェクトを照会するための完全なパスは MIB-Name::table column name:index number です。

たとえば、 IF-MIB::ifInOctets:16 です。