センサーの概要
Paragon Insightsは、ジュニパー、サードパーティデバイス、およびシステムログやSNMPなどの従来のネットワーク管理プロトコルを含むさまざまなタイプのテレメトリセンサーからのデータを受け入れます。Paragon Insightsは、データ収集のプッシュおよびプルモデルをサポートします。プッシュモデルでは、デバイスは例えばトラップ通知を通じてテレメトリデータをParagon Insightsにプッシュします。プルモードでは、Paragon Insightsが定期的にデバイスにデータをポーリングします。このガイドでは、サポートされている各インジェスト方法について、プッシュモデルとプルモデルのどちらに該当するかでソートした例を挙げて説明します。各説明とともに、特定のインジェストタイプを有効にするために必要なJunos OSバージョンとデバイス構成を提供します。
ネットワーク内のオブジェクト数とそれらが生成するメトリックが増えるにつれ、ネットワークの状態を監視するための運用統計を収集することがますます困難になっています。SNMPやCLIなどの従来の「プル」データ収集モデルは、ネットワーク要素を定期的にポーリングするために追加の処理を必要とし、スケーリングを直接制限する可能性があります。
「プッシュ」モデルは、データを非同期的に配信することでこれらの制限を克服し、ポーリングを排除します。このモデルでは、Paragon Insightsサーバーは、定期的なアップデートをストリーミングするために、ネットワークデバイスに単一のリクエストを行うことができます。その結果、「プッシュ」モデルは拡張性が高く、ネットワーク内の数千のオブジェクトの監視をサポートできます。Junosデバイスは、 Junos Telemetry Interface (JTI)という形でこのモデルをサポートしています。
Paragon Insightsは現在、5つのプッシュモデルセンサーをサポートしています。
「プッシュ」モデルは、その効率とスケーラビリティのために推奨されるアプローチですが、「プル」データ収集モデルが適切な場合もあります。たとえば、デバイスが Junos Telemetry Interface (JTI) をサポートしていない場合や、サードパーティ製デバイスを管理する場合などです。プルモデルでは、Paragon Insightsは、ユーザーが定義した間隔で定期的にネットワークデバイスからデータを要求します。
Paragon Insightsは現在、以下のプルモデルセンサーをサポートしています。
ネイティブGPB
ネイティブセンサーは、Google Protocol Buffers(GPB)を使用したジュニパー独自のデータモデルを使用します。デバイスは、テレメトリ データ(設定されている場合)を UDP 経由でプッシュします。
デバイスは、パケット転送エンジンから、つまりラインカードから直接データをプッシュします。つまり、テレメトリデータは転送プレーンを介して送信されるため、コレクターはデバイスに帯域内接続できる必要があります。
ネイティブ形式を使用するには、テレメトリ データの送信先を含む設定を使用してデバイスを構成します。データの収集を開始するようにParagon Insightを設定すると、ストリームはすでにサーバーに向かって流れています。
ネイティブセンサーの詳細については、 収集データの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として自動検出して、さらに処理します。
上記のように、ネットワークデバイスはパケット転送エンジンから、つまりラインカードから直接データをプッシュします。つまり、フローデータは転送プレーンを介して送信されるため、コレクターはデバイスに帯域内接続できる必要があります。フロー センサー オプションを使用するには、フロー データの送信先などの設定でデバイスを構成します。Paragon Insightsがデータの収集を開始するように設定すると、フローデータはすでにサーバーに向かって流れています。
Paragon Insightsは、受信したフローデータを識別してデコードしてから、さらに処理するメカニズムとしてフローテンプレートを使用します。Paragon Insightsには、NetFlow v9およびv10(IPFIX)用に事前に定義されたフローテンプレートが用意されています。または、独自に定義することもできます。定義済みテンプレートは、Junos OSが現在サポートしているものと一致します。例えば、 ipv4-template
Junos OSテンプレート 、 は、 Paragon Insightsテンプレート hb-ipfix-ipv4-template
と一致します。Junos OSテンプレートで使用されるフィールドを表示するには、 インラインアクティブフロー監視についてを参照してください。
NetFlow の現在の取り込み実装では、次のフィールド タイプはサポートされていません。
-
企業固有の要素の項目
-
可変長フィールド
NetFlowを取り込む場合は、デバイスとParagon Insightsの間のネットワークパスにソースNATがないことを確認します。ネットワーク パスにソース NAT が含まれている場合、受信したデバイス情報は正確ではありません。
一般的なワークフローには、Paragon InsightsでのNetFlow設定デバイスの追加、NetFlowテンプレートの設定、フローセンサーを使用したルールの設定、デバイスグループへのルールを使用したプレイブックの展開が含まれます。
-
Paragon InsightsでNetFlowを使用するようにデバイスを設定します。 デバイスの編集を参照してください。
-
デバイスをデバイス グループに追加します。 デバイス グループの追加を参照してください。
-
NetFlow の取り込み設定を定義します。 ネットフロー設定の構成を参照してください。
-
定義済みの NetFlow テンプレートを使用するか、
-
独自の NetFlow テンプレートを作成する
-
既存の NetFlow テンプレートの複製
-
-
フローセンサーを使用するルールを設定します。 フローセンサーを使用したルールの設定を参照してください。
-
プレイブックにルールを追加します。 Paragon InsightsGUIを使用した新しいプレイブックの作成
-
プレイブックをデプロイします。 プレイブックインスタンスを管理します。
-
NetFlow トラフィックのデバイスの監視
プレイブックを適用すると、デバイスの監視を開始できます。
-
左側のナビゲーション バーで [ 監視] > [ネットワーク正常性 ] をクリックし、[ デバイス グループ ] タブをクリックします。
-
[ デバイス グループ ] プルダウン メニューから、プレイブックを適用したデバイス グループを選択します。
-
監視するデバイスを 1 つ以上選択します。
-
タイル ビューの外部タイルには、前に構成したルールのパラメーターが含まれます。
Sflow
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サーバーとしてネットワークデバイスを設定する必要があります。ただし、gNMIはParagon Insightsが現在サポートしているよりも多くのサブスクリプションタイプをサポートしています。現在、Paragon Insightsは、サンプルモードのgNMI STREAMサブスクリプションのみをサポートしています。STREAM サブスクリプションは、サブスクリプション内で構成されたパスのセットに関連する更新を無期限に送信し続ける、存続期間の長いサブスクリプションです。サンプル モード ストリーム サブスクリプションには、 sample_interval
.
gNMI を介してクライアントに返されるメッセージは、デバイスによって protobuf、JSON、または JSON-IETF 形式でエンコードされており、一括で送信することはできません。これにより、gNMI でエンコードされたメッセージングは、gRPC でエンコードされたメッセージングよりも効率が低下します。
Junos OSとCiscoデバイスは、gNMIエンコードされたOpenConfigを使用してParagon Automationで管理できます。デバイスが一般的に gNMI をサポートしていない場合、または SAMPLE モードで STREAM サブスクリプションをサポートしていない場合、または OpenConfig リクエストをサポートしていない場合は、次のいずれかのエラーが返されます。
-
未実装
-
利用
-
無効な引数
Junos OS またはシスコ デバイスの場合、このエラーにより接続が OpenConfig RPC にフォールバックします。サードパーティのデバイスの場合、エラーが原因で接続が失敗します。
gNMI でエンコードされた OpenConfig は、デバイスまたはデバイス グループ レベルで有効にできます。デバイスグループレベルで有効にすると、グループに追加されたすべてのデバイスがデフォルトでgNMIを使用します。デバイス レベルで有効 (または無効) の場合、デバイス レベルの設定がデバイス グループ レベルの設定よりも優先されます。
初期接続中に、gNMI デバイスはクライアントとの初期同期を実行しようとします。デバイスとコレクター(Paragon Insights)が同期するまで、デバイスはデータのストリームを連続して送信します。初期同期後、デバイスは設定されたレポート レートに基づいて通常のストリーミング操作を開始します。これにより処理負荷が発生するため、Paragon Insightではこの機能はデフォルトで無効になっています。必要に応じて、デバイス グループまたはデバイス レベルで有効にできます。
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 Platforms ソフトウェアのダウンロード URL:https://www.juniper.net/support/downloads/] に移動します。[ネットワーク管理] タブで、下にスクロールして [OpenConfig] を選択します。[ソフトウェア]タブを選択します。OpenConfig パッケージ(アップグレードされた FreeBSD を搭載した Junos)を選択します。詳細については、「OpenConfig パッケージのインストール」を参照してください。
-
ジュニパーネットワークスのデバイスにセキュアソケットレイヤー(SSL)認証証明書をインストールします。
メモ:サーバーベースの SSL 認証のみがサポートされています。クライアントベースの認証はサポートされていません。
有効なネットワークエージェントのパッケージ名の例を次に示します:
network-agent-x86-32-16.1R4.12-C1.1.tgz
メモ:ネットワークエージェントパッケージの各バージョンは、Junos OS の単一リリースでのみサポートされます。サポートされている Junos OS のバージョンは、ネットワークエージェントのパッケージ名に含まれる Junos OS リリース番号で識別されます。
Junos OS または Junos OS Evolved の 32 ビットバージョンと 64 ビットバージョンの両方で、32 ビットネットワークエージェントパッケージを使用します。
ネットワークエージェントパッケージをダウンロードしてインストールするには:
-
ジュニパーネットワークスのウェブページにある「すべてのJunos Platform」ソフトウェアのダウンロードURLに移動します :https://www.juniper.net/support/downloads/。
-
ダウンロードするソフトウェアの Junos OS プラットフォームの名前を選択します。
-
[ソフトウェアのダウンロード]ページの右側にある [リリース ]ドロップダウンリストからリリース番号(ダウンロードするソフトウェアバージョンの番号)を選択します。
-
[ ソフトウェア ]タブを選択します。
-
[ソフトウェア]タブの[ツール]セクションに移動し、リリースのJunosネットワークエージェントパッケージを選択します。
-
ジュニパーネットワークスの担当者から提供されたユーザー名(通常は電子メールアドレス)とパスワードを使用して、ジュニパーネットワークスの認証システムにログインします。
-
ソフトウェアをローカルホストにダウンロードします。
-
ソフトウェアをジュニパーネットワークスデバイスまたは社内のソフトウェア配布サイトにコピーします。
-
動作モードから を発行して
request system software add package-name
、デバイスに新しいnetwork-agent
パッケージをインストールします。例えば:
user@host > request system software add network-agent-x86-32-16.1R3.16-C1.0.tgz
メモ:このコマンドでは、デフォルトで オプションが使用されます
validate
。このオプションは、デバイスが正常に再起動することを確認するために、ソフトウェア パッケージを追加するための前提条件として、現在の設定に対してソフトウェア パッケージを検証します。これは、追加するソフトウェア パッケージが異なるリリースである場合のデフォルトの動作です。
OpenConfig パッケージとネットワークエージェントパッケージがインストールされているかどうかを確認するには、次のコマンドを入力します:
user@host> show version | match "Junos:|openconfig|na telemetry" Junos: 19.2R1.8 JUNOS na telemetry [19.2R1.8] JUNOS Openconfig [19.2R1.8]
詳細については、「 Junos Telemetry Interface 上の OpenConfig と gRPC について 」を参照してください。
-
-
ネットワークエージェントは、PPC プラットフォーム(MX104、MX80 など)ではサポートされていません。
-
Device Configuration
以下のコマンドを入力して、デバイスを設定します。
set system services extension-service request-response grpc clear-text port <port number>
Paragon Automation GUIのデバイス設定でOpenConfigポートを設定するには、 デバイスの編集の「デバイスの編集」ページの表にある編集可能なフィールドを参照してください。
Syslog
Paragon Insightは、上記のJTI関連のオプションに加えて、他のインジェストメカニズムと連携したデータモデルを使用して、データ収集方法としてシステムログもサポートしています。
デバイスは、ルーターの管理インターフェイスを使用してルーティングエンジン(RE)を介して帯域外で、またはパケット転送エンジンを介して帯域内、つまりラインカードから直接、UDP経由でParagon Insightsサーバーにsyslogメッセージ(設定されている場合)をプッシュできます。
syslog形式を使用するには、syslogメッセージの送信先などの設定をデバイスに設定します。データの収集を開始するようにParagon Insightを設定すると、メッセージはすでにサーバーに流れています。
ジュニパーのデバイスで使用される syslog の詳細については、 Junos OS システムログの概要を参照してください。
syslog メッセージは、ヘッダー、角括弧内のキーと値の形式の構造化データ、およびログ メッセージで構成されます。ヘッダーは、次の情報で構成されます。
-
ログの優先度
-
ヘッダー形式の Syslog プロトコル仕様のバージョン番号。
現在、この数は 1 です。
-
メッセージが "Mmm dd hh:mm:ss" の形式で生成されたときのタイムスタンプ。
-
ホスト名は、syslogメッセージを送信したデバイスを識別します。
-
アプリケーション名
-
アプリケーション プロセス ID
-
メッセージ ID
Paragon InsightsでSyslogを設定するための要件
Syslogの取り込みでは、ルールのセンサーとして使用する前に、いくつかの設定が必要です。
-
パターン:パターンは、いくつかのsyslogイベントを識別します。監視するイベントごとにパターンを作成します。構造化イベントと非構造化イベントの両方のパターンを設定できます。
-
パターンセット:パターンを設定したら、パターンセットにグループ化し、ルール内でsyslogセンサー設定を定義するときに参照します。
Syslog取り込みのパターンとパターンセットを設定する前に、次のフィールドがsyslogメッセージで共通であることに注意してください。Paragon Insightはこれらのフィールドを抽出して未加工のテーブルに自動的に含めるため、ルールの作成時に直接利用することができ、パターンを設定する必要がありません。
これらの値の使用方法を説明するために、次の 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アプリケーションをホストするサーバーおよび仮想マシンからデータを収集します。センサーは、サードパーティのプラグインであるノードエクスポーターを使用します。ノードエクスポータープラグインは、Paragon Automationのすべてのサーバークラスタにプリインストールされています。GUIでは、Paragon Automationクラスタに導入されたデフォルトサーバーと仮想マシンは、 Paragonクラスタ デバイスグループに自動的に追加されるデバイスとして表されます。センサーはサーバーと仮想マシンからデータを収集し、CPU、メモリ、ネットワーク、トラフィック、ディスク、およびファイルシステムのメトリックを追跡します。出力を時系列データベースに書き込みます。
ユーザーは、デフォルトの Paragon-Cluster デバイスグループを削除しないでください。
Paragon Automationには、サーバーデータを監視するための以下の事前設定されたプレイブックがあります。
- CPU使用率
- ディスクの読み取りと書き込み
- エラー、使用可能なバイト数、ファイルシステム内での使用バイト数
- メモリ内の使用バイト数と使用可能なバイト数
- 送受信された合計パケットサイズ、送受信パケットのエラー、ネットワークで受信および送信されたマルチキャストパケットの合計
サーバー監視の取り込みを使用してルールを構成する場合、 表 1 にリストされているセンサー パスの一部を使用できます。
センサーパス | の説明 |
---|---|
/ノード/ブート/時間/秒 | 各サーバ ノードのブート時間。 |
/ノード/CPU/秒/合計 | CPU がアイドル、システム、ユーザー、および Nice モードのままである合計時間 (秒単位)。 |
/ノード/ディスク/読み取り/バイト/合計 | 正常に読み取られた合計バイト数。 |
/ノード/ディスク/読み取り/エラー/合計 | ノード内の読み取りエラーの合計数。 |
/ノード/ディスク/読み取り/再試行/合計 | 障害が発生した場合に、インジェストがディスクからの読み取りを試行する回数。 |
/ノード/ディスク/読み取り/セクター/合計 | 正常に読み取られたセクターの総数。 |
/ノード/ディスク/読み取り/時間/秒/合計 | ノードごとに読み取りが正常に完了するのにかかった合計時間。 |
/ノード/ディスク/読み取り/完了/合計 | 正常に完了した読み取りの合計数。 |
/ノード/ディスク/書き込み/エラー/合計 | 書き込みエラーの総数 |
/ノード/ディスク/書き込み/再試行/合計 | 障害が発生した場合に、取り込みがディスクへの書き込みを試行する回数。 |
/ノード/ディスク/書き込み/時間/秒/合計 | すべての書き込みを完了するのにかかった合計時間。 |
/ノード/ディスク/書き込み/完了/合計 | ノードごとに完了した書き込みの合計数。 |
/ノード/ディスク/書き込み/バイト/合計 | 正常に書き込まれた合計バイト数。 |
/ノード/ディスク/書き込み/セクタ/合計 | 正常に書き込まれたセクターの総数。 |
/node/exporter/build/info | 値「1」を持ち、ノードエクスポーターが構築されるバージョン、リビジョン、goバージョン、およびブランチを持つメトリック。 |
/node/filesystem/avail/bytes | 非 root ユーザーが使用できるファイルシステムのサイズ。 |
/ノード/ファイルシステム/デバイス/エラー | ファイルシステムからデータを収集するときに発生するI/Oエラーの数。 |
/ノード/ファイルシステム/ファイル | ノードで許可されるインデックス ノードの合計数。 |
/ノード/ファイルシステム/ファイル/無料 | ノードで無料で使用できるインデックス ノードの数。 |
/ノード/ファイルシステム/空き/バイト | ユーザーが使用できる空き領域 (バイト単位) (予約済みブロックを除く)。 |
/ノード/ファイルシステム/読み取り専用 | ノード内のファイルシステムが読み取り専用としてマウントされているかどうかを示すデータ。 |
/ノード/ファイルシステム/サイズ/バイト | すべてのファイルのサイズ (バイト単位)。 |
/node/load1 | 1 分ごとにキャプチャされる各サーバー/ホスト ノードの負荷。 |
/node/load15 | 15 分ごとにキャプチャされた各サーバー/ホスト ノードの負荷。 |
/node/load5 | 5 分ごとにキャプチャされる各サーバー/ホスト ノードの負荷。 |
/ノード/メモリ/アクティブ/バイト | プロセスによってアクティブに使用されるメモリ バイト。 |
/ノード/メモリ/圧縮/バイト | 圧縮メモリの合計サイズ。 |
/ノード/メモリ/空き/バイト | ノードで使用できる空きメモリーの合計 (バイト単位)。 |
/ノード/メモリ/非アクティブ/バイト | プロセスによってアクティブに使用されていないメモリ バイト。 |
/ノード/メモリ/スワップ/合計/バイト | ノードでスワップされたメモリの合計。 |
/ノード/メモリ/スワップ/使用/バイト | ノードで使用されているスワップされたメモリの量。 |
/ノード/メモリ/スワップ/イン/バイト/合計 | ノード内のメモリ内でスワップされた合計。 |
/ノード/メモリ/スワップ/アウト/バイト/合計 | ノード内のスワップアウトされたメモリの合計。 |
/ノード/メモリ/合計/バイト | ノード内のメモリの合計バイト数。 |
/ノード/メモリ/有線/バイト | スワップアウトできないメモリ。 |
/ノード/ネットワーク/受信/バイト/合計 | デバイスが受信したパケットの合計サイズ。 |
/node/network/receive/errs/total | パケットの受信時にデバイスによって発生したエラーの総数。 |
/ノード/ネットワーク/受信/マルチキャスト/合計 | デバイスが受信したマルチキャスト パケットの総数。 |
/ノード/ネットワーク/受信/パケット/合計 | デバイスが受信したパケットの総数。 |
/ノード/ネットワーク/送信/バイト/合計 | デバイスから送信されたパケットの合計サイズ。 |
/node/network/transmit/errs/total | パケットの送信中にデバイスで発生したエラーの総数。 |
/ノード/ネットワーク/送信/マルチキャスト/合計 | デバイスによって送信されたマルチキャスト パケットの総数。 |
/ノード/ネットワーク/送信/パケット/合計 | デバイスによって送信されたパケットの総数。 |
/ノード/スクレイプ/コレクター/期間/秒 | 各コレクターがメトリックをスクレイピングするのにかかる時間。 |
/node/scrape/collector/success | ノードエクスポーターコレクターがターゲットを正常にスクレイピングした回数。 |
/node/textfile/scrape/error | Node Exporter がテキストファイルスクリプトを使用してターゲットをスクレイピングする際に発生するエラー。 |
/ノード/時間/秒 | エポック (1970) 以降のノードのシステム時刻を秒単位で表示します。 |
/node/uname/info | ノードエクスポーターがメトリックを収集するノードの名前。 |
モード、デバイスなどの次のタグは、メインメトリック(/node/cpu または /node/network)にリストされているすべてのメトリックに適用可能なキーフィールドとして使用できます。
ルールでキー フィールドを構成する場合、[ パス ] フィールドのキー フィールド名のみを指定できます。
- /node/cpu/
- cpu: CPU で使用可能なコアの数。
- mode: ノード内の CPU 使用率のタイプ (アイドル、システム、ユーザー、ナイスなど)。
- /ノード/ディスク/
- device: disk0、disk1、sda、sdb、sdc などのディスクの名前。
- /ノード/ファイルシステム/
- device: /dev/sda1、/dev/sda2、/dev/sdb1 などのディスク パス
- fstype:ext4、NTFS(新技術ファイルシステム)、APFS(Appleファイルシステム)などのパーティションフォーマットのタイプ。
- mountpoint: デバイス内のパスをマウントします。
- /ノード/ネットワーク/
- 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リクエストを開始します。デバイスは(適切に構成されている場合)要求されたデータで応答します。
Paragon Automation Platformでは、iAgentの取り込みは、Arista Networks、Palo Alto Networks、Ciscoの他のベンダーのデバイスに拡張されます。
iAgent センサーまたは NETCONF 接続を使用してテレメトリデータを送信するには、Junos デバイスを設定する必要があります。
iAgent(NETCONF)には、少なくとも以下が必要です。
-
Junos OS バージョン: 11.4 以降
-
最低限必要なデバイス構成:
set system services netconf ssh
Paragon Automation GUIでインバウンド接続用のiAgentまたはNETCONFポートを設定するには、 表1を参照してください。
Paragon Automationは、Netmikoを使用して、選択したポートを介してサードパーティデバイスへのインバウンドSSH接続を確立します。デバイス情報を収集するために、Paragon AutomationはCLIコマンドをSSH経由で送信し、文字列ブロブを出力として受信します。文字列ブロブは、NTCテンプレートを使用してTextFSMを介してJSON形式に解析され、データベースに格納されます。デフォルトのテンプレートは /srv/salt/_textfsm にあります。ネットワーク デバイス用の NTC テンプレート の GitHub リポジトリにアクセスできます。
存在しないテンプレートを必要とする上級ユーザーについては、[設定>ルール]ページの[ルールファイルのアップロード]ボタンを使用して、独自のテンプレートを作成し、Paragon Insightsにアップロードできます。ユーザー定義テンプレートは /jfit/_textfsm に保存されます。ファイルは .textfsm サフィックスで終わる必要があります。Paragon Automationプラットフォームで事前定義されたルールをアップロードする方法については、事前定義されたルールの追加を参照してください。
TextFSMは、iAgentに不可欠なPyEZのテーブル/ビュー機能に統合されています。
Example: PaloAlto Panos– Show Running Security Policy
Panosデバイスで実行中のセキュリティポリシーを確認するには、次の手順を実行する必要があります。
-
PyEZテーブル/ビューの定義—そのテーブル/ビューを定義します
-
デバイスから出力を収集:必要なCLIコマンドをSSH経由でデバイスに送信して出力を収集します
-
Paragon Automation データベースで使用する JSON を生成 - Paragon Automation データベースに保存する JSON を生成します。
PyEZテーブル/ビューの定義
Panosデバイスに割り当てられたiAgentルールで使用されるPyEZテーブルを定義する必要があります。次のテーブル定義には、ビュー定義がありません。このため、からの show running security-policy
出力全体が処理後にデータベースに格納されることになります。
--- PanosSecurityPolicyTable: command: show running security-policy platform: paloalto_panos key: NAME use_textfsm: True
(オプション)受信したデータの一部のみをParagon Automationに保存するには、同じファイルにビューを定義します。このビューは、どのフィールドに注意すべきかをParagon Automationに指示します。
--- PanosSecurityPolicyTable: command: show running security-policy platform: paloalto_panos key: NAME use_textfsm: True view: TrafficAndActionView TrafficAndActionView: fields: source: SOURCE destination: DESTINATION application_service: APPLICATION_SERVICE action: ACTION
デバイスからの出力の収集
上記で定義したPyEZテーブル(またはテーブル/ビュー)を参照するiAgentルールを使用して、Paragon Automationは show running security-policy
コマンドをデバイスに送信すると、以下の出力が生成されます。
"intrazone-default; index: 1" { from any; source any; source-region none; to any; destination any; destination-region none; category any; application/service 0:any/any/any/any; action allow; icmp-unreachable: no terminal yes; type intrazone; } "interzone-default; index: 2" { from any; source any; source-region none; to any; destination any; destination-region none; category any; application/service 0:any/any/any/any; action deny; icmp-unreachable: no terminal yes; type interzone; } dynamic url: no
Paragon Automation データベースで使用する JSON の生成
デバイス設定では、ベンダーとして Palo Alto Networks を、オペレーティング システムとして Panos OS が指定されているため、この例で使用する TextFSM テンプレートは次のようになります。
Value Key,Filldown NAME (.*?) Value Required FROM (\S+) Value SOURCE (\S+) Value SOURCE_REGION (\S+) Value TO (\S+) Value DESTINATION ([\S+\s+]+) Value DESTINATION_REGION (\S+) Value USER (\S+) Value CATEGORY (\S+) Value APPLICATION_SERVICE ([\S+\s+]+) Value ACTION (\S+) Value ICMP_UNREACHABLE (\S+) Value TERMINAL (\S+) Value TYPE (\S+) Start ^${NAME}\s+\{ ^\s+from\s+${FROM}; ^\s+source\s+${SOURCE}; ^\s+source-region\s+${SOURCE_REGION}; ^\s+to\s+${TO}; ^\s+destination\s+${DESTINATION}; ^\s+destination-region\s+${DESTINATION_REGION}; ^\s+user\s+${USER}; ^\s+category\s+${CATEGORY}; ^\s+application/service\s+${APPLICATION_SERVICE}; ^\s+action\s+${ACTION}; ^\s+icmp-unreachable:\s+${ICMP_UNREACHABLE} ^\s+terminal\s+${TERMINAL}; ^\s+type\s+${TYPE}; ^} -> Record
上記のテンプレートをParagon Automationが前述の出力を解析するために使用すると、結果のJSONは次のようになります。
{'"interzone-default; index: 2"': {'ACTION': 'deny', 'APPLICATION_SERVICE': '0:any/any/any/any', 'CATEGORY': 'any', 'DESTINATION': 'any', 'DESTINATION_REGION': 'none', 'FROM': 'any', 'ICMP_UNREACHABLE': 'no', 'SOURCE': 'any', 'SOURCE_REGION': 'none', 'TERMINAL': 'yes', 'TO': 'any', 'TYPE': 'interzone', 'USER': ''}, '"intrazone-default; index: 1"': {'ACTION': 'allow', 'APPLICATION_SERVICE': '0:any/any/any/any', 'CATEGORY': 'any', 'DESTINATION': 'any', 'DESTINATION_REGION': 'none', 'FROM': 'any', 'ICMP_UNREACHABLE': 'no', 'SOURCE': 'any', 'SOURCE_REGION': 'none', 'TERMINAL': 'yes', 'TO': 'any', 'TYPE': 'intrazone', 'USER': ''}}
アウトバウンド 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 は、デバイス グループの構成例です。
次のクライアント構成例を使用すると、デバイス 10.1.1.1 は、同じポートを持つ 2 つのアウトバウンド SSH クライアントを使用して、2 つのデバイス グループに接続できます。
set system services outbound-ssh client outbound-ssh1 device-id r0 set system services outbound-ssh client outbound-ssh1 10.1.1.1 port 2020 set system services outbound-ssh client outbound-ssh2 device-id r1 set system services outbound-ssh client outbound-ssh2 10.1.1.1 port 2020
この例の10.1.1.1は、Paragon Automation(ホスト)IPアドレスを示しています。
Snmp
SNMP は広く知られ、受け入れられているネットワーク管理プロトコルであり、ジュニパーネットワークスを含む多くのネットワークデバイスメーカーが、デバイスで使用するために提供しています。これは、SNMP を使用するように設定されたネットワークデバイスが、設定、診断、およびイベント情報をコレクターが利用できるようにするポーリングタイプのプロトコルです。これらの情報も適切に設定および認証する必要があります。コレクターは、get 要求と呼ばれる特別に構造化された要求を送信してデバイスをポーリングし、データを取得します。
Paragon Automationは、センサータイプとしてSNMPをサポートしており、標準のgetリクエストを使用してデバイスから統計情報を収集します。Paragon Automationは、インバンドかアウトオブバンドかにかかわらず、利用可能なあらゆるインターフェイスを介してリクエストを行い、デバイスは要求されたデータで(設定されている場合)応答します。
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 特定のスカラーを検証します。
MAX-ACCESS MIB 定義で読み取り専用、読み取り作成、または読み取り/書き込みに設定されている場合、そのオブジェクトはスカラーとして照会できます。
スカラーオブジェクトを照会するための完全なパスは MIB-Name::table column name:index number
です。
たとえば、 IF-MIB::ifInOctets:16
.