Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

ダイヤルアウト テレメトリ接続を確立する

ダイヤルアウト テレメトリ接続を確立するには、この手順を使用します。Junos デバイスから収集するセンサー情報に基づいて、gRPC サービス、ストリーミング サーバー プロファイル、センサー プロファイル、エクスポート プロファイル、データ コレクターを構成します。

ダイヤルアウトモードでは、ジュニパーデバイスは外部のテレメトリコレクターへの接続を開始し、テレメトリデータをストリーミングします。この方法は、テレメトリデータの一元管理が必要な場合に適しており、コレクターが接続を開始する必要なく、デバイスがデータをコレクターにプッシュするためです。

  • ジュニパーデバイスで、Junos Telemetryをサポートする互換性のあるJunos OSバージョンが実行されていることを確認します。

  • 選択したトランスポートプロトコル(UDP、gRPCなど)と互換性のあるテレメトリコレクター(Juniper Telemetry Collector、Prometheus、InfluxDBなど)を設定します。

  • ジュニパーデバイスとコレクター間のネットワーク接続を確認します(たとえば、gRPCの場合はTCPポート50051、UDPの場合はカスタムポートなど)。

  • gRPC で TLS を使用する場合は、デバイスとコレクターの証明書を準備します。

  • サポートされているセンサーについては、 Junos YANGデータモデルエクスプローラー (Junos OS リリース23.2R2-S2で導入)または Junos Telemetry Sensor Explorer (リリース20.2R1〜23.1R1用)を参照してください。

  • レガシ gRPC ダイヤルアウト接続については、IP アドレスとルーティング インスタンスを構成するには、「 レガシ ダイヤルアウト接続の gRPC サービスを構成する」を参照してください。

特定のシステム リソースを監視するようにセンサーを構成します。各センサー構成には、3つの主要コンポーネントが必要です。

  • ストリーミング サーバー プロファイル - データを収集するサーバーと、IP アドレスやポート番号などの関連パラメーターを指定します。開始する前に、ジュニパーネットワークスデバイスからインバンド管理インターフェイスを使用しているサーバーへの接続を設定します。

  • センサープロファイル:システムリソースのモニタリングを可能にし、データの受信に使用される宛先サーバーなどの関連パラメータを設定できます。

  • [プロファイルのエクスポート(Export profile)]:使用するトランスポート プロトコルやデータを収集する間隔など、収集したデータをエクスポートするための属性を指定します。

ベスト プラクティス:

センサープロファイルを設定する前に、少なくとも 1 つのエクスポートプロファイルと少なくとも 1 つのストリーミングサーバーを設定することをお勧めします。その後、エクスポート プロファイルとストリーミング サーバーをセンサー プロファイル構成に関連付けることができます。

統計のエクスポートを有効にするには、[edit services analytics]階層レベルでexport-profileおよびsensorステートメントを含めます。エクスポートプロファイルには、レポートレート、トランスポートサービス(gRPCなど)、および形式(gbp-gnmiなど)を含める必要があります。センサー構成には、コレクター名、エクスポートプロファイルの名前、およびリソースパスを含める必要があります。

