GMOアプリクラウドのAPIで仮想サーバー(外部ディスクプラン)を作ってみる



こんにちは、営業 兼 イベント担当のカズです。

前回の「GMOアプリクラウドのAPIを使ってみよう(認証編)」「GMOアプリクラウドのAPIで仮想サーバー(ローカルディスクプラン)を作ってみる」に続くエントリーです。本日は、APIで仮想サーバーの外部ディスクプランを実際に作っていきます。
※外部ディスクプランの詳細はこちらを参考にしてください。

【参考情報】
GMOアプリクラウド APIリファレンス

まずは、上記リファレンスと前回の記事を参考にして、VM作成に必要な以下の情報を揃えてください。「エンドポイントのURL」「テナントID」はコントロールパネルのAPI情報メニューから確認いただけます。

・トークンID(認証用の24時間有効なトークンID)
・イメージID(インストールしたいOSのイメージ)
・フレーバーID(サーバースペック)

ここでさらにもう一つ。
外部ディスクプランを作る時には、ブート領域用のボリューム(30GB)を事前に用意する必要があります。

■ボリュームの作成

curl -X POST -H "X-Auth-Token: Userトークン" -H Content-Type:application/json -d '{"volume": {"name": "任意のボリューム名","size": "30","volume_type": "os_boot_v2","imageRef":"イメージID"}}' ボリュームエンドポイントURL/volumes

{
    "volume": {
        "id": "ボリュームID", 
        "links": [
            {
                "href": "ボリュームエンドポイントURL/volumes/8b137e24-e4bd-4224-ba30-97c2ea858583", 
                "rel": "self"
            }, 
            {
                "href": "ボリュームエンドポイントURL/volumes/8b137e24-e4bd-4224-ba30-97c2ea858583", 
                "rel": "bookmark"
            }
        ], 
        "name": "volume-test"
    }
}

上記のcURLコマンドの返り値「ボリュームID」を控えておいてください。
ここまでの準備が整ったら「N-0102」タイプを時間課金で作ってみましょう。

■プライベートIPを『自動』割り当てで作成する場合

curl -X POST -H "X-Auth-Token: Userトークン" -H Content-Type:application/json -d '{"server":{"name":"任意のサーバー名","flavorRef":"フレーバーID"},"block_device_mapping":[{"volume_id":"ボリュームID"}]}' サーバー操作エンドポイントURL/servers

{
    "server": {
        "OS-DCF:diskConfig": "MANUAL", 
        "adminPass": "**********", 
        "id": "01121f5d-ba51-4815-a4d1-acbd2e952c94", 
        "links": [
            {
                "href": "サーバー操作エンドポイントURL/servers/01121f5d-ba51-4815-a4d1-acbd2e952c94", 
                "rel": "self"
            }, 
            {
                "href": "サーバー操作エンドポイントURL/servers/01121f5d-ba51-4815-a4d1-acbd2e952c94", 
                "rel": "bookmark"
            }
        ], 
        "security_groups": [
            {
                "name": "default"
            }
        ]
    }
}

■プライベートIPを『手動』割り当てで作成する場合

curl -X POST -H "X-Auth-Token: Userトークン" -H Content-Type:application/json -d '{"server":{"name":"任意のサーバー名","flavorRef":"サーバータイプID","networks":[{"fixed_ip":"外部用プライベートIP"},{"fixed_ip":"内部用プライベートIP"}],"block_device_mapping":[{"volume_id":"ボリュームID"}]}}'サーバー操作エンドポイントURL/servers

{
    "server": {
        "OS-DCF:diskConfig": "MANUAL", 
        "adminPass": "**********", 
        "id": "4705751e-d715-42e4-bbf6-1698c96340ee", 
        "links": [
            {
                "href": "サーバー操作エンドポイントURL/servers/4705751e-d715-42e4-bbf6-1698c96340ee", 
                "rel": "self"
            }, 
            {
                "href": "サーバー操作エンドポイントURL/servers/4705751e-d715-42e4-bbf6-1698c96340ee", 
                "rel": "bookmark"
            }
        ], 
        "security_groups": [
            {
                "name": "default"
            }
        ]
    }
}

手順としては以上です。
いずれも上記のレスポンスが戻ってくれば問題なく受け付けていますので、コントロールパネルからVMが作成されていることを確認してください。

【関連記事】
・GMOアプリクラウドのAPIを使ってみよう(認証編)
・GMOアプリクラウドのAPIで仮想サーバー(ローカルディスクプラン)を作ってみる

カテゴリー: GMOアプリクラウド サービス・機能   タグ:   この投稿のパーマリンク

コメントは受け付けていません。