「NetWorker REST APIトリアージ ガイド」

Summary: このKBでは、RESTAPI関連の問題の基本的なトラブルシューティングの概要について説明します。

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Instructions

「NetWorker REST APIトリアージ ガイド」

YouTubeで視聴する

Additional Information

はじめに


Representational State Transfer (REST)アプリケーション プログラミング インターフェイス(API)は、NetWorkerデータ保護サービスへのプログラムによるアクセスを提供します。NetWorkerユーザーはREST APIを使用して、NetWorker操作を自動化するクライアント アプリケーションを構築できます。NetWorker REST APIは、NetWorkerサーバーのインストールの一環として、NetWorker認証サービスと同じApache tomcatコンテナにインストールされます。認証は、NetWorker Management Consoleで使用されているものと同じ認証情報を使用して行われます。  

REST APIを使用すると、Uniform Resource Identifier(URI)アドレスで識別されるリソースとのやり取りが可能になります。HTTP 動詞 (HEAD、GET、PUT、POST、DELETE) を使用して、ステートレスな方法で Uniform Resource Identifier (URI) と対話します (サーバーにはクライアント状態が含まれておらず、各メッセージは自己記述的です)。

このドキュメントでは、ユーザー作成のREST API呼び出しを使用したNetWorkerリソースとのやり取りについて説明します。バックエンドNetWorker操作で使用されるREST APIコールと混同しないでください。
 

NetWorkerへの接続:

コマンドを実行してNetWorkerに接続するために使用できるREST APIクライアント テクノロジーはいくつかあります。これには、 curl コマンド (Linux)、PowerShell Invoke-WebRequest (Windows)、REST API クライアント ブラウザー拡張機能が含まれます。

接続には次の3つのヘッダーが必要です。   
  • Content-Type: application/json
  • 同意:application/json
  • 認証:Basic (Base 64 エンコードのユーザー名とパスワード付き)

複数のNetWorkerデータゾーンが単一のNetWorker AUTHCサーバーを介して認証を行う環境では、追加のヘッダーが必要です。

  • X-NW-AUTHC-BASE-URL: AUTHC_HOSTNAME_OR_IP:AUTHC_PORT
デフォルトのAUTHCポートはポート9090です。このヘッダーの使用方法の詳細については、以下を参照してください。RESTAPI:RESTAPIリクエストを処理するときにリモートAUTHCサーバーを使用するにはどうすればよいですか?

NetWorker REST APIは、次のベースURIで公開されます。

https://[nw-server-hostname]:9090/nwrestapi/
APIにはさまざまなバージョンがあります。REST APIが最初に実装されてから、機能拡張がロールアウトされています。例:
https://[nw-server-hostname]:9090/nwrestapi/v1
https://[nw-server-hostname]:9090/nwrestapi/v2
https://[nw-server-hostname]:9090/nwrestapi/v3
これらのエンドポイントに対する変更の詳細については、https://developer.dell.com/apis/2378/versions/v3/docs/GettingStarted.md を参照してください。

完全なjsonスキーマは、次の場所で入手できます。

https://[nw-server-hostname]:9090/nwrestapi/v3/schemas/swagger.json

REST API応答コード:
 
成功応答コード
成功コード HTTP メソッドに適用 応答本文の内容 説明
200 取得 リソースの表現。 [OK]をクリックします。このHTTP状態になる操作は、ペイロード内のリソース表現を伝送します。
201 POST 応答が空です。 作成。このステータスは、新しいリソースまたは目的のジョブが作成され、関連する URL が応答のロケーション ヘッダーからアクセスできることを示します。
202 POST 回答の詳細。 受け入れ られる。これは、APIリクエストが受け入れられたことを示します。ペイロードは、追跡リソース インスタンスへの URL が応答の location ヘッダーからアクセスできることを示します。
204 PUT/DELETE 応答が空です。 コンテンツがありません。状態は、実行された操作が成功したことを示します。ただし、追加の詳細は提供されません。
 
エラー応答コード
エラー コード 説明
400 リクエストが正しくありません。
401 認証情報が無効です。
403 権限が不十分です。
404 リソースが見つかりません。
405 メソッドは許可されていません。
406 無効なロケールが指定されています。
500 Internal Server Error.


REST API関数

サポートされている HTTP メソッド
HTTP メソッド 動作 説明
取得 読み取り リソース表現を取得します。
POST 作成 新しいリソースを作成します。
置く 更新 既存のリソースを更新します。
DELETE 削除 既存のリソースを削除します。


いくつかの例:

GET

 

すべてのクライアントを一覧表示します。                                            

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients

クライアントは1つのみで、3つのフィールド(ホスト名、saveSets、protectionGroups)のみを表示      

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=hostname,saveSets,protectionGroups&q=hostname:nwserver121

1つのクライアントが含まれる保護グループを一覧表示します。     

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?fl=protectionGroups&q=hostname:nwserver121

現在のアラートを表示します。                                     

https://[nw-server-hostname]:9090/nwrestapi/v3/global/alerts

最近失敗したジョブを表示します。                               

https://[nw-server-hostname]:9090/nwrestapi/v3/global/jobs?q=completionStatus:"Failed"&fl=clientHostname,startTime,name,message

1つのポリシー(この例では WinFS )のワークフローを一覧表示します。                   

