Oracle® Solaris での OpenStack (Juno) のインストールと構成

印刷ビューの終了

更新: 2016 年 6 月
 
 

外部ネットワークの作成

ルーターを作成したあと、次は外部ネットワークを構成します。クラウドの内部ネットワーク内のユーザーは、外部ネットワークのゲートウェイ経由でインターネットに接続できます。

次の図は、単一ルーターがクラウドプロジェクトのネットワーク通信をサポートする方法を示しています。

図 4  プライベートネットワークモデルでのプロバイダルーター

image:それぞれが 2 つの内部ネットワークと 2 つの VM インスタンスで構成される 2 つのプロジェクト

この図は、次を示しています。

  • 2 つのプロジェクト (Tenant ATenant B)

  • 4 つの VM (VM1VM2VM3、および VM4)

  • 4 つのサブネット (HRENGIT、および ACCT)

  • ルーター

  • 外部ネットワーク

外部ネットワークへの内部ネットワークアクセスを提供すると、VM の IP アドレスが、その外部ネットワークに割り当てるフローティングアドレスのいずれかにマップされます。

外部ネットワークを作成する方法

この手順では、外部ネットワークを表す仮想ネットワークを作成する方法を示します。この仮想ネットワークは DHCP を使用しません。代わりに、フローティング IP アドレスが作成されてプロジェクトに割り当てられ、それらのプロジェクトの下で Nova VM インスタンスによって使用されます。これらの手順では VLAN タイプのネットワークを作成しますが、この手順は (フラットなネットワークなどの) その他のネットワークタイプの作成にも適用されます。

外部ネットワークは、内部ネットワークの作成に関係なく作成できます。

始める前に

エラスティック仮想スイッチの構成を完了してください。詳細は、Neutron をインストールし、構成する方法 (特に、EVS を構成する手順) を参照してください。

  1. Neutron のグローバルシェル変数を設定します。
    controller# export OS_USERNAME=neutron
    controller# export OS_PASSWORD=service-password
    controller# export OS_TENANT_NAME=service
    controller# export OS_AUTH_URL=http://$CONTROLLER_ADMIN_NODE:5000/v2.0
  2. (オプション) VLAN 範囲を取得します。
    controller# evsadm show-controlprop -p vlan-range
  3. 外部ネットワークを作成します。
    controller# neutron net-create --provider:network_type=vlan \
    --provider:segmentation_id=VLAN-nbr \
    --router:external=true network-name
    

    ここで、segmentation_id の値は通常、EVS の構成中に定義した VLAN 範囲の最初の番号である 1 です。


    注 -  フラットなネットワークを作成している場合は、セグメンテーション ID を指定する必要はありません。
  4. 外部ネットワークのサブネットを作成します。

    割り当てプールは、サブネットに割り当てられたフローティング IP アドレスの範囲で構成されます。

    controller# neutron subnet-create --name subnet-name --disable-dhcp \
       --allocation-pool start=start-IP,end=end-IP \
       network-name subnet-IP
  5. ルーターに外部ネットワークを追加します。
    controller# neutron router-gateway-set router-name ext-network-id

    注 -  デフォルトでは、このコマンドを発行するときに SNAT は有効になっています。SNAT が有効になっていると、プライベートネットワーク内の VM は外部ネットワークにアクセスできます。ただし、これらのインスタンス自体にクラウドの外部からアクセスすることはできません。SNAT を無効にするには、neutron router-gateway-set サブコマンドで –--disable-snat オプションを指定します。
  6. (オプション) ルーターに関する情報を表示します。
    controller# neutron router-show router-name
使用例 2  外部ネットワークの作成

この例では、外部ネットワークを作成して、それをクラウド内の内部ネットワークで使用できるように準備する方法を示します。

フラットなネットワークを作成するには、https://blogs.oracle.com/openstack/tags/juno のセクション 2 で提供されている例も参照してください。

controller# export OS_USERNAME=neutron
controller# export OS_PASSWORD=service-password
controller# export OS_TENANT_NAME=service
controller# export OS_AUTH_URL=http://$CONTROLLER_ADMIN_NODE:5000/v2.0

controller# evsadm show-controlprop -p vlan-range
PROPERTY          PERM VALUE       DEFAULT   HOST
vlan-range        rw   1,200-300   --        --

controller# neutron net-create --router:external=True \
--provider:network_type=vlan --provider:segmentation_id=1 ext-network
Created a new network:
+--------------------------+--------------------------------------+
| Field                    | Value                                |
+--------------------------+--------------------------------------+
| admin_state_up           | True                                 |
| id                       | 08cf49c8-f28f-49c1-933d-bdb1017e0294 |
| name                     | ext-network                          |
| provider:network_type    | vlan                                 |
| provider:segmentation_id | 1                                    |
| router:external          | True                                 |
| shared                   | False                                |
| status                   | ACTIVE                               |
| subnets                  |                                      |
| tenant_id                | 7d1caf0854b24becb28df5c5cabf72cc     |
+--------------------------+--------------------------------------+

controller# neutron subnet-create --name ext-subnet --disable-dhcp \
   --allocation-pool start=10.134.13.8,end=10.134.13.254 \
   ext_network 10.134.13.0/24
Created a new subnet:
+-------------------+---------------------------------------------------+
| Field             | Value                                             |
+-------------------+---------------------------------------------------+
| allocation_pools  | {"start": "10.134.13.8", "end": "10.134.13.254"}  |
| cidr              | 10.134.13.0/24                                    |
| dns_nameservers   |                                                   |
| enable_dhcp       | False                                             |
| gateway_ip        | 10.134.13.1                                       |
| host_routes       |                                                   |
| id                | fce503ff-f483-4024-b122-f2524e3edae1              |
| ip_version        | 4                                                 |
| ipv6_address_mode |                                                   |
| ipv6_ra_mode      |                                                   |
| name              | ext-subnet                                        |
| network_id        | 08cf49c8-f28f-49c1-933d-bdb1017e0294              |
| tenant_id         | 7d1caf0854b24becb28df5c5cabf72cc                  |
+-------------------+---------------------------------------------------+

controller# neutron router-gateway-set ext-router 08cf49c8-f28f-49c1-933d-bdb1017e0294
Set gateway for router ext-router

controller# neutron router-show ext-router
+-----------------------+-------------------------------------------------------+
| Field                 | Value                                                 |
+-----------------------+-------------------------------------------------------+
| admin_state_up        | True                                                  |
| external_gateway_info | {"network_id": "08cf49c8-f28f-49c1-933d-bdb1017e0294",|
|                       | "enable_snat": true,                                  |
|                       | "external_fixed_ips":                                 |
|                       |[{"subnet_id": "fce503ff-f483-4024-b122-f2524e3edae1", |
|                       |"ip_address": "10.134.13.8"}]} |                       |
| id                    | f89b24ed-42dd-48b0-8f4b-fd41887a3370                  |
| name                  | ext-router                                            |
| status                | ACTIVE                                                |
| tenant_id             | 7d1caf0854b24becb28df5c5cabf72cc                      |
+-----------------------+-------------------------------------------------------+

関連項目