Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

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

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

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

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

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

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

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

    注:リリースJunos OS 25.4R1以前は、TLSオプションは edit system services extension-service request-response grpc ssl階層下で構成されていました。Junos OSリリース25.4R1以降では、公開キーインフラストラクチャ(PKI)コマンドを使用してローカル証明書と認証機関(CA)プロファイルを読み込みます。 ストリーミングサーバープロファイルの設定を参照してください。
  • サポートされているセンサーについては、 Junos YANGデータモデルエクスプローラ (Junos OSリリース23.2R2-S2で導入)または Junosテレメトリセンサーエクスプローラ (リリース20.2R1〜23.1R1用)を参照してください。

  • TCP 接続を介したダイヤルアウトについては、「 TCP 接続を介したダイヤルアウト用の gRPC サービスを設定する」を参照してください。

  • ダイヤルアウトテレメトリのタイプ:

    Junos Telemetryは、3種類のダイヤルアウト接続をサポートしています。接続タイプごとに異なるメッセージ形式が使用され、特定のデコード要件があります。 dialout-typeを設定するには、 エクスポートプロファイルの設定を参照してください。

    表1:ダイヤルアウトテレメトリの種類
    ダイヤルアウトタイプ CLIオプションを使用して設定する メッセージ形式 データモデル デコード要件 トランスポートプロトコル サブスクリプションタイプ
    UDP(Protobuf Compact Format、ジュニパー独自)を介したダイヤルアウト native-udp-compact protobuf(.gpb)形式のセンサーデータ。Protobufメッセージはコンパクトな形式です。 JunosネイティブモデルとOpenConfigモデル。 Junos固有のユーティリティ、 テレメトリ_top.proto、センサープロトファイルをデコードに使用します。 UDP ストリーム
    UDP(Protobuf Structured Format)を介したダイヤルアウト native-udp-gpb Protobufメッセージは、構造化された自己記述型キーと値のペアになっています。 すべてのデータモデル メッセージには完全なキー名と値のペア情報が含まれているため、コレクターは、テレメトリデータを処理または消費するためのデータモデルを必要としません。メッセージ構造は、 jnx_gnmi_over_udp.proto ファイルで定義されます。 UDP SAMPLEモード付きSTREAM
    TCP(Protobuf Structured Format)を介したダイヤルアウト native-grpc-gpb Protobuf メッセージは、構造化されたユニバーサル キー/値形式です。 すべてのデータモデル デコードには gnmi.proto GnmiJuniperTelemetryHeader.proto を使用します。 TCP ストリーム
    注:リリース25.4以降、 [edit services analytics export-profile name]階層の formatおよび transportオプションは非推奨です。
    • Protobufコンパクトフォーマット:

      この形式は、冗長なキー値表現を含まないため、「コンパクト」と見なされます。ただし、テレメトリデータをデコードするには、protobufファイルの最新バージョンをダウンロードする必要があります。

    • Protobuf構造化フォーマット:

      この形式では、Protobuf メッセージ内で自己記述型キーと値のペアを使用します。各メッセージには完全なセンサーデータ名と値が含まれており、コレクターはデータモデルファイルがなくてもセンサーデータを処理できます。

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

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

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

  • エクスポートプロファイル—収集されたデータをエクスポートするための属性を指定します。

ベストプラクティス:

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

統計情報のエクスポートを有効にするには、[edit services analytics]階層レベルでexport-profileおよびsensorステートメントを含めます。センサーの設定には、コレクターの名前、エクスポートプロファイルの名前、リソースパスが含まれている必要があります。

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

注:

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

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

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

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

