API実行-IaaSポータル編#

本章では、IaaSポータルからAPIを実行する方法について、説明します。


1. 事前準備#

動作確認用に、変更/削除をしても問題ない、仮想サーバーを1台作成してください。
この後「4. 基礎編:操作方法」において、作成した仮想サーバーに対してAPIを実行します。


2. API実行画面を開く#

IaaSポータルの「API実行画面」を開きます。

  • IaaSポータル画面を開き、操作対象の「リージョン(右上)」 → 「プロジェクト(左上)」を選択
    image

  • 左メニュー → 「API実行」をクリック
    image


3. API実行画面の説明#

IaaSポータル「API実行画面」の概要について説明します。

(1) レイアウト全体イメージ
image

(2) 使用する入力欄
HTTPメソッドの種別(GET/POST/PUT/DELETE)毎に異なります。

  • 〇:必須

  • -:入力不要

GET:照会 POST:登録・操作 PUT:更新 DELETE:削除
リクエスト欄
クエリパラメーター欄 任意
HTTPヘッダー欄
リクエストボディー欄

(3) リクエスト欄
実行するAPIを指定します。
image

(4) クエリパラメーター欄
本章では使用しません。
image

Note

クエリパラメーター欄には、「APIリファレンス」リクエストパラメーターの説明「In」欄に、「query」と記載されているリクエストパラメーターを指定できます。
image

(5) HTTPヘッダー欄
本章では変更不要です。
image

(6) リクエストボディー欄
実行するAPIの詳細情報を設定します。
image

(7) API実行パラメーター欄
実行するコマンドの内容を表示します。
image

(8) レスポンス欄
APIコマンド実行結果を表示します。
image


4. 基礎編:操作方法#

「1. 事前準備」で作成した仮想サーバーに対して、基本的なAPIを実行します。
HTTPメソッドの種別(GET/POST/PUT/DELETE)毎に説明します。


4.1.仮想サーバーの一覧(List Servers、GETメソッド)#

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド GET
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers エンドポイントを指定すると「/v2.1/{project_id}」は自動表示される

(2) API実行画面

  • 初期表示状態
    image

  • エンドポイントを選択
    image

  • URIに「/servers」を追加
    image

  • 「API実行」をクリック
    image

(3) API実行結果

  • レスポンス欄に表示される
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "413",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 02:47:49 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-bf282c07-fd15-47f8-bf43-1ede21faf91c",
        "x-fcx-endpoint-request": "EXECUTED_api3-rmp2.management.jp-east-3.local-19774-145766-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "servers": [
          {
            "id": "5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/servers/5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
                "rel": "self"
              },
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/servers/5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
                "rel": "bookmark"
              }
            ],
            "name": "RHEL01"
          }
        ]
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • Body{"servers": [ {仮想サーバー情報}, …] }
      • 仮想サーバー名:"name": "RHEL01"
      • 仮想サーバーID:"id": "5ae93102-6b59-4ff9-9da8-15e7cf7ffac9"

4.2. 仮想サーバーの詳細(Show Server Details、GETメソッド)#

