ユーザーガイド/リファレンスガイド

Compute API v2

Description

サーバーのディスクIO利用状況を取得します。
単位は B/s(Byte/second)

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/rrd/disk

Request Json

This operation does not accept a request body.

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
device ディスクデバイス名(vda,vdb,etc) query デフォルトでは「vda」になります。
start_date_raw(Optional) データ取得開始時間(UNIX時間) query デフォルトでは「一日前」になります。
end_date_raw(Optional) データ取得終了時間(UNIX時間) query デフォルトでは「現時点まで」になります。
mode(Optional) データ統合方法 query {average,max,min} デフォルト: average

Response

Normal response codes

200

Example

Request

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/rrd/disk?start_date_raw=データ取得開始時間(UNIX時間)\&end_date_raw=データ取得終了時間(UNIX時間)\&mode=データ統合方法

Response

HTTP/1.1 200 OK
Date: Fri, 15 Jul 2016 09:04:31 GMT
Server: Apache
Content-Length: 3988
Content-Type: application/json

{
    “disk”: {
        “schema”: [
            “unixtime”,
            “read”,
            “write”
        ],
        “data”: [
            [
                UNIX時間,
                読み込み速度,
                書き込み速度
            ],
            [
                UNIX時間,
                読み込み速度,
                書き込み速度
           ],
            [
                UNIX時間,
                読み込み速度,
                書き込み速度
            ]         ]     }
}

 

Description

サーバーのインターフェイス利用状況(トラフィック)を取得します。
単位は B/s(Byte/second)

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/rrd/interface?port_id={port_id}

Request Json

This operation does not accept a request body.

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
port_id(Optional) ポートID query ポートID
start_date_raw(Optional) データ取得開始時間(UNIX時間) query デフォルトでは「一日前」になります。
end_date_raw(Optional) データ取得終了時間(UNIX時間) query デフォルトでは「現時点まで」になります。
mode(Optional) データ統合方法 query {average,max,min} デフォルト: average

Response

Normal response codes

200

Example

Request

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/rrd/interface?port_id=ポートID&start_date_raw=データ取得開始時間(UNIX時間)\&end_date_raw=データ取得終了時間(UNIX時間)\&mode=データ統合方法

Response

HTTP/1.1 200 OK
Date: Fri, 08 Jul 2016 03:47:57 GMT
Server: Apache
Content-Length: 79
Content-Type: application/json

{
  “interface”: {
    “schema”: [
        “unixtime”,
        “rx”,
        “tx”
    ],
    “data”: [
      [
        UNIX時間,
        受信速度,
        送信速度
      ],
      [
        UNIX時間,
        受信速度,
        送信速度
      ],
      [
        UNIX時間,
        受信速度,
        送信速度
      ]     ]   }
}

 

Description

サーバーのCPU使用時間を取得します。

CPU 使用時間(CPU Time ⇒ nsec)
一秒間に「1 CPU が占有された時間 × Core 数」を nano second 単位で出力します。

1Core の場合、最大で 1,000,000,000 nsec
2Core の場合、最大で 2,000,000,000 nsec

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/rrd/cpu

Request Json

This operation does not accept a request body.

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
start_date_raw(Optional) データ取得開始時間(UNIX時間) query デフォルトでは「一日前」になります。
end_date_raw(Optional) データ取得終了時間(UNIX時間) query デフォルトでは「現時点まで」になります。
mode(Optional) データ統合方法 query {average,max,min} デフォルト: average

Response

Normal response codes

200

Example

Request

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/rrd/cpu?start_date_raw=データ取得開始時間(UNIX時間)\&end_date_raw=データ取得終了時間(UNIX時間)\&mode=データ統合方法

Response

HTTP/1.1 200 OK
Date: Fri, 15 Jul 2016 08:36:04 GMT
Server: Apache
Content-Length: 3697
Content-Type: application/json

{
  “cpu”: {
    “schema”: [
        “unixtime”,
        “value”
    ],
    “data”: [
      [
        UNIX時間,
        CPU使用時間
      ],
      [
        UNIX時間,
        CPU使用時間
      ],     [
        UNIX時間,
        CPU使用時間
      ]     ]   }
}

 

Description

サーバーのメタデータを取得します。

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/metadata

Request Json

This operation does not accept a request body.

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID

Response

Normal response codes

200

Example

Request

 

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/metadata

Response

HTTP/1.1 200 OK
Date: Fri, 08 Jul 2016 03:14:56 GMT
Server: Apache
Content-Length: 193
Content-Type: application/json

{
   “metadata”: {
            “instance_name_tag”: “ネームタグ“,
             “properties”: “{\”vnc_keymap\”:\”キーマップ\”,\”hw_video_model\”:\”ビデオデバイス\”,\”hw_vif_model\”:\”ネットワークアダプタ\”,\”hw_disk_bus\”:\”virtio\”,\”cdrom_path\”:\”ISOイメージ\”}”
        }
}

 

Description

対象のmetadataのキーとバリューを指定し、更新します。
更新対象ではないがすでに存在するmetadataは削除されずに残ります。

Request URL

Compute API v2.0
POST /v2/{tenant_id}/servers/{server_id}/metadata

Request Json

{
    “metadata”: {
        “instance_name_tag”: “ネームタグ
    }
}

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
instance_name_tag ネームタグ plain サーバーのネームタグ

