Сеть провайдера

Перед запуском инстанса вы должны создать необходимые виртуальные сети. В первом варианте сети инстанс использует сеть провайдера (внешняя) которая подключена к физической сети через уровень 2 (layer-2, bridging/switching). Эта сеть включает DHCP сервер который предоставляет IP адреса инстансам.

admin или другой привилегированный пользователь должен создать эту сеть потому что она подключается прямо к физической сетевой инфраструктуре.

Примечание

Следующие инструкции и схемы используют примерные диапазоны IP адресов. Вы должны изменить их для вашего конкретного окружения.

Networking Option 1: Provider networks - Overview

Вариант сети 1: Сеть провайдера - Обзор

Networking Option 1: Provider networks - Connectivity

Вариант сети 1: Сеть провайдера - Подключение

Создайте сеть провайдера

  1. На управляющем узле, подставьте учетную запись admin для получения доступа к инструкциям командной строки, доступным только администраторам:

    $ . admin-openrc
    
  2. Создайте сеть:

    $ openstack network create  --share --external \
      --provider-physical-network provider \
      --provider-network-type flat provider
    
    Created a new network:
    
    +---------------------------+--------------------------------------+
    | Field                     | Value                                |
    +---------------------------+--------------------------------------+
    | admin_state_up            | UP                                   |
    | availability_zone_hints   |                                      |
    | availability_zones        |                                      |
    | created_at                | 2017-03-14T14:37:39Z                 |
    | description               |                                      |
    | dns_domain                | None                                 |
    | id                        | 54adb94a-4dce-437f-a33b-e7e2e7648173 |
    | ipv4_address_scope        | None                                 |
    | ipv6_address_scope        | None                                 |
    | is_default                | None                                 |
    | mtu                       | 1500                                 |
    | name                      | provider                             |
    | port_security_enabled     | True                                 |
    | project_id                | 4c7f48f1da5b494faaa66713686a7707     |
    | provider:network_type     | flat                                 |
    | provider:physical_network | provider                             |
    | provider:segmentation_id  | None                                 |
    | qos_policy_id             | None                                 |
    | revision_number           | 3                                    |
    | router:external           | External                             |
    | segments                  | None                                 |
    | shared                    | True                                 |
    | status                    | ACTIVE                               |
    | subnets                   |                                      |
    | updated_at                | 2017-03-14T14:37:39Z                 |
    +---------------------------+--------------------------------------+
    

    Флаг --share разрешает всем проектам использовать виртуальную сеть

    The --external option defines the virtual network to be external. If you wish to create an internal network, you can use --internal instead. Default value is internal.

    The --provider-physical-network provider and --provider-network-type flat options connect the flat virtual network to the flat (native/untagged) physical network on the br0 bridge, which can have a port which is connected to eth0 on the host using information from the following files:

    ml2_conf.ini:

    [ml2_type_flat]
    flat_networks = provider
    

    ml2_conf.ini:

    [ovs]
    bridge_mappings = provider:br0
    
  3. Создайте подсеть в сети:

    $ openstack subnet create --network provider \
      --allocation-pool start=START_IP_ADDRESS,end=END_IP_ADDRESS \
      --dns-nameserver DNS_RESOLVER --gateway PROVIDER_NETWORK_GATEWAY \
      --subnet-range PROVIDER_NETWORK_CIDR provider
    

    Замените PROVIDER_NETWORK_CIDR подсетью в провайдерской физической сети нотации CIDR.

    Замените START_IP_ADDRESS и END_IP_ADDRESS первым и последним IP адресами из диапазона в подсети, которую вы хотите выделить для инстансов. Этот диапазон не должен включать существующие активные адреса.

    Замените DNS_RESOLVER IP адресом DNS распознавателя. В большинстве случаев, вы можете использовать адрес из файла /etc/resolv.conf на хосте.

    Замените PROVIDER_NETWORK_GATEWAY IP адресом шлюза провайдерской сети, обычно это «.1».

    Пример

    Провайдерская сеть использует 203.0.113.0/24 со шлюзом 203.0.113.1. DHCP сервер назначает каждому инстансы адрес из диапазона 203.0.113.101 - 203.0.113.250. Все инстансы используют 8.8.4.4 в качестве DNS распознавателя.

    $ openstack subnet create --network provider \
      --allocation-pool start=203.0.113.101,end=203.0.113.250 \
      --dns-nameserver 8.8.4.4 --gateway 203.0.113.1 \
      --subnet-range 203.0.113.0/24 provider
    
    Created a new subnet:
    +-------------------+--------------------------------------+
    | Field             | Value                                |
    +-------------------+--------------------------------------+
    | allocation_pools  | 203.0.113.101-203.0.113.250          |
    | cidr              | 203.0.113.0/24                       |
    | created_at        | 2017-03-29T05:48:29Z                 |
    | description       |                                      |
    | dns_nameservers   | 8.8.4.4                              |
    | enable_dhcp       | True                                 |
    | gateway_ip        | 203.0.113.1                          |
    | host_routes       |                                      |
    | id                | e84b4972-c7fc-4ce9-9742-fdc845196ac5 |
    | ip_version        | 4                                    |
    | ipv6_address_mode | None                                 |
    | ipv6_ra_mode      | None                                 |
    | name              | provider                             |
    | network_id        | 1f816a46-7c3f-4ccf-8bf3-fe0807ddff8d |
    | project_id        | 496efd248b0c46d3b80de60a309177b5     |
    | revision_number   | 2                                    |
    | segment_id        | None                                 |
    | service_types     |                                      |
    | subnetpool_id     | None                                 |
    | updated_at        | 2017-03-29T05:48:29Z                 |
    +-------------------+--------------------------------------+
    

Return to Launch an instance - Create virtual networks.