(0) 「クリア」をクリックし、入力値を初期化します。

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド GET
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers/{server_id} {server_id}:仮想サーバーIDの値を設定

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "1768",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 02:52:35 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-18a7aa26-9b28-4262-b9db-e9e51157e030",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23698-172357-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "server": {
          "OS-EXT-STS:task_state": null,
          "addresses": {
            "network01": [
              {
                "OS-EXT-IPS-MAC:mac_addr": "fa:16:3e:a2:a2:bf",
                "version": 4,
                "addr": "192.168.10.4",
                "OS-EXT-IPS:type": "fixed"
              }
            ]
          },
          "links": [
            {
              "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/servers/5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
              "rel": "self"
            },
            {
              "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/servers/5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
              "rel": "bookmark"
            }
          ],
          "image": "",
          "OS-EXT-STS:vm_state": "active",
          "OS-EXT-SRV-ATTR:instance_name": "inst-000210a8",
          "OS-SRV-USG:launched_at": "2019-11-12T02:20:01.000000",
          "flavor": {
            "id": "eaa5416b-3536-4494-858e-c0532c7768b6",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/flavors/eaa5416b-3536-4494-858e-c0532c7768b6",
                "rel": "bookmark"
              }
            ]
          },
          "id": "5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
          "security_groups": [
            {
              "name": "VPN-Access"
            }
          ],
          "user_id": "5bb131c4f1264e9892bc85d1ea22fda2",
          "OS-DCF:diskConfig": "MANUAL",
          "accessIPv4": "",
          "accessIPv6": "",
          "progress": 0,
          "OS-EXT-STS:power_state": 1,
          "OS-EXT-AZ:availability_zone": "jp-east-3a",
          "metadata": {},
          "status": "ACTIVE",
          "updated": "2019-11-12T02:20:01Z",
          "hostId": "60bd634684ab4b6c8ae08d3702294937548907818616f025b95d88ff",
          "OS-EXT-SRV-ATTR:host": "sv-01-01-13-03.management.jp-east-3.local",
          "OS-SRV-USG:terminated_at": null,
          "key_name": "east3-keypair",
          "OS-EXT-SRV-ATTR:hypervisor_hostname": "sv-01-01-13-03.management.jp-east-3.local",
          "name": "RHEL01",
          "created": "2019-11-12T02:19:44Z",
          "tenant_id": "f2e26b6ec6c84008b5a0472488bfec14",
          "os-extended-volumes:volumes_attached": [
            {
              "id": "a2844cfe-4791-408b-8a86-26b08268da95"
            }
          ],
          "config_drive": ""
        }
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • "Body": {"server": {仮想サーバー詳細情報, …}}
      • 仮想サーバー名:"name": "RHEL01"
      • 状態:"status": "ACTIVE" など

4.3. 仮想サーバーの停止(Stop Server、POSTメソッド)#

(0) 「クリア」をクリックし、入力値を初期化します。

(1) 入力情報

  • API実行画面で以下を設定します。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド POST
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers/{server_id}/action {server_id}:停止する仮想サーバーのIDを設定
リクエストボディー リクエストパラメーター 以下を参照

(2) リクエストパラメーター

  • 以下を設定します。
変更する項目 設定値 備考
(なし) 固定値
  • フォーマット

    {
    "os-stop" : null
    }
    

  • パラメーターサンプル

    {
    "os-stop" : null
    }
    

(3) 「API実行」ボタンをクリックします。

(4) API実行画面

  • リクエスト欄
    image

  • リクエストボディー欄
    image

(5) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 202,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "0",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 04:02:25 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-34c4dbd1-c1c6-43c4-a5df-5547bf0bb744",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23703-192999-1_202",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      }
    }
    

  • レスポンス値の確認

    • Response:正常「202」が設定されていること

(6) IaaSポータル画面で、仮想サーバーが停止していることを確認します。

  • 左メニュー → 「コンピュート」 → 「仮想サーバー」をクリック
    image

4.4. 仮想サーバー名の変更(Update Server、PUTメソッド)#

(1) 入力情報

  • API実行画面で以下を設定します。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド PUT
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers/{server_id} {server_id}:変更する仮想サーバーのIDを設定
リクエストボディー リクエストパラメーター 以下を参照

(2) リクエストパラメーター

  • 以下を設定します。
変更する項目 設定値 備考
変更後の仮想サーバー名 サンプルの値:"RHEL-rename" 任意の名前を設定
  • フォーマット

    {
    "server": {
        "name" : "変更後の仮想サーバー名"
    	}
    }
    

  • パラメーターサンプル

    {
    "server": {
        "name" : "RHEL-rename"
    	}
    }
    

(3) 「API実行」ボタンをクリックします。

(4) API実行画面

  • リクエスト欄
    image

  • リクエストボディー欄
    image

