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

サーバー作成

Description

仮想サーバーを作成します。
・IPアドレスを購入していない場合ははじめにコントロールパネルからIPアドレスの購入が必要です。
・ブート用ボリュームをあらかじめ作成する必要があります。
・指定できるポート数はローカルネットワークは2つ、それ以外はグループ毎に1つまでです。

[サーバーのrootパスワードについて]  サーバーのroot/Administratorパスワードは”adminPass”パラメータを利用します。adminPassはOptionalですが、指定するimageによって動作が変わります。
・Publicイメージを指定した場合、パスワードが入力されていないとランダムなパスワードが設定されます。
・Privateイメージ(自身の仮想サーバーの保存イメージ)を指定した場合、パスワードが入力されなかったら元イメージのパスワードが設定されます。(※レスポンスのadminPassには””と表示されます)
・文字種:半角英大文字と、半角英小文字と、半角数字または記号の組み合わせ以外はエラー
・文字数:9文字以上~70文字以内
・使用可能な記号 : ! # $ % & ? ” ‘ = + – _ { } [ ] ^ ~ : ; ( ) . , / | \ * @

Request URL

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

Request Json

# 最低指定時(port指定)
{
    “server”: {
        “name”: “ホスト名“,
        “flavorRef”:”フレーバーID“,
        “adminPass”:”パスワード“,
        “networks”: [
            {
                “port”:”ポートID
            }
        ],
        “block_device_mapping”: [
            {
                “volume_id”:”ボリュームID(ブートディスク)
            }
        ]     }
}

# 最低指定時(UUID[NetworkID]指定)
{
    “server”: {
        “name”:”ホスト名“,
        “flavorRef”:”フレーバーID“,
        “adminPass”:”パスワード“,
        “networks”: [
            {
                “uuid”:”ネットワークID
            }
        ],
        “block_device_mapping”: [
            {
                “volume_id”:”ボリュームID(ブートディスク)
            }
        ]     }
}

# Port複数指定時{
    “server”: {
        “name”: “ホスト名“,
        “flavorRef”:”フレーバーID“,
        “adminPass”:”パスワード“,
        “networks”: [
            {
                “port”:”ポートID
            },
            {
                “port”:”ポートID
            },
            {
                “port”:”ポートID
            }
        ],
        “block_device_mapping”: [
            {
                “volume_id”:”ボリュームID(ブートディスク)
            }
        ]     }
}

# SSHキー指定時{
    “server”: {
        “name”:”ホスト名“,
        “flavorRef”:”フレーバーID“,
        “adminPass”:”パスワード“,
        “networks”: [
            {
                “port”:”ポートID
            }
        ],
        “block_device_mapping”: [
            {
                “volume_id”:”ボリュームID(ブートディスク)
            }
        ],
       “key_name”:”SSHキー名
    }
}

# metadata指定時{
    “server”: {
        “name”:”ホスト名“,
        “flavorRef”:”フレーバーID“,
        “adminPass”:”パスワード“,
        “networks”: [
            {
                “port”:”ポートID
            }
        ],
        “block_device_mapping”: [
            {
                “volume_id”:”ボリュームID(ブートディスク)
            }
        ],
       “metadata”: {
            “instance_name_tag”:”ネームタグ
        }
    }
}

# 追加ディスク指定時{
    “server”: {
        “name”:”ホスト名“,
        “flavorRef”:”フレーバーID“,
        “adminPass”:”パスワード“,
        “networks”: [
            {
                “port”:”ポートID
            }
        ],
        “block_device_mapping”: [
            {
                “volume_id”:”ボリュームID(ブートディスク)
            },
            {
                “volume_id”:”ボリュームID(追加ディスク)
            }
        ]     }
}

Request Paramters

Parameter Value Style Description
X-Auth-Token Userトークン header トークンID
tenant_id テナントID URI テナントID
name ホスト名 plain OS内のホスト名(英数字15文字以下、「-」のみ利用可能)
flavorRef フレーバーID plain 対象サーバータイプのUUIDを指定する。サーバータイプ一覧取得にてフレーバーIDをご確認ください。
networks ネットワークオブジェクト plain keyに”port”を、valueにアタッチしたいポートIDを指定、またはkeyに”uuid”を、valueにサブネットを持つネットワークIDを指定する(RequestJson参照) ポート一覧取得にてポートIDを、ネットワーク一覧取得にてネットワークIDをご確認ください。
block_device_mapping ブロックストレージ Array deviceは1~2つマッピングできる。
volume_id ボリュームID plan アタッチしたいボリュームのIDを指定する。ボリューム一覧取得にてボリュームIDをご確認ください。
adminPass (Optional) パスワード plan サーバーのroot/Administratorのパスワード(詳細は「サーバーのroot/Administratorパスワードについて」を参照)
key_name (Optional) SSHキー名 plan SSHキーを利用する場合に指定する。キーペア一覧取得にてSSHキー名をご確認ください。
metadata (Optional)   plan  
instance_name_tag (Optional) ネームタグ plan ネームタグを入れる際に利用する(Default:server.name)(文字種:半角英数字、「 – 」、「 _ 」のみを許可。文字数:255文字以下)

Response

Normal response codes

202

Example

Request

curl -i -X POST \
-H “Accept: application/json” \
-H “X-Auth-Token: トークンID” \
-d ‘{
        “server”: {
            “name”: “ホスト名“,
            “flavorRef”: “フレーバーID“,
            “adminPass”: “パスワード“,
            “networks”: [
                {
                    “uuid”: “ネットワークID
                }
            ],
            “block_device_mapping”: [
                {
                    “volume_id”: “ボリュームID(ブートディスク)
                }
            ]         }
    }’ \
https://compute.odc01.eva-clouds.com/v2/テナントID/servers

Response

HTTP/1.1 202 Accepted
Date: Fri, 22 Jul 2016 06:02:41 GMT
Server: Apache
Content-Length: 446
Content-Type: application/json

{
    “server”: {
        “security_groups”: [
            {
                “name”: “セキュリティグループ名
            }
        ],
        “OS-DCF:diskConfig”: “MANUAL”,
        “id”: “サーバーID“,
        “links”: [
            {
                “href”: “https://compute.odc01.eva-clouds.com/v2/テナントID/servers/サーバーID“,
                “rel”: “self”
            },
            {
                “href”: “https://compute.odc01.eva-clouds.com/テナントID/servers/サーバーID“,
                “rel”: “bookmark”
            }
        ],
        “adminPass”: “パスワード
    }
}