2018年12月22日土曜日

Oracle OpenStack R5 への道。ネットワークの作成

Oracle OpenStack R5 で、VM が利用するネットワークを作成します。
物理ネットワーク側は、すでに構成ずみとします。
また、すでに docker-ostk で OpenStack の操作ができるようにしてあります。

全容については下記にて。
Oracle OpenStack R5 への道。入口

ダッシュボードから見て、下記のようなシンプルなネットワークを作成します。
また、プロジェクトは 1つ(admin)だけにしています。



外部ネットワークを作成します。
[root@os-master-01 ~]# docker-ostk openstack network create --external --provider-physical-network physnet1 --provider-network-type flat net-ext-01
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | UP                                   |
| availability_zone_hints   |                                      |
| availability_zones        |                                      |
| created_at                | 2018-12-22T04:52:15Z                 |
| description               |                                      |
| dns_domain                | None                                 |
| id                        | e2c489f2-ac99-4d08-a0e4-e55f6f2a6ad9 |
| ipv4_address_scope        | None                                 |
| ipv6_address_scope        | None                                 |
| is_default                | False                                |
| is_vlan_transparent       | None                                 |
| mtu                       | 1500                                 |
| name                      | net-ext-01                           |
| port_security_enabled     | True                                 |
| project_id                | f2908a8dc00042d5901eabade3482568     |
| provider:network_type     | flat                                 |
| provider:physical_network | physnet1                             |
| provider:segmentation_id  | None                                 |
| qos_policy_id             | None                                 |
| revision_number           | 1                                    |
| router:external           | External                             |
| segments                  | None                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tags                      |                                      |
| updated_at                | 2018-12-22T04:52:16Z                 |
+---------------------------+--------------------------------------+

ここで指定したプロバイダ ネットワークの名前「physnet1」は、
デプロイした OpenStack でのネットワーク設定に合わせるためです。
[root@os-nw-01 ~]# grep flat /etc/kolla/neutron-openvswitch-agent/ml2_conf.ini
type_drivers = flat,vlan,vxlan
[ml2_type_flat]
flat_networks = physnet1

外部ネットワークに、サブネットを作成します。
ここでは、コマンドラインがあまりに長いので「\」で折り返しています。

docker-ostk openstack subnet create --no-dhcp \
--allocation-pool start=192.168.30.160,end=192.168.30.199 \
--subnet-range 192.168.30.0/24 --gateway 192.168.30.1 --network net-ext-01 \
subnet-ext-01

実行した様子です。
[root@os-master-01 ~]# docker-ostk openstack subnet create \
> --no-dhcp \
> --allocation-pool start=192.168.30.160,end=192.168.30.199 \
> --subnet-range 192.168.30.0/24 --gateway 192.168.30.1 --network net-ext-01 \
> subnet-ext-01
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| allocation_pools  | 192.168.30.160-192.168.30.199        |
| cidr              | 192.168.30.0/24                      |
| created_at        | 2018-12-22T04:56:43Z                 |
| description       |                                      |
| dns_nameservers   |                                      |
| enable_dhcp       | False                                |
| gateway_ip        | 192.168.30.1                         |
| host_routes       |                                      |
| id                | 06b4450e-a58c-4e7c-8576-8e13872008e7 |
| ip_version        | 4                                    |
| ipv6_address_mode | None                                 |
| ipv6_ra_mode      | None                                 |
| name              | subnet-ext-01                        |
| network_id        | e2c489f2-ac99-4d08-a0e4-e55f6f2a6ad9 |
| project_id        | f2908a8dc00042d5901eabade3482568     |
| revision_number   | 0                                    |
| segment_id        | None                                 |
| service_types     |                                      |
| subnetpool_id     | None                                 |
| tags              |                                      |
| updated_at        | 2018-12-22T04:56:43Z                 |
+-------------------+--------------------------------------+

ルータを作成します。
[root@os-master-01 ~]# docker-ostk openstack router create router-tenant-01
+-------------------------+--------------------------------------+
| Field                   | Value                                |
+-------------------------+--------------------------------------+
| admin_state_up          | UP                                   |
| availability_zone_hints |                                      |
| availability_zones      |                                      |
| created_at              | 2018-12-22T04:59:02Z                 |
| description             |                                      |
| distributed             | False                                |
| external_gateway_info   | None                                 |
| flavor_id               | None                                 |
| ha                      | False                                |
| id                      | dae073c4-58db-40ee-86c6-f620a89538a7 |
| name                    | router-tenant-01                     |
| project_id              | f2908a8dc00042d5901eabade3482568     |
| revision_number         | 1                                    |
| routes                  |                                      |
| status                  | ACTIVE                               |
| tags                    |                                      |
| updated_at              | 2018-12-22T04:59:02Z                 |
+-------------------------+--------------------------------------+

ルータに、外部ゲートウェイを設定します。
[root@os-master-01 ~]# docker-ostk openstack router set --external-gateway net-ext-01 router-tenant-01

ルータに、デフォルトルートを設定します。
[root@os-master-01 ~]# docker-ostk openstack router set --route destination=0.0.0.0/0,gateway=192.168.30.1 router-tenant-01

セキュリティ グループでのポート開放。
ラボ用途のため、利便性のためにデフォルトで ICMP と SSH を開放しておきます。