(5) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "1070",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 04:19:55 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-ddb08656-78b3-435d-8829-4858f34a0e7c",
        "x-fcx-endpoint-request": "EXECUTED_api3-rmp2.management.jp-east-3.local-19770-169962-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "server": {
          "status": "SHUTOFF",
          "updated": "2019-11-12T04:02:27Z",
          "hostId": "60bd634684ab4b6c8ae08d3702294937548907818616f025b95d88ff",
          "user_id": "5bb131c4f1264e9892bc85d1ea22fda2",
          "name": "RHEL-rename",
          "links": [
            {
              "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/servers/5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
              "rel": "self"
            },
            {
              "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/servers/5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
              "rel": "bookmark"
            }
          ],
          "created": "2019-11-12T02:19:44Z",
          "tenant_id": "f2e26b6ec6c84008b5a0472488bfec14",
          "image": "",
          "OS-DCF:diskConfig": "MANUAL",
          "addresses": {
            "network01": [
              {
                "version": 4,
                "addr": "192.168.10.4"
              }
            ]
          },
          "accessIPv4": "",
          "accessIPv6": "",
          "flavor": {
            "id": "eaa5416b-3536-4494-858e-c0532c7768b6",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/flavors/eaa5416b-3536-4494-858e-c0532c7768b6",
                "rel": "bookmark"
              }
            ]
          },
          "id": "5ae93102-6b59-4ff9-9da8-15e7cf7ffac9",
          "metadata": {}
        }
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること

(6) IaaSポータル画面で、仮想サーバー名が変更されていることを確認します。

  • 左メニュー → 「コンピュート」 → 「仮想サーバー」をクリック
    image

4.5. 仮想サーバーの削除(Delete Server、DELETEメソッド)#

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド DELETE
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers/{server_id} {server_id}:削除する仮想サーバーのIDを設定

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 204,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "0",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 04:33:34 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-1b2bcac4-7214-4243-95be-53be062a5fd2",
        "x-fcx-endpoint-request": "EXECUTED_api3-rmp2.management.jp-east-3.local-19768-185224-1_204",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      }
    }
    

  • レスポンス値の確認

    • Response:正常「204」が設定されていること

(4) IaaSポータル画面で、仮想サーバーが削除されていることを確認します。

  • 左メニュー → 「コンピュート」 → 「仮想サーバー」をクリック
    image

5. 応用編:サーバーグループに関する操作#

仮想サーバーを別々の物理ホスト上で起動させる、「Anti-Affinity」サーバーグループに関する操作を説明します。


5.1. 作業の流れ#

No. 項目 操作 説明
1 サーバーグループの作成 API 「Anti-Affinity」ポリシーを指定
2 サーバーグループの一覧 API サーバーグループが作成されたことを確認
3 フレーバーIDの一覧 API 仮想サーバー作成に必要な情報
4 OSイメージIDの取得 IaaSポータル 仮想サーバー作成に必要な情報
5 キーペア名の取得 IaaSポータル 仮想サーバー作成に必要な情報
6 仮想ネットワークIDの取得 IaaSポータル 仮想サーバー作成に必要な情報
7 セキュリティグループ名の取得 IaaSポータル 仮想サーバー作成に必要な情報
8 Windows仮想サーバー作成 API 上記で作成したサーバーグループを指定
9 RHEL仮想サーバー作成 API 上記で作成したサーバーグループを指定
10 サーバーグループの詳細 API 作成した仮想サーバーが、サーバーグループに含まれていることを確認
11 仮想サーバー削除 IaaSポータル サーバーグループの削除前処理
12 サーバーグループの削除 API サーバーグループを削除
13 サーバーグループの一覧 API サーバーグループが削除されたことを確認

5.2. サーバーグループの作成(Create Server Group、POSTメソッド)#

(1) 入力情報

  • API実行画面で以下を設定します。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド POST
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/os-server-groups
リクエストボディー リクエストパラメーター 以下を参照

(2) リクエストパラメーター

  • 以下を設定します。
変更する項目 設定値 備考
サーバーグループ名 サンプルの値:"web_server_group" 任意の名前を設定
  • フォーマット

    {
    "server_group":{
    	"name": "サーバーグループ名",
    	"policies": [ "anti-affinity" ]
    	}
    }
    

  • パラメーターサンプル

    {
    "server_group":{
    	"name": "web_server_group",
    	"policies": [ "anti-affinity" ]
    	}
    }
    

(3) 「API実行」ボタンをクリックします。

(4) API実行画面

  • リクエスト欄
    image

  • リクエストボディー欄
    image

