リソースフィルタリング
リソースフィルタリング機能は、特定のネットワークデバイスコンポーネントからテレメトリデータを選択的にエクスポートし、帯域幅の使用量と処理時間を短縮します。
数千ものIFLおよびIFDを備えたフルロードのネットワーク・デバイスでは、すべてのIFLおよびIFDのデータを取得するには、複数回の試行が必要となり、かなりの帯域幅を消費する可能性があります。リソースフィルタリングにより、コレクターは特定のリソースから必要なデータのみを選択できます。この機能は、AFTプラットフォーム用のXPATHベースのリソースフィルタリングと、Junosマイクロカーネル上のPFEセンサー用のREGEXベースのフィルタリングをサポートします。
リソースフィルタリングの利点
-
キーなどのリソースの特定のインスタンスを選択または拒否できます。これには、特定の IFL/IFD またはすべての IFL/IFD からのデータを含めることができます。
-
ワイルドカード オプションを使用して、要素のリソースを選択的に選択できます。
リソースフィルタリングのタイプ
-
XPATHベースのフィルタリング - XPATHベースのフィルタリングは、1つ以上のパスのキーフィールドまたはワイルドカードを使用します。XPATH ベースのリソース フィルタリングでは、次のオプションがサポートされています。
-
正確なパスまたはキー。例:
/interfaces/interface[name=xe-0/0/0] -
キーの完全なワイルドカード。例:
/interfaces/interface[name=*] -
キーの部分的なワイルドカード。例:
/interfaces/interface[name=xe-0/0/*] -
複数レベルのキーオプション。つまり、特定のIFLまたはIFDに関連するデータです。
-
-
正規表現ベースのフィルタリング - 正規表現フィルタリングは、キーフィールドのみを使用します。次のような多くのオプションでキーを選択できます。
-
正確なパス
xe-0/0/0 -
xe-0/*で始まる -
*/0/0で終わる -
特定のインターフェイス
!xe-0/0/0ではない
-
-
XPATH ベースのリソース フィルタリングは、UDP トランスポート モードには適用されません。
-
gNMI リソース フィルタリングおよびワイルドカード フィルタリング オプションは、ファイアウォール設定パス
/junos/system/linecard/firewallには適用されません。そのパスでリソース フィルター情報を渡すメソッドはありません。
コレクターからの設定例
/interfaces/interface[name=xe-0/0/0などの正確なパスまたはキー:以下に、gRPC の正確なパスまたはキーの構成例を示します。
{ "dut_list": [ { "ip": "ferrari-mx02", "port":50051, "session_log":"grpc.session", "log_head":"grpc.data", "oc_rpc" : ["subscribe"], "subscribe": { "path_list": [{ "path":"/interfaces/interface[name='et-0/0/0']", "filter":"", "sample_frequency":2000, "suppress_unchanged":"", "max_silent_interval":0}], "input":{"collector_list":[{"address":"13.1.1.1"}]}, "additional_config":{"limit_records":1, "limit_time_seconds":1} } } ] }- キーの完全なワイルドカード (例:
/interfaces/interface以下に、gRPC のキーのワイルドカードの設定例を示します。
{ "dut_list": [ { "ip": " ferrari-mx02", "port":50051, "session_log":"grpc.session", "log_head":"grpc.data", "oc_rpc" : ["subscribe"], "subscribe": { "path_list": [{ "path":"/interfaces/interface/", "filter":"", "sample_frequency":2000, "suppress_unchanged":"", "max_silent_interval":0}], "input":{"collector_list":[{"address":"13.1.1.1"}]}, "additional_config":{"limit_records":1, "limit_time_seconds":1} } } ] } - キーの部分的なワイルドカード (例:
/interfaces/interface[name='et-0/0/*']path の部分的なワイルドカードの設定例を以下に示します。
{ "dut_list": [ { "ip": "ferrari-mx02", "port":50051, "session_log":"grpc.session", "log_head":"grpc.data", "oc_rpc" : ["subscribe"], "subscribe": { "path_list": [{ "path":"/interfaces/interface[name='et-0/0/*'] ", "filter":"", "sample_frequency":2000, "suppress_unchanged":"", "max_silent_interval":0}], "input":{"collector_list":[{"address":"13.1.1.1"}]}, "additional_config":{"limit_records":1, "limit_time_seconds":1} } } ] } - gNMI の設定
gNMI の設定例は、以下のとおりです。
{ "host": "gamoral-intf-mtt1-c", "user": "regress", "password": "MaRtInI", "port": 50051, "cid": "cid-45", "gnmi": { "mode": 0, "encoding": 2 }, "grpc": { "ws": 1048576 }, "paths": [ { "path": "/interfaces/interface[name='et-0/0/31']/", "freq": 2000000000, "gnmi_submode": 2 } ] } - 正確な鍵フィルターなどのファイアウォール関連":"__default_arp_policer__"
これはJunosパスであるため、Jsonファイルの
filterオプションを使用します。{ "dut_list": [ { "ip": "ferrari-mx01", "port":50051, "session_log":"session.healthz_modify", "log_head":"data.ferrari_mx01", "oc_rpc" : ["subscribe"], "subscribe": { "path_list": [{ "path":"/junos/system/linecard/firewall/", "filter":"__default_arp_policer__", "sample_frequency":2000, "suppress_unchanged":"", "max_silent_interval":0}], "input":{"collector_list":[{"address":"10.213.2.16", "port":50051}]}, "additional_config":{"limit_records":1, "limit_time_seconds":1, "need_eos": 1} } } ] } - 部分的なワイルドカードキーフィルターなどのファイアウォール関連":"__default_arp_*"
以下は、設定例です。
{ "dut_list": [ { "ip": "ferrari-mx01", "port":50051, "session_log":"session.healthz_modify", "log_head":"data.ferrari_mx01", "oc_rpc" : ["subscribe"], "subscribe": { "path_list": [{ "path":"/junos/system/linecard/firewall/", "filter":"__default_arp_*", "sample_frequency":2000, "suppress_unchanged":"", "max_silent_interval":0}], "input":{"collector_list":[{"address":"10.213.2.16", "port":50051}]}, "additional_config":{"limit_records":1, "limit_time_seconds":1, "need_eos": 1} } } ] } - ファイアウォール関連(フィルターなし、フィルター----など) ":""
この場合、すべてのキーに関連するデータがエクスポートされます。
{ "dut_list": [ { "ip": "ferrari-mx01", "port":50051, "session_log":"session.healthz_modify", "log_head":"data.ferrari_mx01", "oc_rpc" : ["subscribe"], "subscribe": { "path_list": [{ "path":"/junos/system/linecard/firewall/", "filter":"", "sample_frequency":10000, "suppress_unchanged":"", "max_silent_interval":0}], "input":{"collector_list":[{"address":"10.213.2.16", "port":50051}]}, "additional_config":{"limit_records":1, "limit_time_seconds":1, "need_eos": 1} } } ] }