セキュリティ グループを作成します。
[root@os-master-01 ~]# docker-ostk openstack security group create sg-tenant-01
+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field           | Value                                                                                                                                                 |
+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+
| created_at      | 2018-12-22T05:06:19Z                                                                                                                                  |
| description     | sg-tenant-01                                                                                                                                          |
| id              | e5dab4d2-ca06-4e09-895f-cb39e95225b8                                                                                                                  |
| name            | sg-tenant-01                                                                                                                                          |
| project_id      | f2908a8dc00042d5901eabade3482568                                                                                                                      |
| revision_number | 1                                                                                                                                                     |
| rules           | created_at='2018-12-22T05:06:19Z', direction='egress', ethertype='IPv4', id='7000d9df-b1cf-4d42-a6c5-b9078b589459', updated_at='2018-12-22T05:06:19Z' |
|                 | created_at='2018-12-22T05:06:19Z', direction='egress', ethertype='IPv6', id='d22e7d7e-8fa2-4fc6-af82-557a0afc8d23', updated_at='2018-12-22T05:06:19Z' |
| updated_at      | 2018-12-22T05:06:19Z                                                                                                                                  |
+-----------------+-------------------------------------------------------------------------------------------------------------------------------------------------------+

IP アドレスなどを指定せず、すべての通信で開放してしまいます。
ICMP を開放します。(主に ping むけ)
[root@os-master-01 ~]# docker-ostk openstack security group rule create --protocol icmp sg-tenant-01
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| created_at        | 2018-12-22T05:08:08Z                 |
| description       |                                      |
| direction         | ingress                              |
| ether_type        | IPv4                                 |
| id                | b00fceea-378b-487d-a434-3fc06595b528 |
| name              | None                                 |
| port_range_max    | None                                 |
| port_range_min    | None                                 |
| project_id        | f2908a8dc00042d5901eabade3482568     |
| protocol          | icmp                                 |
| remote_group_id   | None                                 |
| remote_ip_prefix  | 0.0.0.0/0                            |
| revision_number   | 0                                    |
| security_group_id | e5dab4d2-ca06-4e09-895f-cb39e95225b8 |
| updated_at        | 2018-12-22T05:08:08Z                 |
+-------------------+--------------------------------------+

SSH を開放します。
[root@os-master-01 ~]# docker-ostk openstack security group rule create --protocol tcp --dst-port 22:22 sg-tenant-01
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| created_at        | 2018-12-22T05:10:08Z                 |
| description       |                                      |
| direction         | ingress                              |
| ether_type        | IPv4                                 |
| id                | f719c345-8161-4517-b321-c0d624f185bf |
| name              | None                                 |
| port_range_max    | 22                                   |
| port_range_min    | 22                                   |
| project_id        | f2908a8dc00042d5901eabade3482568     |
| protocol          | tcp                                  |
| remote_group_id   | None                                 |
| remote_ip_prefix  | 0.0.0.0/0                            |
| revision_number   | 0                                    |
| security_group_id | e5dab4d2-ca06-4e09-895f-cb39e95225b8 |
| updated_at        | 2018-12-22T05:10:08Z                 |
+-------------------+--------------------------------------+

テナントむけのネットワークを追加します。
[root@os-master-01 ~]# docker-ostk openstack network create --provider-network-type vxlan net-tenant-01
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | UP                                   |
| availability_zone_hints   |                                      |
| availability_zones        |                                      |
| created_at                | 2018-12-22T05:14:43Z                 |
| description               |                                      |
| dns_domain                | None                                 |
| id                        | 17cb1226-e645-4697-8712-671182e85105 |
| ipv4_address_scope        | None                                 |
| ipv6_address_scope        | None                                 |
| is_default                | False                                |
| is_vlan_transparent       | None                                 |
| mtu                       | 1450                                 |
| name                      | net-tenant-01                        |
| port_security_enabled     | True                                 |
| project_id                | f2908a8dc00042d5901eabade3482568     |
| provider:network_type     | vxlan                                |
| provider:physical_network | None                                 |
| provider:segmentation_id  | 134                                  |
| qos_policy_id             | None                                 |
| revision_number           | 1                                    |
| router:external           | Internal                             |
| segments                  | None                                 |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tags                      |                                      |
| updated_at                | 2018-12-22T05:14:43Z                 |
+---------------------------+--------------------------------------+

テナント ネットワークのサブネットを作成します。
[root@os-master-01 ~]# docker-ostk openstack subnet create --subnet-range 10.0.100.0/24 --network net-tenant-01 --gateway 10.0.100.1 subnet-tenant-01
+-------------------+--------------------------------------+
| Field             | Value                                |
+-------------------+--------------------------------------+
| allocation_pools  | 10.0.100.2-10.0.100.254              |
| cidr              | 10.0.100.0/24                        |
| created_at        | 2018-12-22T05:16:18Z                 |
| description       |                                      |
| dns_nameservers   |                                      |
| enable_dhcp       | True                                 |
| gateway_ip        | 10.0.100.1                           |
| host_routes       |                                      |
| id                | 12171b7c-98bc-49df-8c41-aad69ee1b63d |
| ip_version        | 4                                    |
| ipv6_address_mode | None                                 |
| ipv6_ra_mode      | None                                 |
| name              | subnet-tenant-01                     |
| network_id        | 17cb1226-e645-4697-8712-671182e85105 |
| project_id        | f2908a8dc00042d5901eabade3482568     |
| revision_number   | 0                                    |
| segment_id        | None                                 |
| service_types     |                                      |
| subnetpool_id     | None                                 |
| tags              |                                      |
| updated_at        | 2018-12-22T05:16:18Z                 |
+-------------------+--------------------------------------+

ルータに接続します。
[root@os-master-01 ~]# docker-ostk openstack router add subnet router-tenant-01 subnet-tenant-01

つづく。

0 件のコメント:

コメントを投稿