(5) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "154",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 04:44:03 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-906d8ff6-e4a4-41aa-a8a3-0889c2836499",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23698-230221-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "server_group": {
          "members": [],
          "metadata": {},
          "id": "78eb6e61-4a74-4903-a0fa-5deae08a6104",
          "policies": [
            "anti-affinity"
          ],
          "name": "web_server_group"
        }
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • "Body": {"server_group": {サーバーグループ情報}}
      • サーバーグループ名:"name": "web_server_group"
      • サーバーグループID:"id": "78eb6e61-4a74-4903-a0fa-5deae08a6104"
      • サーバーグループポリシー:"policies": ["anti-affinity"]

5.3. サーバーグループの一覧(List Server Groups、GETメソッド)#

(0) 「クリア」をクリックし、入力値を初期化します。

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド GET
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/os-server-groups

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "157",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 04:48:34 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-2711fc76-181d-4da0-b86d-ac9bff2b3bfb",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23702-231520-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "server_groups": [
          {
            "members": [],
            "metadata": {},
            "id": "78eb6e61-4a74-4903-a0fa-5deae08a6104",
            "policies": [
              "anti-affinity"
            ],
            "name": "web_server_group"
          }
        ]
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • "Body": {"server_groups": [ {サーバーグループ情報}, …] }
      • サーバーグループ名:"name": "web_server_group"
      • サーバーグループID:"id": "78eb6e61-4a74-4903-a0fa-5deae08a6104"

5.4. フレーバーIDの一覧(List Flavors、GETメソッド)#

(0) 「クリア」をクリックし、入力値を初期化します。

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド GET
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/flavors

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "16369",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 05:17:48 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-4aef7e02-d95c-4bf9-8b09-551466dfa325",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23702-239918-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "flavors": [
          {
            "id": "0232202a-6332-4043-b072-e295626a73b4",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/flavors/0232202a-6332-4043-b072-e295626a73b4",
                "rel": "self"
              },
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/flavors/0232202a-6332-4043-b072-e295626a73b4",
                "rel": "bookmark"
              }
            ],
            "name": "S4-16S"
          },
    
    	  中略
    
          {
            "id": "1f7d6421-9565-45fd-a29a-8a8b8b400026",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/flavors/1f7d6421-9565-45fd-a29a-8a8b8b400026",
                "rel": "self"
              },
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/flavors/1f7d6421-9565-45fd-a29a-8a8b8b400026",
                "rel": "bookmark"
              }
            ],
            "name": "M3-1"
          },
    
    	  中略
    
          {
            "id": "eaa5416b-3536-4494-858e-c0532c7768b6",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/flavors/eaa5416b-3536-4494-858e-c0532c7768b6",
                "rel": "self"
              },
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/flavors/eaa5416b-3536-4494-858e-c0532c7768b6",
                "rel": "bookmark"
              }
            ],
            "name": "P3-1"
          },
    
    	  中略
    
          {
            "id": "feb45b93-2157-4c5b-8aa9-97b49f70e337",
            "links": [
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/v2.1/f2e26b6ec6c84008b5a0472488bfec14/flavors/feb45b93-2157-4c5b-8aa9-97b49f70e337",
                "rel": "self"
              },
              {
                "href": "https://compute.jp-east-3.cloud.global.fujitsu.com/f2e26b6ec6c84008b5a0472488bfec14/flavors/feb45b93-2157-4c5b-8aa9-97b49f70e337",
                "rel": "bookmark"
              }
            ],
            "name": "M4-4S"
          }
        ]
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • "Body": {"flavors": [ {フレーバー情報}, …] }
      • フレーバー名:"name": "S4-16S"
      • フレーバーID:"id": "0232202a-6332-4043-b072-e295626a73b4"
  • 本サンプルでは、以下のフレーバーを使用します。

    • Windows仮想サーバー:「M3-1」
      • フレーバー名:"name": "M3-1"
      • フレーバーID:"id": "1f7d6421-9565-45fd-a29a-8a8b8b400026"
    • RHEL仮想サーバー: 「P3-1」

      • フレーバー名:"name": "P3-1"
      • フレーバーID:"id": "eaa5416b-3536-4494-858e-c0532c7768b6"
    • 内容は変更される場合があるので、常に最新を確認してください。


