NTNX>日記

個人的な趣味による Nutanix Community Edition 日記。Japanese のみですみません。

Nutanix REST API の URL パターンについて。

ドキュメントや REST API Explorer などを確認していると、Nutanix の REST API には、少なくとも 2種類の URL があるようです。

  • /PrismGateway/services/rest/バージョン/
  • /api/nutanix/バージョン/

そこで、それぞれの URL で、Nutanix CE の Prism Element と Prism Central から情報取得できるか試してみました。

 

今回の確認方法

使用した Nutanix CE のバージョンは下記です。

  • Nutanix CE 2020.09.16(Prism Element)
  • Prism Central pc.2020.09.16

 

どのバージョンにもある、GET /vms にて情報取得できるか試してみました。ただし、v3 だけは GET /vms が存在しないので、POST /vms/list です。

下記のように curl で API コールしてみました。

まずは接続情報を変数に格納して・・・

[gowatana@infra-jbox-01 ~]$ USER=admin
[gowatana@infra-jbox-01 ~]$ PASS='パスワード'
[gowatana@infra-jbox-01 ~]$ PE='lab-nxce-01.go-lab.jp'
[gowatana@infra-jbox-01 ~]$ PC='lab-nxpc-01.go-lab.jp'

 

curl で、ひたすら API コールしていきます。

Prism Element 宛($PE)。最初の /PrismGateway/services/rest/v3 は情報取得できていません。

[gowatana@infra-jbox-01 ~]$ curl -ks -u "$USER:$PASS" -X POST -d '{}' -H "Content-Type: application/json" https://$PE:9440/PrismGateway/services/rest/v3/vms/list | jq -r . | head
[gowatana@infra-jbox-01 ~]$
[gowatana@infra-jbox-01 ~]$ curl -ks -u "$USER:$PASS" -X POST -d '{}' -H "Content-Type: application/json" https://$PC:9440/api/
nutanix/v3/vms/list | jq -r . | head
{
  "api_version": "3.1",
  "metadata": {
    "total_matches": 13,
    "kind": "vm",
    "length": 13,
    "offset": 0
  },
  "entities": [
    {
[gowatana@infra-jbox-01 ~]$

 

Prism Central 宛($PC)も同様に確認していきます。

[gowatana@infra-jbox-01 ~]$ curl -ks -u "$USER:$PASS" -X POST -d '{}' -H "Content-Type: application/json" https://$PC:9440/Pris
mGateway/services/rest/v3/vms/list | jq -r . | head
[gowatana@infra-jbox-01 ~]$
[gowatana@infra-jbox-01 ~]$ curl -ks -u "$USER:$PASS" -X POST -d '{}' -H "Content-Type: application/json" https://$PC:9440/api/
nutanix/v3/vms/list | jq -r . | head
{
  "api_version": "3.1",
  "metadata": {
    "total_matches": 13,
    "kind": "vm",
    "length": 13,
    "offset": 0
  },
  "entities": [
    {
[gowatana@infra-jbox-01 ~]$

 

結果

下記のような感じでした。

  • v8.0 は、Prism Element のみで利用可能。
  • v2 は、なぜか v2.0 と指定する必要あり。
  • v2 は、Prism Central では利用不可。
  • v3 は、/api/nutanix/v3 のみ利用可能。
Prism Version URL 結果
Element v0.8 /PrismGateway/services/rest/v0.8 OK
Element v0.8 /api/nutanix/v0.8 OK
Element v1 /PrismGateway/services/rest/v1 OK
Element v1 /api/nutanix/v1 OK
Element v2 /PrismGateway/services/rest/v2.0 OK
Element v2 /api/nutanix/v2.0 OK
Element v3 /PrismGateway/services/rest/v3 NG
Element v3 /api/nutanix/v3 OK
Central v0.8 /PrismGateway/services/rest/v0.8 NG
Central v0.8 /api/nutanix/v0.8 NG
Central v1 /PrismGateway/services/rest/v1 OK
Central v1 /api/nutanix/v1 OK
Central v2 /PrismGateway/services/rest/v2.0 NG
Central v2 /api/nutanix/v2.0 NG
Central v3 /PrismGateway/services/rest/v3 NG
Central v3 /api/nutanix/v3 OK

 

以上。

 

©2021 gowatana
クリエイティブ・コモンズ・ライセンスこの 作品 は クリエイティブ・コモンズ 表示 4.0 国際 ライセンスの下に提供されています。