注:

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

  1. テレメトリデータは、UDPを介してソースアプリケーションからコレクターに直接ストリーミングされます。設定は、コレクターへの接続のタイプによって異なります。コレクターは、管理インターフェイスまたは WAN インターフェイス経由で到達可能である必要があります。
  2. ラインカードセンサーの場合、WANインターフェイス経由でリモートアドレスに到達可能であれば、ラインカードはデータをコレクターに直接エクスポートできます。ラインカードセンサーの管理インターフェイス経由でテレメトリデータをエクスポートする必要がある場合は、データをルーティングエンジンにルーティングしてからコレクターに送信します。

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

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

    例えば、ストリーミングサーバー名を指定するには telemetry-server:

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

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

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

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

  4. TLSパラメーター、ローカルcertificate-id、ca-profileを指定します。各ストリーミングサーバーのTLSパラメーターを設定できます。ダイヤルアウト接続では、各ストリーミングサーバーのTLSパラメーターを設定する必要があります。
    注:TLSはUDPには適用されません。
    注:

    リリース25.4以前は、TLSオプションは edit system services extension-service request-response grpc ssl 階層下で構成されていました。この設定方法は、リリース25.4以降サポートされなくなりました。

    注:

    リリース25.4以降では、以下の公開キーインフラストラクチャ(PKI)コマンドを使用して、ローカル証明書と認証機関(CA)プロファイルを読み込みます。

    • request security pki local-certificate load certificate-id certificate id filename dialout_client.crt key dialout_client.key

    • request security pki ca-certificate load ca-profile ca-profile-name filename path/filename

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

センサープロファイルは、データを監視およびストリーミングするためのシステムリソースのパラメーターを定義します。センサープロファイルごとに監視できるシステムリソースは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] 階層レベルで設定されたストリーミングサーバー名を指定します。
    注:

    センサープロファイルに複数のストリーミングサーバーを指定できます。センサーに複数のストリーミングサーバーを指定するには、名前を括弧で囲む必要があります。

    例えば、ストリーミングサーバー名の telemetry-serverinterface-1という名前のセンサーに関連付けるには:

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

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

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

機能エクスプローラーを使用して、特定の機能のプラットフォームとリリースのサポートを確認します。

お使いのプラットフォームに固有の動作を確認するには、以下の表を使用して下さい:

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

プラットフォーム

違い

MXシリーズ

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

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

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

    例えば、エクスポートプロファイル名を指定するには export-params:

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

    例えば、名前が export-paramsのエクスポートプロファイルに送信元IPアドレス192.0.2.3を指定するには:

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

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

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

    • 有効な範囲:23.4 R2より前のリリースでは、1〜86400秒(24時間)。

    注:

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

    例えば、 export-params という名前のexport-profileに関連付けられたセンサーがテレメトリデータを生成する20秒の間隔を指定するには:

  5. ダイヤルアウト接続のタイプを指定します。
    • native-udp-gpb:UDP(Protobuf Structured Format)接続を介したダイヤルアウトの場合にこのオプションを選択します。メッセージ形式は、構造化された自己記述型キーと値のペアを持つprotobufメッセージで、トランスポートプロトコルはUDPです。

    • native-udp-compact:UDP(Protobuf Compact Format、ジュニパー独自)接続を介したダイヤルアウトの場合にこのオプションを選択します。メッセージ形式は.gpbで、トランスポートプロトコルはUDPです。

    • native-grpc-gpb:TCP(Protobuf Structured Format)接続を介したダイヤルアウトの場合にこのオプションを選択します。メッセージ形式はgpb-gnmi(構造化されたユニバーサルキー/値形式のprotobufメッセージ)で、トランスポートプロトコルはTCPです。

    例えば、UDP経由でネイティブセンサー情報をストリーミングするには、以下を行います。

    注:リリース25.4以降、 formatオプションと transportオプションは非推奨です。
  6. (オプション)エクスポートされたパケットに割り当てるDiffServコードポイント(DSCP)値を指定します。
    注:

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

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

    例えば、名前が export-paramsのエクスポートプロファイルにDSCP値20を指定するには:

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

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

    例えば、名前がexport-paramsのexport-profileのassured-forwardingの転送クラスを指定するには:

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

    例えば、名前がexport-paramsのエクスポートプロファイルの損失優先度をhighに指定するには:

データコレクターを設定する

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

    コレクターの設定例(UDPベースのコレクターの場合):

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

  2. データコレクターで、データが受信されたかどうかを確認します。たとえば、PrometheusまたはGrafanaがデータコレクタとして使用されている場合は、ログまたは可視化を確認します。カスタムコレクターの場合は、データストリームが設定されたセンサーパスと一致していることを確認します。
  3. Junosテレメトリデータをデコードするには、UNIX公共事業を使用したJunosテレメトリインターフェイスデータのデコードを参照してください。

