これは、Ubuntu 14.04でのneutron(ネットワーキング)の構成の4番目の部分です。コントローラー、ネットワークにネットワークコンポーネントをインストールして構成した、Neutron#1の構成、Neutron#2の構成、およびNeutron#3の構成に関する以前の記事を参照できます。 、および計算ノード。
ここでは、初期ネットワークを作成します。これは、VMインスタンスを起動する前に作成する必要があります。

外部ネットワークの作成:
外部ネットワークは、NAT(ネットワークアドレス変換)を使用してインスタンスへのインターネットアクセスを提供します。インターネットアクセスは、適切なセキュリティルールを備えたフローティングIPアドレスを使用して個々のインスタンスに有効にできます。
コントローラノードにクレデンシャルをロードします。
# source admin-openrc.sh
ネットワークを作成します。
# neutron net-create ext-net --router:external --provider:physical_network external --provider:network_type flat Created a new network: +---------------------------+--------------------------------------+ | Field | Value | +---------------------------+--------------------------------------+ | admin_state_up | True | | id | b4c8d5fc-a4b9-42dc-b705-48c0d4217137 | | mtu | 0 | | name | ext-net | | provider:network_type | flat | | provider:physical_network | external | | provider:segmentation_id | | | router:external | True | | shared | False | | status | ACTIVE | | subnets | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +---------------------------+--------------------------------------+
外部ネットワーク上にサブネットを作成します。
たとえば、フローティングIPアドレス範囲が192.168.0.200から203.0.113.250の192.168.0.0/24を、物理ゲートウェイ192.168.0.1で使用します。このゲートウェイは、物理ネットワークに関連付けられている必要があります
# neutron subnet-create ext-net 192.168.0.0/24 --name ext-subnet --allocation-pool start=192.168.0.200,end=192.168.0.250 --disable-dhcp --gateway 192.168.0.1 Created a new subnet: +-------------------+----------------------------------------------------+ | Field | Value | +-------------------+----------------------------------------------------+ | allocation_pools | {"start": "192.168.0.200", "end": "192.168.0.250"} | | cidr | 192.168.0.0/24 | | dns_nameservers | | | enable_dhcp | False | | gateway_ip | 192.168.0.1 | | host_routes | | | id | b32eb748-9bc0-4e57-ae26-cd17033b635e | | ip_version | 4 | | ipv6_address_mode | | | ipv6_ra_mode | | | name | ext-subnet | | network_id | b4c8d5fc-a4b9-42dc-b705-48c0d4217137 | | subnetpool_id | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +-------------------+----------------------------------------------------+
内部ネットワークの作成:
内部ネットワークはインスタンスに内部ネットワークアクセスを提供し、内部ネットワークは互いに分離されています。同じネットワーク上で実行されているインスタンスのみが相互に通信でき、他のネットワークとの間で通信することはできません。
内部ネットワーク(int-net)を作成します。
# neutron net-create int-net Created a new network: +---------------------------+--------------------------------------+ | Field | Value | +---------------------------+--------------------------------------+ | admin_state_up | True | | id | 187a7b6c-7d14-4d8f-8673-57fa9bab1bba | | mtu | 0 | | name | int-net | | provider:network_type | gre | | provider:physical_network | | | provider:segmentation_id | 1 | | router:external | False | | shared | False | | status | ACTIVE | | subnets | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +---------------------------+--------------------------------------+
内部ネットワーク上にサブネットを作成します。たとえば、仮想ゲートウェイ192.168.0.1で192.168.100.0/24ネットワークを使用する
# neutron subnet-create int-net 192.168.100.0/24 --name int-subnet --gateway 192.168.100.1 Created a new subnet: +-------------------+------------------------------------------------------+ | Field | Value | +-------------------+------------------------------------------------------+ | allocation_pools | {"start": "192.168.100.2", "end": "192.168.100.254"} | | cidr | 192.168.100.0/24 | | dns_nameservers | | | enable_dhcp | True | | gateway_ip | 192.168.100.1 | | host_routes | | | id | 7f75b54f-7b87-42e4-a7e1-f452c8adcb3a | | ip_version | 4 | | ipv6_address_mode | | | ipv6_ra_mode | | | name | int-subnet | | network_id | 187a7b6c-7d14-4d8f-8673-57fa9bab1bba | | subnetpool_id | | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +-------------------+------------------------------------------------------+
仮想ルーターを作成します。
仮想ルーターは、2つ以上の仮想ネットワーク間でネットワークトラフィックを渡します。この場合、ルーターを作成し、内部ネットワークと外部ネットワークをルーターに接続する必要があります。
# neutron router-create int-router Created a new router: +-----------------------+--------------------------------------+ | Field | Value | +-----------------------+--------------------------------------+ | admin_state_up | True | | distributed | False | | external_gateway_info | | | ha | False | | id | a47b81d7-2ad8-4bdc-a17a-0026ad374dcf | | name | int-router | | routes | | | status | ACTIVE | | tenant_id | 9b05e6bffdb94c8081d665561d05e31e | +-----------------------+--------------------------------------+
ルーターを内部サブネットに接続します。
# neutron router-interface-add int-router int-subnet Added interface cb36eb61-5e3a-4c85-b747-8e230b5d1fec to router int-router.
ルーターをゲートウェイとして設定して、ルーターを外部ネットワークに接続します。
# neutron router-gateway-set int-router ext-net Set gateway for router int-router
外部物理ネットワークから192.168.0.200にpingを実行すると、接続を確認できます。これは、サブネット192.168.0.0/24を使用したためです。フローティングIPの範囲は192.168.0.200〜250であり、テナントルーターゲートウェイはフローティングIPアドレスの範囲で最も低いIPアドレス、つまり192.168.0.200を占める必要があります
C:\>ping 192.168.0.200 Pinging 192.168.0.200 with 32 bytes of data: Reply from 192.168.0.200: bytes=32 time<1ms TTL=64 Reply from 192.168.0.200: bytes=32 time<1ms TTL=64 Reply from 192.168.0.200: bytes=32 time<1ms TTL=64 Reply from 192.168.0.200: bytes=32 time=1ms TTL=64 Ping statistics for 192.168.0.200: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 1ms, Average = 0ms
これですべてです!!!これで、Networking(Neutron)が正常に構成されました。インスタンスを起動するのは良いことです。