Skip to main content
ONTAP tools for VMware vSphere 10.2
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

REST API の使用を開始する

共同作成者

ONTAP Tools for VMware vSphere REST APIはすぐに使用を開始できます。API にアクセスすると、ライブセットアップでより複雑なワークフロープロセスを使用する前にいくつかの情報を確認できます。

Hello world

システムで簡単なコマンドを実行して、ONTAP tools for VMware vSphere REST APIの使用を開始し、使用可能かどうかを確認できます。

作業を開始する前に
  • Curl ユーティリティがシステムで使用できることを確認します。

  • ONTAP tools for VMware vSphereサーバのIPアドレスまたはホスト名

  • ONTAP tools for VMware vSphere REST APIにアクセスする権限を持つアカウントのユーザ名とパスワード。

メモ クレデンシャルに特殊文字が含まれている場合は、使用するシェルに基づいて Curl で許容される形式で指定する必要があります。たとえば、各特殊文字の前にバックスラッシュを挿入したり、全体を折り返すことができます username:password 一重引用符で囲んだ文字列。
ステップ

コマンドラインインターフェイスで、次のコマンドを実行してプラグイン情報を取得します。

curl -X GET -u username:password -k "https://<ip_address>/api/hosts?fields=IncludePluginInfo"

curl -X GET -u admin:password -k "'https://10.225.87.97/api/hosts?fields=IncludePluginInfo"

ONTAP tools for VMware vSphere REST APIにアクセスする方法

ONTAP REST API には、いくつかの方法でアクセスできます。

ネットワークに関する考慮事項

REST API には、次のインターフェイスを通じて接続できます。

  • クラスタ管理 LIF

  • ノード管理 LIF

  • SVM 管理 LIF

使用するLIFは、HTTPS管理プロトコルをサポートするように設定する必要があります。また、ネットワークのファイアウォール設定でHTTPSトラフィックを許可する必要があります。

メモ 必ずクラスタ管理LIFを使用してください。これにより、API要求の負荷がすべてのノードに分散され、オフラインになっているノードや接続の問題が発生しているノードを回避できます。複数のクラスタ管理LIFが設定されている場合は、REST APIへのアクセスに関してすべて同じです。

API 要求を制御する入力変数

API 呼び出しの処理方法は、 HTTP 要求で設定されたパラメータと変数を使用して制御できます。

HTTP メソッド

ONTAP tools for VMware vSphere REST APIでサポートされるHTTPメソッドを次の表に示します。

メモ REST エンドポイントのそれぞれですべての HTTP メソッドを使用できるわけではありません。
HTTP メソッド 説明

取得

リソースインスタンスまたはコレクションのオブジェクトプロパティを取得します。

投稿( Post )

指定した入力に基づいて新しいリソースインスタンスを作成します。

削除

既存のリソースインスタンスを削除します。

PUT

既存のリソースインスタンスを変更します。

要求ヘッダー

HTTP 要求には複数のヘッダーを含める必要があります。

コンテンツタイプ

要求の本文に JSON が含まれている場合は、このヘッダーを application/json に設定する必要があります。

同意します

このヘッダーは、 application/json に設定してください。

承認

base64文字列としてエンコードされたユーザ名とパスワードを使用してベーシック認証を設定する必要があります。

本文を要求します

要求の本文の内容は、それぞれの呼び出しに応じて異なります。HTTP 要求の本文は、次のいずれかで構成されます。

  • JSON オブジェクトと入力変数

  • 空です

オブジェクトのフィルタリング

GET を使用する API 呼び出しを発行する際、返されるオブジェクトを任意の属性に基づいて制限またはフィルタできます。たとえば、一致する正確な値を指定できます。

<field>=<query value>

完全一致に加えて、他の演算子を使用して、一連のオブジェクトを一定範囲の値で返すことができます。ONTAP Tools for VMware vSphere REST APIでは、次の表に示すフィルタ演算子がサポートされます。

演算子 説明

=

等しい

<

より小さい

>

が次の値より大きい

が次の値以下です

>=

が次の値以上である必要があります

更新

または

と等しくない

*

すべてに一致するワイルドカード

また、クエリの一部として null キーワードまたはその negation*!null* を使用して、特定のフィールドが設定されているかどうかに基づいてオブジェクトのコレクションを返すこともできます。

メモ 通常、設定されていないフィールドはクエリの照合から除外されます。

特定のオブジェクトフィールドを要求しています

