Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

gNOI ファイル サービス

概要 gNOI File サービスを使用して、ネットワーク デバイス上のファイルを管理します。

Fileサービス RPC を使用して、ファイルを転送および削除したり、ファイルに関する情報を取得したりします。プロトタイプ定義ファイルは https://github.com/openconfig/gnoi/blob/master/file/file.proto にあります。

対応する RPC

表 1: サポートされている file.proto RPC
リリースで導入された RPC の説明
Get()

ターゲットからファイルの内容を読み取ってストリーミングします。

ファイルは順次メッセージによってストリーミングされ、各メッセージには最大 64KB のデータが含まれます。送信されたデータのハッシュを含むストリームを閉じる前に、最後のメッセージが送信されます。ファイルが存在しない場合、またはファイルの読み取り中にエラーが発生した場合、この操作はエラーを返します。

Junos OS Evolved 22.2R1

Put()

ターゲット上のファイルにデータをストリーミングします。

ファイルは順次メッセージで送信され、各メッセージには最大 64KB のデータが含まれます。データのハッシュを含む最終メッセージを送信する必要があります。

場所が存在しない場合、またはデータの書き込み中にエラーがある場合、この操作はエラーを返します。チェックサムが受信されない場合、ターゲットは部分的に送信されたファイルを削除します。障害が発生しても、同じ名前の既存のファイルは変更されません。

Junos OS Evolved 22.2R1

Remove()

指定したファイルをターゲットから削除します。ファイルが存在しない場合、ファイル パスがディレクトリに解決された場合、または削除操作でエラーが発生した場合、この操作はエラーを返します。

Junos OS Evolved 22.2R1

Stat()

ターゲット デバイス上のファイルに関するメタデータを返します。この操作は、ファイルが存在しない場合、またはメタデータへのアクセス中にエラーがある場合にエラーを返します。

Junos OS Evolved 22.2R1

ネットワーク デバイスの設定

始める前に:

ターゲット・デバイスでファイル操作を実行するには、クライアントがファイル・システムと対話するための適切な権限を持っている必要があります。

例: ファイルの取得

この例では、 gnoi_file_get.pyターゲットデバイスからローカルネットワーク管理システムにファイルをダウンロードするためのシンプルなPythonアプリケーションを提供します。

アプリケーションはモジュール grpc_channel をインポートしてチャネルを確立します。この grpc_channel モジュールについては、 gNOI サービスの設定で説明しています。アプリケーションの引数はファイルに格納されます args_file_get.txt 。ここでは、アプリケーション ファイルと引数ファイルを示します。

gnoi_file_get.py

args_file_get.txt

アプリケーションの実行

クライアントは、アプリケーションを実行すると、指定されたファイルをターゲット デバイスからローカル デバイスに転送します。

例: ファイルの書き込み

この例では、 gnoi_file_put.pyローカルネットワーク管理システムからターゲットデバイスにファイルをアップロードするための簡単なPythonアプリケーションを提供します。

アプリケーションはモジュール grpc_channel をインポートしてチャネルを確立します。この grpc_channel モジュールについては、 gNOI サービスの設定で説明しています。アプリケーションの引数はファイルに格納されます args_file_put.txt 。ここでは、アプリケーション ファイルと引数ファイルを示します。

gnoi_file_put.py

args_file_put.txt

アプリケーションの実行

クライアントは、アプリケーションを実行すると、指定されたファイルをローカルデバイスからターゲットデバイスに転送し、その値に従って dest_file_mode ファイルのアクセス許可を設定します。