Junosテレメトリインターフェイスセンサーの設定を確認する

目的

設定を確認します。

アクション

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

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

注:

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

センサーパスの選択

センサーエクスプローラとセンサーパス選択ガイドライン

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

注: Junos YANGデータモデルエクスプローラは、23.2R2-S2リリースで導入されました。リリース 20.2R1 から 23.1R1 までのセンサー情報は、 Junos テレメトリ センサー エクスプローラーで利用できます。

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

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

UNIX公共事業によるJunosテレメトリインターフェイスデータのデコード

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

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

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

  • Netcat(nc)ユーティリティを使用したUNIX OS。

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

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

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

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

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

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

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

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

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

    注:ジュニパーネットワークスは、Junosデバイス用のYANGモジュールを公開しており、 ジュニパーのGitHubリポジトリからダウンロードできます。リリース23.4以降、設定とテレメトリYANGモデルは統合され、 ジュニパーのGitHubリポジトリで公開されています。これには、設定、RPC、テレメトリモデルのYANG定義が含まれています。
    注:

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

コレクターでデータをデコードする

この手順では、データをキャプチャする方法、未加工データをデコードする方法、およびプロトコルバッファファイルを使用してデータをデコードする方法について説明します。

データをデコードするには:

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

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

    注:

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

  2. 未加工データをデコードします。

    注:

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

    デコード要件は、設定された dial-out タイプによって異なります。

    • UDP(Protobuf Compact Format、ジュニパー独自)を介したダイヤルアウト:Junos固有のユーティリティ、 テレメトリ_top.proto、センサープロトファイルをデコードに使用します。

    • UDP(Protobuf Structured Format)によるダイヤルアウト:メッセージには、完全なキー名と値のペア情報が含まれているため、コレクターは、テレメトリデータを処理または消費するためにデータモデルを必要としません。メッセージ構造は、 jnx_gnmi_over_udp.proto ファイルで定義されます。

    • TCPを介したダイヤルアウト(Protobuf Structured Format):デコードには gnmi.proto ファイルと GnmiJuniperTelemetryHeader.proto ファイルを使用します。

    次の例は、UDP(Protobuf Compact Format、ジュニパー独自)接続を介したダイヤルアウトのために、 data.gpb ファイルからメッセージをデコードする方法を示しています。

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

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

    decodeオプションを指定してプロトコルバッファコンパイラを実行します。さらに、トップレベルメッセージタイプ(TelemetryStream)とメッセージ定義を含むファイル( logical_port.proto)を指定します。また、Goggle プロトコル バッファー(gpb)ライブラリも含める必要があります。

コレクターでの Junos テレメトリ インターフェイス UDP データのデコード

コレクターは、受信データを読み取るために、リモートアドレスまたはポートの組み合わせでリスナーを開始する必要があります。UDP(Protobuf Compact Format、ジュニパー独自)接続を介したダイヤルアウトの場合、 テレメトリ_top.proto ファイルとセンサープロトファイルを使用して、受信データをデコードできます。UDP(Protobuf Structured Format)接続を介したダイヤルアウトの場合、メッセージには完全なキー名と値のペア情報が含まれるため、コレクターはテレメトリデータを処理または使用するためのデータモデルを必要としません。メッセージ構造は、 jnx_gnmi_over_udp.proto ファイルで定義されます。

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

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

テレメトリデータがUDP経由でストリーミングされる場合は、データが正しくデコードされ、不明なフィールドがコレクターでデコードされないようにしてください。

UDP経由でテレメトリデータをストリーミング中に観察された問題には、次のようなものがあります。

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

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

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

変更履歴テーブル

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

リリース
説明
17.3R1
MXシリーズルーターでのみ、Junos OSリリース17.3R1以降、エクスポートプロファイルにパケット損失の優先度を指定できます。
変更完了
Junos OSリリース25.4R1以降、CLIオプション dialout-typeexport-profile コマンドに導入され、トランスポートプロトコルとテレメトリメッセージフォーマットが設定されています。 format オプションと transport オプションは非推奨です。