ONTAP tools for VMware vSphereの実装の詳細
REST は共通のテクノロジとベスト プラクティスのセットを確立しますが、各 API の正確な実装は設計の選択に応じて異なる場合があります。 ONTAP tools for VMware vSphereを使用する前に、その設計方法を理解しておく必要があります。
REST API には、vCenter や Aggregates などのいくつかのリソース カテゴリが含まれています。レビュー"APIリファレンス"詳細についてはこちらをご覧ください。
REST APIにアクセスする方法
ONTAP tools for VMware vSphereのONTAPツールにアクセスできます。完全な URL には、次のようないくつかの部分があります。
-
ONTAPツールのIPアドレスとポート
-
APIバージョン
-
リソースカテゴリ
-
特定のリソース
初期セットアップ時に IP アドレスを設定する必要がありますが、ポートは 8443 に固定されています。URLの最初の部分は、 ONTAP tools for VMware vSphereで一貫しており、エンドポイント間で変更されるのはリソース カテゴリと特定のリソースのみです。
|
以下の例の IP アドレスとポート値は説明のみを目的としています。環境に合わせてこれらの値を変更する必要があります。 |
https://10.61.25.34:8443/virtualization/api/v1/auth/login
この URL は、POST メソッドを使用してアクセス トークンを要求するために使用できます。
https://10.61.25.34:8443/virtualization/api/v1/vcenters
この URL は、GET メソッドを使用して定義済みの vCenter Server インスタンスのリストを要求するために使用できます。
HTTP の詳細
ONTAP tools for VMware vSphereは、 HTTP および関連パラメータを使用して、リソース インスタンスおよびコレクションを操作します。 HTTP 実装の詳細は以下に記載されています。
HTTPメソッド
REST API でサポートされている HTTP メソッドまたは動詞を次の表に示します。
方法 | CRUD | 説明 |
---|---|---|
GET |
読み取り |
リソース インスタンスまたはコレクションのオブジェクト プロパティを取得します。コレクションで使用する場合、これはリスト操作と見なされます。 |
POST |
作成 |
入力パラメータに基づいて新しいリソース インスタンスを作成します。 |
PUT |
更新 |
指定されたJSONリクエストボディを使用して、リソースインスタンス全体を更新します。ユーザーが変更できないキー値は保持されます。 |
PATCH |
更新 |
リクエスト内の選択された変更のセットをリソース インスタンスに適用するよう要求します。 |
DELETE |
削除 |
既存のリソース インスタンスを削除します。 |
リクエストヘッダーとレスポンスヘッダー
次の表は、REST API で使用される最も重要な HTTP ヘッダーをまとめたものです。
ヘッダー | タイプ | 使用上の注意 |
---|---|---|
受け入れる |
要求 |
これは、クライアント アプリケーションが受け入れることができるコンテンツの種類です。有効な値は '*/*` または |
x-auth |
要求 |
クライアント アプリケーションを通じてリクエストを発行するユーザーを識別するアクセス トークンが含まれます。 |
コンテンツタイプ |
応答 |
サーバーによって返される `Accept`リクエスト ヘッダー。 |
HTTPステータスコード
REST API で使用される HTTP ステータス コードについて以下に説明します。
コード | 説明 | 説明 |
---|---|---|
200 |
OK |
新しいリソース インスタンスを作成しない呼び出しが成功したことを示します。 |
201 |
作成 |
リソース インスタンスの一意の識別子を持つオブジェクトが正常に作成されました。 |
202 |
承認済み |
リクエストが承認され、リクエストを実行するためのバックグラウンド ジョブが作成されました。 |
204 |
コンテンツなし |
コンテンツは返されませんでしたが、リクエストは成功しました。 |
400 |
Bad request |
要求の入力が認識されないか不適切です。 |
401 |
Unauthorized |
ユーザーは承認されていないため、認証する必要があります。 |
403 |
Forbidden |
認証エラーのためアクセスが拒否されました。 |
404 |
Not found |
要求で参照されているリソースが存在しません。 |
409 |
対立 |
オブジェクトがすでに存在するため、オブジェクトの作成に失敗しました。 |
500 |
内部エラー |
サーバで一般的な内部エラーが発生しました。 |
認証
REST API へのクライアントの認証は、アクセス トークンを使用して実行されます。トークンと認証プロセスの関連する特性は次のとおりです。
-
クライアントは、 ONTAPツール マネージャの管理者認証情報 (ユーザー名とパスワード) を使用してトークンを要求する必要があります。
-
トークンは JSON Web Token (JWT) としてフォーマットされます。
-
各トークンは 60 分後に期限切れになります。
-
クライアントからのAPIリクエストには、 `x-auth`リクエスト ヘッダー。
参照"最初のREST API呼び出し"アクセス トークンの要求と使用の例については、こちらをご覧ください。
同期リクエストと非同期リクエスト
ほとんどの REST API 呼び出しはすぐに完了するため、同期的に実行されます。つまり、リクエストが完了した後にステータス コード (200 など) を返します。完了までに時間のかかるリクエストは、バックグラウンド ジョブを使用して非同期的に実行されます。
非同期に実行される API 呼び出しを発行した後、サーバーは 202 HTTP ステータス コードを返します。これは、リクエストが受け入れられたがまだ完了していないことを示します。バックグラウンド ジョブをクエリして、成功や失敗などのステータスを確認できます。
非同期処理は、データストアや vVol 操作など、いくつかの種類の長時間実行操作に使用されます。詳細については、Swagger ページの REST API のジョブ マネージャー カテゴリを参照してください。