ネットワーク作成

仮想サーバなどのリソースを配備するため、プロジェクト内にネットワークを作成し、確認するまでの手順を解説します。

ネットワークはプロジェクト内に複数作成できます。



  1. 以下で必要な設定を行います。
    $ NW_NAME=<新規ネットワーク名(任意)>
    $ AZ=<作成先アベイラビリティゾーン名>
  2. 次のAPIを実行します。
    $ curl -Ss  $NETWORK/v2.0/networks -X POST -H "X-Auth-Token: $OS_AUTH_TOKEN" \
    -H "Content-Type: application/json" -d '{"network":{ "name": "'$NW_NAME'",
     "availability_zone": "'$AZ'"}}' | jq .

    以下のレスポンスが返ってきます。

    {
      "network": {
        "status": "ACTIVE",
        "subnets": [],
        "name": "<設定したネットワーク名>",
        "admin_state_up": true,
        "tenant_id": "<プロジェクトID>",
        "shared": false,
        "id": "<新規ネットワークのID>",
        "availability_zone": "<指定したアベイラビリティゾーン>"
      }
    }
    

    アベイラビリティゾーンは、AZ1がjp-east-1a、AZ2がjp-east-1bで表現されます。

  3. 作成したネットワークを確認するため、以下のAPIを実行します。
    $ curl -Ss $NETWORK/v2.0/networks -X GET -H "X-Auth-Token: $OS_AUTH_TOKEN" | jq .

    以下のように、設定したネットワーク名を含んだリストが出力された場合、作成は完了です。

    ネットワーク名が、"inf_az1_ext_net01"および"inf_az2_ext_net01"と表記されているものはデフォルトで存在する外部ネットワークです。

    {
      "networks": [
        {
          "status": "ACTIVE",
          "subnets": [
            "5079f324-5db0-44ee-92ac-3a6b7977b23f",
            "a56b6058-0479-43a1-8b27-01c1c05e96a2",
            "c1da3ee7-51c3-4801-bb97-aa03a4383ef0",
            "e96e55b8-84bb-4777-a782-a5d6e8340039",
            "f5e9ec37-88ec-494b-ac55-dae101a54cc1"
          ],
          "name": "inf_az2_ext-net01",
          "router:external": true,
          "tenant_id": "31ceb599e8ff48aeb66f2fd748988960",
          "admin_state_up": true,
          "shared": true,
          "id": "375c49fa-a706-4676-b55b-2d3554e5db6a",
          "availability_zone": "jp-east-1b"
        },
        
        ...
        
        {
          "status": "ACTIVE",
          "subnets": [],
          "name": "<ネットワーク名>",
          "router:external": false,
          "tenant_id": "<プロジェクトID>",
          "admin_state_up": true,
          "shared": false,
          "id": "<ネットワークID>",
          "availability_zone": "<アベイラビリティゾーン>"
        },
        {
          "status": "ACTIVE",
          "subnets": [
            "37ca5225-6ca6-4ee6-a49d-d479400a632b",
            "3c2419a7-7745-452c-bee5-664db03129bb",
            "7c7feecd-082c-415b-865a-82d4e5de97e5",
            "d96cdd6c-6e1e-4331-9c8e-42b52588b767",
            "ff4a9bd6-37be-4c03-9b87-1f693f807b48"
          ],
          "name": "inf_az1_ext-net01",
          "router:external": true,
          "tenant_id": "31ceb599e8ff48aeb66f2fd748988960",
          "admin_state_up": true,
          "shared": true,
          "id": "af4198a9-b392-493d-80ec-a7c6e5a1c22a",
          "availability_zone": "jp-east-1a"
        }
      ]
    }

仮想サーバなどのリソースを配備するには、作成したネットワークに対して引き続きサブネットを作成していきます。