デフォルトでは、 GET を使用する API 呼び出しを発行すると、オブジェクトを一意に識別する属性のみが返されます。この最小のフィールドセットは、各オブジェクトのキーとして機能し、オブジェクトタイプによって異なります。を使用して、追加のオブジェクトプロパティを選択できます fields 次の方法でクエリパラメータを指定します。

共通または標準のフィールド

fields=* を指定すると、最もよく使用されるオブジェクトフィールドが取得されます。これらのフィールドは、通常、ローカルサーバメモリに保持されるか、ほとんど処理を必要としません。これらのプロパティは、 URL パスキー( UUID )を指定して GET を使用した場合にオブジェクトに対して返されるプロパティと同じです。

すべてのフィールド

fields=** を指定すると ' アクセスするために追加のサーバ処理が必要なフィールドも含め ' すべてのオブジェクトフィールドが取得されます

カスタムフィールドの選択

fields=<field_name> を使用すると、必要なフィールドを正確に指定できます。複数のフィールドを要求する場合は、値をカンマで区切ってスペースなしで指定する必要があります。

重要 ベストプラクティスとして、必要なフィールドを常に個別に指定することを推奨します。一連の共通フィールドまたはすべてのフィールドを取得するのは、必要な場合だけにしてください。共通として分類されるフィールドで、 fields=* を使用して返されるフィールドは、ネットアップの内部パフォーマンス分析に基づいて決定されます。フィールドの分類は、今後のリリースで変更される可能性があります。

出力セット内のオブジェクトのソート

リソースコレクション内のレコードは、オブジェクトによって定義されたデフォルトの順序で返されます。を使用して順序を変更できます order_by フィールド名とソート順序を指定したクエリパラメータ。

order_by=<field name> asc|desc

たとえば、タイプフィールドを降順でソートし、 ID を昇順でソートできます。

order_by=type desc, id asc

  • ソートフィールドを指定してソートの方向を指定しなかった場合、値は昇順でソートされます。

  • 複数のパラメータを指定する場合は、各フィールドをカンマで区切ります。

オブジェクトのコレクションを取得するときのページ付けです

GETを使用してAPI呼び出しを発行し、同じタイプのオブジェクトのコレクションにアクセスすると、ONTAP tools for VMware vSphereでは、2つの制約に基づいてできるだけ多くのオブジェクトが返されます。これらの各制約は、要求に対する追加のクエリパラメータを使用して制御できます。特定の GET 要求に対する最初の制約に達した時点で要求が終了されるため、返されるレコードの数が制限されます。

メモ すべてのオブジェクトについての処理が完了する前に要求が終了した場合、次のレコードのバッチを取得するために必要なリンクが応答に含まれます。

オブジェクト数の制限

デフォルトでは、ONTAP tools for VMware vSphereはGET要求に対して最大10、000個のオブジェクトを返します。この制限は、 _max_records_query パラメータを使用して変更できます。例:

max_records=20

返されるオブジェクトの数は、関連する時間制約およびシステム内のオブジェクトの総数に基づいて、有効な最大数よりも少なくなることがあります。

オブジェクトを読み出す時間を制限しています

デフォルトでは、ONTAP tools for VMware vSphereは、GET要求で許可された時間内にできるだけ多くのオブジェクトを返します。デフォルトのタイムアウトは 15 秒です。この制限は、 _return_timeout_query パラメータを使用して変更できます。例:

return_timeout=5

返されるオブジェクトの数は、システム内のオブジェクトの総数だけでなく、関連するオブジェクト数の制約に基づいて、有効な最大数よりも少なくなることがあります。

結果セットの絞り込み

必要に応じて、これらの 2 つのパラメータを追加のクエリパラメータと組み合わせて、結果セットを絞り込むことができます。たとえば、次の例では、指定した時間のあとに生成された EMS イベントを最大 10 件まで返します。

time⇒ 2018-04-04T15:41:29.140265Z&max_records=10

複数の要求を問題で処理して、オブジェクトをページングできます。以降の API 呼び出しでは、前回の結果セットの最新イベントに基づいて新しい時間の値を使用する必要があります。

サイズのプロパティ

一部の API 呼び出しおよびクエリパラメータでは、入力値として数値が使用されます。バイト単位で整数を指定する代わりに、必要に応じて次の表に示すサフィックスを使用できます。

サフィックス 説明

KB

KB キロバイト( 1024 バイト)またはキビバイト

MB

MB ( KB x 1024 バイト)またはメビバイト

GB

ギガバイト( MB x 1024 バイト)またはギビバイト

容量

TB ( GB x 1024 バイト)またはテビバイト

PB

PB ペタバイト( TB x 1024 バイト)またはペビバイト