5.5. OSイメージIDの取得(IaaSポータル)#

(1) IaaSポータル画面で、仮想サーバーのOSに対応するイメージIDを確認します。

  • 左メニュー → 「コンピュート」 → 「イメージ」をクリック

  • 使用する「イメージ名」のリンクをクリック
    image

  • 本サンプルでは、以下のイメージを使用します。

    • Windows仮想サーバー
      • イメージ名:[Hourly] Windows Server 2019 SE 64bit (Japanese) 03
      • イメージID:704d4475-d698-4dad-85d4-9db7703e61dc
    • RHEL仮想サーバー

      • イメージ名:[Hourly] Red Hat Enterprise Linux 8.8 64bit (English) 01
      • イメージID:7371b4e5-f16e-4e70-80e7-92e895f1de2c
    • イメージ情報は変更される場合があるので、常に最新を確認してください。


5.6. キーペア名の取得(IaaSポータル)#

(1) IaaSポータル画面で、仮想サーバーに設定するキーペア名を確認します。

  • 左メニュー → 「コンピュート」 → 「キーペア」をクリック
    image

  • 本サンプルでは、キーペア名:east3-keypairを使用します。


5.7. 仮想ネットワークIDの取得(IaaSポータル)#

(1) IaaSポータル画面で、仮想サーバーを割り当てる仮想ネットワークIDを確認します。

  • 左メニュー → 「ネットワーク」 → 「仮想ネットワーク」をクリック

  • 割り当てる「仮想ネットワーク名」のリンクをクリック
    image


5.8. セキュリティグループ名の取得(IaaSポータル)#

(1) IaaSポータル画面で、仮想サーバーに設定するセキュリティグループ名を確認します。

  • 左メニュー → 「ネットワーク」 → 「セキュリティグループ」をクリック
    image

  • 本サンプルでは、セキュリティグループ名:VPN-Accessを使用します。


5.9. Windows仮想サーバー作成(Create Server、POSTメソッド)#

(1) 入力情報

  • API実行画面で以下を設定します。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド POST
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers
リクエストボディー リクエストパラメーター 以下を参照

(2) リクエストパラメーター

  • 以下を設定します。
変更する項目 設定値 備考
仮想サーバー名 サンプルの値:"webG-win" 任意の名前を設定
フレーバーID サンプルの値:"1f7d6421-9565-45fd-a29a-8a8b8b400026" 上記で取得した値を設定
OSイメージID サンプルの値:"704d4475-d698-4dad-85d4-9db7703e61dc" 上記で取得した値を設定
キーペア名 サンプルの値:"east3-keypair" 上記で取得した値を設定
仮想ネットワークID サンプルの値:"9086e81c-daa4-4cb9-89cb-fec04ec3d695" 上記で取得した値を設定
セキュリティグループ名 サンプルの値:"VPN-Access" 上記で取得した値を設定
サーバー初期パスワード サンプルの値:"Qwe!23aszx" 任意のパスワード値を設定
サーバーグループID サンプルの値:"78eb6e61-4a74-4903-a0fa-5deae08a6104" 上記で取得した値を設定
  • フォーマット

    {
      "server": {
        "name": "仮想サーバー名",
        "imageRef": "",
        "flavorRef": "フレーバーID",
        "block_device_mapping_v2":[{
          "boot_index": "0",
          "uuid":"OSイメージID",
          "volume_size": "80",
          "device_name": "/dev/vda",
          "source_type": "image",
          "destination_type": "volume",
          "delete_on_termination": "1"
        }] ,
        "key_name": "キーペア名",
        "max_count": "1",
        "min_count": "1",
        "networks": [
          {"uuid": "仮想ネットワークID"}
        ],
        "security_groups": [
          {"name": "セキュリティグループ名"}
        ],
        "metadata": {
          "admin_pass": "サーバー初期パスワード"
        }
      },
      "os:scheduler_hints": {
        "group": "サーバーグループID"
      }
    }
    

  • パラメーターサンプル

    {
      "server": {
        "name": "webG-win",
        "imageRef": "",
        "flavorRef": "1f7d6421-9565-45fd-a29a-8a8b8b400026",
        "block_device_mapping_v2":[{
          "boot_index": "0",
          "uuid":"704d4475-d698-4dad-85d4-9db7703e61dc",
          "volume_size": "80",
          "device_name": "/dev/vda",
          "source_type": "image",
          "destination_type": "volume",
          "delete_on_termination": "1"
        }] ,
        "key_name": "east3-keypair",
        "max_count": "1",
        "min_count": "1",
        "networks": [
          {"uuid": "9086e81c-daa4-4cb9-89cb-fec04ec3d695"}
        ],
        "security_groups": [
          {"name": "VPN-Access"}
        ],
        "metadata": {
          "admin_pass": "Qwe!23aszx"
        }
      },
      "os:scheduler_hints": {
        "group": "78eb6e61-4a74-4903-a0fa-5deae08a6104"
      }
    }
    