Response

Normal response codes

200

Example

Request

curl -i -X POST \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
-d ‘{“metadata”: {“instance_name_tag”: “ネームタグ“}}’ \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/metadata

Response

HTTP/1.1 200 OK
Date: Fri, 08 Jul 2016 03:05:14 GMT
Server: Apache
Content-Length: 193
Content-Type: application/json

{
    “metadata”: {
            “instance_name_tag”: “ネームタグ“,
             “properties”: “{\”vnc_keymap\”:\”キーマップ\”,\”hw_video_model\”:\”ビデオデバイス\”,\”hw_vif_model\”:\”ネットワークアダプタ\”,\”hw_disk_bus\”:\”virtio\”,\”cdrom_path\”:\”ISOイメージ\”}”
        }
}

 

Description

サーバーに紐付く指定したネットワークのIPアドレス一覧を取得します。

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/ips/{network_label}

Request Json

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
network_label ネットワーク名 plain ネットワーク名

Response

Normal response codes

200

Example

Request

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/ips/ネットワーク名

Response

HTTP/1.1 200 OK
Date: Fri, 08 Jul 2016 02:46:49 GMT
Server: Apache
Content-Length: 70
Content-Type: application/json

{
    “ネットワーク名“: [
        {
            “version”: IPアドレスのバージョン,
            “addr”: “IPアドレス
        }
    ] }

 

Description

サーバーに紐付くIPアドレス一覧を取得します。

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/ips

Request Json

This operation does not accept a request body.

 Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID

Response

Normal response codes

200

Example

Request

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/ips

Response

HTTP/1.1 200 OK
Date: Fri, 08 Jul 2016 02:33:48 GMT
Server: Apache
Content-Length: 85
Content-Type: application/json

{
    “addresses”: {
        “ネットワーク名“: [
            {
                “version”: IPアドレスのバージョン,
                “addr”: “IPアドレス
            }
        ]     }
}

 

Description

サーバーにアタッチされているポートのデタッチを行います。
デタッチを行うと、対象のPortの削除も行われます。
デタッチするVMは停止中である必要があります。

Request URL

Compute API v2.0
DELETE /v2/{tenant_id}/servers/{server_id}/os-interface/{attachment_id}

Request Json

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
attachment_id ポートID URI アタッチされているポートID

Response

Normal response codes

202

Example

Request

curl -i -X DELETE \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/os-interface/ポートID

Response

HTTP/1.1 202 Accepted
Date: Fri, 22 Jul 2016 06:03:25 GMT
Server: Apache
Content-Length: 0
Content-Type: application/json

 

Description

Dettached状態のポートを指定し、サーバーにアタッチします。
アタッチするサーバーは停止状態である必要があります。

標準グローバルネットワークのポートは、各サーバーに1つまでアタッチできます。
標準グローバルネットワーク(追加NIC)のポートは、各サーバーに1つまでアタッチできます。
ローカルネットワークのポートは、各サーバーに2つまでアタッチできます。

ポートアタッチのマトリックス

network type Public LB NAT Additional Dedicated VLAN Local
Public × × ×
LB NAT × × × ×
Additional × × ×
Dedicated × × × ○(別ネットワーク)
VLAN Local ○(別ネットワーク)

Request URL

Compute API v2.0
POST /v2/{tenant_id}/servers/{server_id}/os-interface

Request Json

{
    “interfaceAttachment”: {
        “port_id”: “ポートID
    }
}

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
port_id ポートID plain ポートID

Response

Normal response codes

200

Example

Request

curl -i -X POST \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
-d ‘{“interfaceAttachment”: {“port_id”: “ポートID“}}’ \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/os-interface

Response

HTTP/1.1 200 OK
Date: Fri, 22 Jul 2016 05:48:30 GMT
Server: Apache
Content-Length: 277
Content-Type: application/json

{
    “interfaceAttachment”: {
        “fixed_ips”: [
            {
                “ip_address”: “IPアドレス“,
                 “subnet_id”: “サブネットID
            }
        ],
         “mac_addr”: “MACアドレス“,
         “net_id”: “ネットワークID“,
         “port_id”: “ポートID“,
         “port_state”: “ポートの状態
    }
}

 

Description

サーバーにアタッチ済みのポート詳細を取得します。

Request URL

Compute API v2.0
GET /v2/{tenant_id}/servers/{server_id}/os-interface/{attachment_id}

Request Json

This operation does not accept a request body.

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
server_id サーバーID URI サーバーID
attachment_id ポートID URI アタッチされているポートID

Response

Normal response codes

200

Example

Request

curl -i -X GET \
-H “Accept: application/json” \
-H “Content-Type: application/json” \
-H “X-Auth-Token: トークンID” \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID/os-interface/ポートID

Response

HTTP/1.1 200 OK
Date: Fri, 08 Jul 2016 02:19:57 GMT
Server: Apache
Content-Length: 283
Content-Type: application/json

{
    “interfaceAttachments”: [
        {
            “fixed_ips”: [
                {
                    “ip_address”: “IPアドレス“,
                     “subnet_id”: “サブネットID
                }
            ],
             “mac_addr”: “MACアドレス“,
             “net_id”: “ネットワークID“,
             “port_id”: “ポートID“,
             “port_state”: “ポートの状態
        }
    ] }