リソースパスの例: /interfaces/interface[name='fxp0'

手記:

gNMI ダイヤルアウトのエクスポート プロファイルを設定する場合、{'dscp', 'forwarding-class', 'payload-size'} などのエクスポート プロファイル パラメータは適用されません。これらのオプションのいずれかを設定すると、エラーが発生します。

次の手順に従って、ダイヤルアウト テレメトリ接続を確立します。

ストリーミング サーバー プロファイルの設定

サーバープロファイルは、エクスポートされたテレメトリデータを収集するサーバーのパラメーターを定義します。複数のサーバ プロファイルを定義できます。また、同じサーバ プロファイルを複数のセンサー プロファイルに関連付けることもできます。Junos OS リリース 15.1F6 以降、特定のセンサーに複数のサーバーを関連付けることができます。

手記:

UDP 経由でテレメトリ データをストリーミングする場合のガイドライン:

  1. テレメトリデータは、UDP経由でソースアプリケーションからコレクターに直接ストリーミングされます。設定は、コレクターへの接続のタイプによって異なります。コレクターは、管理インターフェイスまたは WAN インターフェイスを介して到達できる必要があります。
  2. ラインカードセンサーの場合、リモートアドレスがWANインターフェイス経由で到達可能であれば、ラインカードからコレクターにデータを直接エクスポートできます。ラインカードセンサー用の管理インターフェイス経由でテレメトリデータをエクスポートする必要がある場合は、データをルーティングエンジンにルーティングしてからコレクターに送信します。
  3. UDP 経由でのテレメトリ データの転送では、 .gpb 形式のみがサポートされています。以下は、センサー パス /junos/system/linecard/interface/のテレメトリ データを UDP 経由でストリーミングする構成の例です。データは、「10」秒ごとに、最大ペイロードサイズが「5000」のコレクターに、ポート番号3026のリモートアドレス143.1.1.2にエクスポートされます。

エクスポートされたテレメトリデータを収集するストリーミングサーバーのプロファイルを定義するには、次のようにします。

  1. ストリーミングサーバーの名前を指定します。

    たとえば、ストリーミングサーバー名に telemetry server を指定するには、次のようにします。

  2. エクスポートするパケットのIP アドレスを指定します。

    たとえば、 telemetry-server という名前のストリーミング サーバーの宛先アドレス 192.0.2.2 を指定するには、次のようにします。

  3. エクスポートするパケットの宛先ポート番号を指定します。

    たとえば、 telemetry-server という名前のストリーミング サーバーの宛先ポート番号 30000 を指定するには、次のようにします。

センサー プロファイルの設定

センサー プロファイルは、データを監視およびストリーミングするためのシステム リソースのパラメーターを定義します。センサー プロファイルごとに監視できるシステム リソースは 1 つだけです。監視するシステム リソースごとに異なるセンサー プロファイルを構成します。ただし、同じシステム リソースを監視するように複数のセンサーを設定することはできます。例えば、同じシステム・リソースからデータをエクスポートするために、異なるパラメーターを構成することを検討してください。

センサープロファイルを設定するには:

  1. センサーの名前を指定します。

    たとえば、 interface-1 のセンサー名を指定するには、次のようにします。

  2. データをモニターおよびストリーミングするシステム・リソースを指定します。

    たとえば、センサー interface-1の論理インターフェイスの監視を有効にするには、次のようにします。

    手記:

    リソース文字列を正確に入力する必要があります。

  3. (オプション)正規表現を指定して、ステップ 2 で指定したシステムリソースのデータをフィルタリングします。正規表現を指定しない場合、システム・リソースはグローバルに、つまりシステム全体でモニターされます。

    たとえば、センサー interface-1のイーサネット論理インターフェイスのみのデータをフィルタリングするには、次のようにします。

  4. センサープロファイルに関連付けるために、 [edit export-profile profile-name] 階層レベルで設定されたエクスポートプロファイルの名前を指定します。このエクスポートプロファイルは、テレメトリデータをエクスポートするためのパラメーターを定義します。

    たとえば、 export-params という名前のエクスポート プロファイルを interface-1 という名前のセンサーに関連付けるには、次のようにします。

  5. エクスポートされたデータを収集するために、 [edit services analytics streaming-server server-name] 階層レベルで設定されたストリーミングサーバー名を指定します。
    手記:

    Junos OS リリース 15.1F6 以降、1 つのセンサー プロファイルに複数のストリーミング サーバーを指定できます。1 つのセンサーに複数のストリーミング サーバーを指定するには、名前を角かっこで囲む必要があります。

    たとえば、ストリーミング サーバー名 telemetry-serverinterface-1 という名前のセンサーに関連付けるには、次のようにします。

エクスポート プロファイルの設定

エクスポートプロファイルは、Junos Telemetryメカニズムを介して生成されたデータのエクスポートプロセスのパラメーターを定義します。少なくとも 1 つのエクスポート プロファイルを設定する必要がありますが、複数のエクスポート プロファイルを設定することもできます。各エクスポート プロファイルは、複数のセンサー プロファイルに関連付けることができます。ただし、特定のセンサー プロファイルに関連付けることができるエクスポート プロファイルは 1 つだけです。

プラットフォーム固有の エクスポートプロファイル の動作

Feature Explorerを使用して、特定の機能に対するプラットフォームとリリースのサポートを確認します。

次の表を使用して、プラットフォームのプラットフォーム固有の動作を確認します。

表 1:プラットフォーム固有のエクスポート プロファイルの動作

プラットホーム

MXシリーズ

MXシリーズルーター上のみ、Junos OS リリース17.3R1以降、エクスポートプロファイルのパケット損失の優先度を指定できます。その結果、各センサーに適切なパケット損失の優先度を適用できます。損失の優先度の設定は、輻輳時にどのパケットをネットワークからドロップするかを判断するのに役立ちます。以前は、エクスポート プロファイルでフォワーディング クラスと DSCP 値のみを指定することができました。サポートされているパケット損失の優先度設定は、 highlowmedium-highmedium-lowです。パケット損失の優先度設定の詳細については、「 PLP から RED ドロップ プロファイルへのマッピング」を参照してください。

エクスポートプロファイルを設定するには:

  1. エクスポートプロファイルの名前を指定します。

    例えば、 export-params のエクスポートプロファイル名を指定するには、次のようにします。

  2. エクスポートされたパケットの送信元IPアドレスを指定します。

    例えば、 export-params という名前のエクスポートプロファイルに 192.0.2.3 の送信元 IP アドレスを指定するには、以下のようにします。

  3. エクスポートするパケットの送信元ポート番号を指定します。

    例えば、 export-paramsという名前のエクスポートプロファイルに対して、送信元ポート番号21111を指定するには、以下のようにします。

  4. センサーがテレメトリ データを生成する間隔を秒単位で指定します。
    • 設定された各間隔の終わりに、センサーは最新のサンプルを収集し、指定されたデータ収集サーバーに転送します。

    • 有効な範囲: 23.4 R2 より前のリリースの場合、1 から 86400 秒 (24 時間)。

    手記:

    Junos OSおよびJunos Evolved 23.4R2以降、 reporting-rate でサポートされる最小値は、パケット転送エンジン(PFE)センサーで 「2」 秒です。設定で 「2」 秒未満の値が指定されている場合、ソフトウェアアップグレードが実行されると、設定はドロップされ、値が修正されるまでテレメトリは動作しません。

    たとえば、 export-params という名前のエクスポート プロファイルに関連付けられたセンサーがテレメトリ データを生成する間隔を 20 秒に指定するには、次のようにします。

  5. エクスポートするデータの構造を定義する形式を指定します。
    手記:

    現在サポートされている形式は、Google プロトコル バッファ(gpb)のみです。

    例えば、 export-params という名前のエクスポートプロファイルのエクスポートデータの Google プロトコルバッファ形式を指定するには、次のようにします。

  6. テレメトリデータをIPパケットで伝送するトランスポートプロトコルを指定します。

    例えば、 export-params という名前のエクスポートプロファイルのテレメトリデータのトランスポートプロトコルとして UDP を指定するには、次のようにします。

    手記:トランスポート プロトコルを udp として設定し、エクスポートされたデータ形式を gpb-gnmi として一緒に設定するのは誤りです。
  7. (オプション)エクスポートされたパケットに割り当てる DiffServ コード ポイント(DSCP)値を指定します。
    手記:

    デフォルト値は 0 (ゼロ)です。

    設定したインターフェイスレベルの DSCP 書き換えルールは、エクスポート プロファイルに指定した DSCP 値を上書きします。発信インターフェイスで DSCP 書き換えルールを設定しない場合にのみ、エクスポート プロファイルの DSCP 値を指定します。詳細については、書き 換えルールの設定を参照してください。

    例えば、 export-params という名前のエクスポート プロファイルに DSCP 値 20 を指定するには、次のようにします。

  8. (オプション)エクスポートされたパケットに割り当てる転送クラスを指定します。
    手記:

    転送クラスを指定できるのは、パケット転送エンジンセンサーによってエクスポートされたパケットのみです。デフォルト値は best-effort です。

    例えば、export-params という名前のエクスポートプロファイルにassured-forwardingの転送クラスを指定するには、次のようにします。

  9. (オプション)(Junos OS リリース 17.3R1 以降の MXシリーズルーターのみ)エクスポートされたパケットに割り当てるパケット損失の優先度を指定します。

    例えば、export-params という名前のエクスポートプロファイルに対して、損失の優先度を high に指定するには、以下のようにします。

データコレクタの設定

  1. コレクターがジュニパーデバイスからデータを受信する準備ができていることを確認します。
    • IP アドレス: デバイスの管理 IP アドレス (192.168.1.100)。
    • ポート: 構成されたポート (たとえば、UDP の場合は 2000、gRPC の場合は 50051)。
    • プロトコル: トランスポート プロトコル (UDP や gRPC など) を選択します。
    • 資格情報: TLS が有効になっている場合は、適切なクライアント証明書とキーを使用してコレクターを構成します。
    • データ形式: コレクターが Google Protocol Buffers (gpb) をサポートし、センサー データをデコードするために必要な protobuf 定義があることを確認します。

    コレクター構成の例(UDPベースのコレクターの場合):

    192.168.1.100:2000リッスンしてgpb-encoded データを処理するようにコレクターを構成します。

  2. データ コレクターで、データが受信されているかどうかを確認します。たとえば、Prometheus または Grafana がデータ コレクターとして使用されている場合は、ログまたは視覚化を確認します。カスタム コレクターの場合は、データ ストリームが構成されたセンサー パスと一致することを確認します。
  3. Junos Telemetry データをデコードするには、UNIX ユーティリティを使用した Junos Telemetry Interface データのデコードを参照してください。

Junos Telemetry Interface センサーの設定の確認

目的

設定を確認します。

アクション

設定モードから、 show services analytics コマンドを入力して設定を確認します。出力に意図した設定内容が表示されない場合は、設定手順の手順を繰り返して設定を修正します。

設定をコミットした後、 show agent sensors 運用コマンドを発行して、センサーが有効になっていることを確認します。

手記:

gRPC センサーの show agent sensors コマンド出力は、Junos OS Evolved プラットフォームでは、Junos OS プラットフォームの出力形式に合わせて切り捨てられます。

センサーパスの選択

センサーエクスプローラーとセンサーパスの選択に関するガイドライン

ジュニパーネットワークスの Junos YANGデータモデルエクスプローラ を使用して、サポートされているすべてのリソースパス、それに対応するリーフ、およびそれらをサポートするデバイスプラットフォームを表示します。

手記: Junos YANG Data Model Explorer は、23.2R2-S2 リリースで導入されました。リリース 20.2R1 から 23.1R1 までは、 センサー情報を Junos Telemetry Sensor Explorer で確認できます。

他のテレメトリ センサーと、一部のレガシ センサーに関する特定の情報を検索および表示するには、「 レガシ センサー パス」を参照してください。

センサー パスを構成するためのガイドラインとベスト プラクティスについては、「 センサー パスの探索」を参照してください。

UNIX ユーティリティによる Junos Telemetry Interface データのデコード

UNIXユーティリティを使用して、ジュニパーネットワークスデバイスからのストリーミングデータであるサーバーまたはコレクター上のJunos Telemetry Interfaceデータをデコードできます。このセクションの例では、ストリーミング データの 1 つのパケットをデコードする方法を示します。

データをデコードするためのコレクターの準備

この例では、次のものが必要です。

  • UNIX OS と Netcat (nc) ユーティリティー。

  • プロトコルバッファコンパイラ。

  • Junos Telemetry Interface プロトコル バッファ ファイル。

この手順では、Ubuntu OS を使用してデータをデコードするようにコレクターを準備する方法を示します。

  1. Netcatユーティリティをインストールします。

  2. プロトコル バッファー コンパイラをインストールします。

  3. プロトコルバッファ開発者ライブラリをインストールします。

  4. ライブラリ ファイルがインストールされていることを確認します。

  5. 最新バージョンのJunos Telemetryインターフェイスプロトコルバッファファイルをダウンロードしてインストールします。

    Web ブラウザから、ジュニパーネットワークス ページの [すべての Junos プラットフォーム] ソフトウェアのダウンロード URL に移動します。 https://www.juniper.net/support/downloads/。Junos OS プラットフォームの名前とリリース番号を選択したら、[ ツール ] セクションに移動して Junos Telemetry Interface データ モデル ファイル パッケージをダウンロードします。

    手記:

    抽出したファイルの場所をメモしておいてください。

コレクターでのデータのデコード

この手順では、データをキャプチャする方法、生データをデコードする方法、およびプロトコル バッファー ファイルを使用してデータをデコードする方法を示します。

データをデコードするには、次のようにします。

  1. データをキャプチャします。

    宛先ストリーミングテレメトリサーバーまたはコレクターで netcat を UDP リスナーモードで実行して、すべての受信データグラムをファイルに格納します。ジュニパーネットワークスデバイスのstreaming-serverプロファイルで構成された宛先ポート番号を使用します。

    手記:

    このコマンドは、データグラムを data.gpb という名前のファイルに格納します。このプログラムを実行してデータをキャプチャします。データの受信を停止したい場合は、ブレーク信号(Control + C)を送信してプログラムで停止してください

  2. 生データをデコードします。

    手記:

    この手順は省略可能です。データのエンコードされたメッセージタイプがわかっている場合は、必須ではありません。

    data.gpb ファイルからメッセージをデコードします。

    2636の下の次の入れ子構造は、センサーの種類を識別します。2636数値は、telemetry_top.proto ファイルで定義されているJuniperNetworksSensorメッセージを識別します。この例では、数値識別子7logical_port.protoファイルで定義されたLogicalPortメッセージに対応しています。次のステップでこの情報を使用して、より詳細な出力を生成します。

  3. メッセージをデコードしてフィールド名を含めます。

    プロトコル バッファー コンパイラを decode オプション付きで実行します。さらに、最上位のメッセージ・タイプ (TelemetryStream) と、メッセージ定義 logical_port.proto を持つファイルを指定します。また、Goggle protocol buffers (gpb) ライブラリを含める必要があります。

コレクターでのJunos Telemetry Interface UDPデータのデコード

コレクターは、受信データを読み取るために、リモートアドレスまたはポートの組み合わせでリスナーを開始する必要があります。受信データは、 telemetry_top.proto ファイルとセンサー proto ファイルを使用してデコードできます。

デコード手順を簡略化するために、コレクターはテレメトリソフトウェアパッケージの一部として出荷されたすべてのプロトファイルをロードして、受信データをデコードできます。

手記:
  1. 管理インターフェイスとWANインターフェイスの両方でストリーミングデータを検証します。ストリーミングサーバープロファイルに適切なアドレスを指定します。
  2. 列挙型と浮動小数点数は、UDP ストリーミングの文字列としてストリーミングされます。gNMI は同じ形式を使用するため、列挙型は文字列として保持されます。
  3. float データ型の処理は、将来のリリースを対象としています。

テレメトリ データが UDP 経由でストリーミングされる場合は、データが正しくデコードされ、不明なフィールドがコレクターでデコードされないことを確認します。

UDP 経由でテレメトリ データをストリーミングしているときに発生する問題には、次のようなものがあります。

  1. 誤ったデコード: 誤ったデコードは、テレメトリ データが UDP 経由で正しくストリーミングされていないことを意味します。次の例では、太字で強調表示されているデータは、データが正しくデコードされなかったことを示しています。この動作は、エンコードが正しくないか、proto ファイルのパッケージが間違っていることが原因です。

    正しくデコードされたデータの例は次のとおりです。

  2. 不完全なデータ ストリーミング: 不完全なデータのストリーミングは、出力ファイルのデータ検証によって検証する必要があります。

変更履歴

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer を使用します。

解放
形容
17.3R1
MXシリーズルーター上のみ、Junos OS リリース17.3R1以降、エクスポートプロファイルのパケット損失の優先度を指定できます。