(3) 「API実行」ボタンをクリックします。

(4) API実行画面

  • リクエスト欄
    image

  • リクエストボディー欄
    image

(5) API実行結果

  • レスポンス欄
    image

  • レスポンス値の確認

    • Response:正常「202」が設定されていること

(6) IaaSポータル画面で、仮想サーバーが作成されていることを確認します。

  • 左メニュー → 「コンピュート」 → 「仮想サーバー」をクリック
    image

5.10. RHEL仮想サーバー作成(Create Server、POSTメソッド)#

(1) 入力情報

  • API実行画面で以下を設定します。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド POST
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/servers
リクエストボディー リクエストパラメーター 以下を参照

(2) リクエストパラメーター

  • 以下を設定します。
変更する項目 設定値 備考
仮想サーバー名 サンプルの値:"webG-RHEL" 任意の名前を設定
フレーバーID サンプルの値:"eaa5416b-3536-4494-858e-c0532c7768b6" 上記で取得した値を設定
OSイメージID サンプルの値:" 7371b4e5-f16e-4e70-80e7-92e895f1de2c" 上記で取得した値を設定
キーペア名 サンプルの値:"east3-keypair" 上記で取得した値を設定
仮想ネットワークID サンプルの値:"9086e81c-daa4-4cb9-89cb-fec04ec3d695" 上記で取得した値を設定
セキュリティグループ名 サンプルの値:"VPN-Access" 上記で取得した値を設定
サーバーグループID サンプルの値:"78eb6e61-4a74-4903-a0fa-5deae08a6104" 上記で取得した値を設定
  • フォーマット

    {
      "server": {
        "name": "仮想サーバー名",
        "imageRef": "",
        "flavorRef": "フレーバーID",
        "block_device_mapping_v2":[{
          "boot_index": "0",
          "uuid":"OSイメージID",
          "volume_size": "30",
          "device_name": "/dev/vda",
          "source_type": "image",
          "destination_type": "volume",
          "delete_on_termination": "1"
        }] ,
        "key_name": "キーペア名",
        "max_count": "1",
        "min_count": "1",
        "networks": [
          {"uuid": "仮想ネットワークID"}
        ],
        "security_groups": [
          {"name": "セキュリティグループ名"}
        ]
      },
      "os:scheduler_hints": {
        "group": "サーバーグループID"
      }
    }
    

  • パラメーターサンプル

    {
      "server": {
        "name": "webG-RHEL",
        "imageRef": "",
        "flavorRef": "eaa5416b-3536-4494-858e-c0532c7768b6",
        "block_device_mapping_v2":[{
          "boot_index": "0",
          "uuid":"	7371b4e5-f16e-4e70-80e7-92e895f1de2c",
          "volume_size": "30",
          "device_name": "/dev/vda",
          "source_type": "image",
          "destination_type": "volume",
          "delete_on_termination": "1"
        }] ,
        "key_name": "east3-keypair",
        "max_count": "1",
        "min_count": "1",
        "networks": [
          {"uuid": "9086e81c-daa4-4cb9-89cb-fec04ec3d695"}
        ],
        "security_groups": [
          {"name": "VPN-Access"}
        ]
      },
      "os:scheduler_hints": {
        "group": "78eb6e61-4a74-4903-a0fa-5deae08a6104"
      }
    }
    

(3) 「API実行」ボタンをクリックします。