https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/WinFS/workflows

1つのセーブセット インスタンスのみのプロパティを一覧表示します(クライアントのホスト名とセーブセットで定義)。      

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients?q=hostname:vm-lego-231 and saveSets:"/etc"

投稿:

ワークフロー アクションを開始します。                                 

https://[nw-server-hostname]:9090/nwrestapi/v3/global/protectionpolicies/Angela/workflows/WinFS/op/backup
                                                      JSON Body: 
                                                      {
                                                       }

新しいクライアント インスタンスを作成します(リストされている4つのプロパティを除くすべてのプロパティにデフォルト値を使用)。           

https://[nw-server-hostname]:9090/nwrestapi/v3/global/clients  
                                                     JSON Body 
                                                     {    
            "hostname": "vm-lego-231",
            "backupType": "Filesystem",
            "saveSets": [ "/etc" ],
            "protectionGroups" : [ "LinuxFS" ]
                                                          


サポートに必要な情報


環境:

  • NetWorkerサーバ名
  • NetWorkerのバージョンとビルド番号
  • NetWorkerサーバー ホストのオペレーティング システムのタイプとバージョン
Linuxの場合
hostname
strings /usr/sbin/nsrd | grep -i "(#)"
cat /etc/*release
uname -a

Windowsの場合:

nsrwatch
問題の詳細:
  • 実行されているREST API操作(GET、POST、PUT、DELETE)、使用されているURI、JSON本文の内容(該当する場合)を説明します。 
  • REST API応答コードとエラー メッセージが表示される。
  • REST APIクライアントとNetWorker間の最初の接続と許可は成功しましたか?
ログ収集:
  • NetWorkerサーバーからレンダリングされたdaemon.rawログ ファイル:
  • NetWorkerサーバーからのREST APIログ:  /nsr/logs/restapi (Linux)または EMC NetWorker\nsr\logs\restapi (Windows)
  • 認証の問題については、 /nsr/authc/logs (Linux)にある標準のNetWorker認証ログインまたは..\EMC NetWorker\nsr\authc-server\tomcat\logs (Windows)
デバッグ:
より複雑な問題では、REST APIデバッグが必要になる場合があります。デバッグは、次のように有効にすることができます。NetWorker:REST APIデバッグを有効にする方法

パフォーマンス
問題がRESTAPIパフォーマンス関連である場合は、次のオプションを使用して、APIコールで使用されるnsrtomc+プロセスのリソース消費量を追跡できます。

Linux:  
top -b | awk '/nsrtomc+/ {print strftime("%Y-%m-%d-%H:%M:%S", systime()), $0}'

この出力は標準の上位出力を示していますが、タイムスタンプは人間が判読できます。これを使用して、プロセスによるCPUとメモリーの消費量と、REST呼び出しが行われたときに特定の状態に保持された時間を確認できます。これをrestapi.logログやAUTHCログと比較して、どの呼び出しがどのくらいの頻度で行われたかを確認できます。
 

Windowsの場合:Windows Serverの場合は、「Performance Monitor:

1.管理者としてパフォーマンス モニターを開きます。
2.左側のペインで、監視ツールを展開し、パフォーマンス モニターを選択します。
3.右側のペイン内を右クリックし、[すべてのカウンターを削除] を選択します。
4.右側のペイン内を右クリックし、[カウンターの追加] を選択します。
5.[Available Counters]で[Memory]を展開し、[ % Commit Bytes]を選択して[Add.6
]をクリックします。[Memory ]で[Available Bytes]を選択し、[Add]をクリックします。
7.[Available Counters]で[Process]を展開し、[% Processor Time]を選択して、[Instances of Selected object]で最初のJavaエントリーを選択し、[Add]をクリックします。
8.[Available Counters]で[Processor Information]を展開し、[% Processor Utility]を選択して[Add]をクリックします。
9.右側のペインに追加されたカウンターには、次のように表示されます。

image.png

10.[OK] をクリックします。パフォーマンス モニターを右クリックして、新規 -> Data Collector セット をクリックします。
11.名前を入力します(例: RESTAPI_MON。
12.代替出力場所を指定することを選択しない限り、[ 場所]画面で[次へ]をクリックします。
13.保存して閉じる を選択し、完了をクリックします。
14.左側のペインの [Data Collector Sets -> User Defined]で、RESTAPI_MONプロパティを開き、ログ形式として[Comma Separated]を選択し、[Ok]をクリックします。

image.png

15.左側のペインの [データ コレクター セット -> ユーザー定義]で、RESTAPI_MONデータ コレクター セットを選択し、[スタート]([再生]ボタン)をクリックします。
16.既定の出力場所が使用された場合、.csv ファイルは C:\PerfLogs\Admin\RESTAPI_MON の下に表示されます。
17.問題が発生し、出力ファイルに記録されたら、[データ コレクター セット - ユーザー定義]の下にある[停止]をクリックして、監視を停止できます。


その他のリソース

サポートされているすべてのREST APIエンドポイントと使用例は、次の場所で提供されています。NetWorker REST APIリファレンス ガイド

Affected Products

NetWorker Series

Products

NetWorker Series
Article Properties
Article Number: 000014298
Article Type: How To
Last Modified: 07 Feb 2024
Version:  6
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.