(4) API実行結果

  • レスポンス値の確認
    • Response:正常「202」が設定されていること

(5) IaaSポータル画面で、仮想サーバーが作成されていることを確認します。

  • 左メニュー → 「コンピュート」 → 「仮想サーバー」をクリック
    image

5.11. サーバーグループの詳細(Show Server Group Details、GETメソッド)#

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド GET
エンドポイント compute(v2.1)
URI v2.1/{project_id}/os-server-groups/{server_group_id} {server_group_id}:確認するサーバーグループのIDを設定

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "232",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 09:04:16 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-79b7dc64-332f-4dcc-8ab8-43d6a31c17ee",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23705-305627-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "server_group": {
          "members": [
            "bca70739-0bfe-4332-8a8a-ca672925eb4e",
            "da29dbbd-1b7c-4faa-b05e-34fbab32c5fd"
          ],
          "metadata": {},
          "id": "78eb6e61-4a74-4903-a0fa-5deae08a6104",
          "policies": [
            "anti-affinity"
          ],
          "name": "web_server_group"
        }
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • "Body": {"server_group": {サーバーグループ情報} }
      • サーバーグループ名:"name": "web_server_group"
      • サーバーグループID:"id": "78eb6e61-4a74-4903-a0fa-5deae08a6104"
      • グループに所属している仮想サーバーID:
        "members": [
          "bca70739-0bfe-4332-8a8a-ca672925eb4e",
          "da29dbbd-1b7c-4faa-b05e-34fbab32c5fd"
        ]
        

5.12. 仮想サーバー削除(IaaSポータル)#

サーバーグループを削除する前に、グループに所属している仮想サーバーを削除します。

(1) IaaSポータル画面で、仮想サーバーの一覧を表示します。

  • 左メニュー → 「コンピュート」 → 「仮想サーバー」をクリック

(2) 削除する仮想サーバーの「アクション」をクリック、「削除」を選択します。
image

(3) グループに所属している仮想サーバーをすべて削除してください。


5.13. サーバーグループの削除(Delete Server Group、DELETEメソッド)#

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド DELETE
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/os-server-groups/{server_group_id} {server_group_id}:削除するサーバーグループのIDを設定

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 204,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "0",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 09:08:01 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-f5161c41-7904-48d5-b7ef-48aa3e614444",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23703-306199-1_204",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      }
    }
    

  • レスポンス値の確認

    • Response:正常「204」が設定されていること

5.14. サーバーグループの一覧(List Server Groups、GETメソッド)#

サーバーグループが削除されたことを確認します。

(0) 「クリア」をクリックし、入力値を初期化します。

(1) 入力情報

  • API実行画面で以下を設定し、「API実行」ボタンをクリックします。
入力欄 入力項目 設定値 備考
リクエスト リージョン 「jp-east-3」または「jp-west-3」を選択
HTTPメソッド GET
エンドポイント compute(v2.1)
URI /v2.1/{project_id}/os-server-groups

(2) API実行画面

  • リクエスト欄
    image

(3) API実行結果

  • レスポンス欄
    image

  • 実行結果サンプル

    {
      "Response": 200,
      "Header": {
        "cache-control": "max-age=0, private, no-store, no-cache, must-revalidate",
        "connection": "keep-alive",
        "content-length": "21",
        "content-type": "application/json",
        "date": "Tue, 12 Nov 2019 09:10:51 GMT",
        "openstack-api-version": "compute 2.1",
        "vary": "OpenStack-API-Version, X-OpenStack-Nova-API-Version",
        "x-compute-request-id": "req-07bae373-b399-4836-8acb-6922241bba7e",
        "x-fcx-endpoint-request": "EXECUTED_api2-rmp1.management.jp-east-3.local-23706-306827-1_200",
        "x-openstack-nova-api-version": "2.1",
        "x-return": "Endpoint"
      },
      "Body": {
        "server_groups": []
      }
    }
    

  • レスポンス値の確認

    • Response:正常「200」が設定されていること
    • "Body": {"server_groups": [ {サーバーグループ情報}, …] }
      • サーバーグループ情報:空であること

6. その他のAPI実行方法について#

IaaS APIリファレンスをご覧ください。