GNU/Linux >> Tutoriels Linux >  >> Ubuntu

OpenStack Liberty sur Ubuntu 14.04 – Créer des réseaux virtuels

Il s'agit de la troisième partie de la configuration de neutron (Réseau) sur Ubuntu 14.04, vous pouvez consulter l'article précédent sur Configurer Neutron #1 et Configurer Neutron #2, dans lequel nous avons installé et configuré des composants réseau sur le contrôleur et le nœud de calcul.

Ici, nous allons créer le réseau initial, celui-ci doit être créé avant de lancer une ou plusieurs instances de VM.

Le diagramme ci-dessus utilise des exemples de plages d'adresses IP. Vous devez les ajuster à votre environnement particulier.

Étant donné que nous utilisons des réseaux en libre-service , nous devons créer des réseaux virtuels publics et privés.

Création d'un réseau de fournisseurs publics :

L'instance utilise un réseau virtuel de fournisseur public qui se connecte à l'infrastructure réseau physique via un pontage/commutation. Ce réseau comprend un serveur DHCP qui fournit des ressources réseau (adresse IP, sous-réseau, passerelle et autres) aux instances.

Charger les informations d'identification sur le nœud du contrôleur.

# source admin-openrc.sh

créer le réseau.

#  neutron net-create public --shared --provider:physical_network public --provider:network_type flat

Created a new network:
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | 25109c9a-0d9c-498f-8a8a-9004219ee85a |
| mtu                       | 0                                    |
| name                      | public                               |
| port_security_enabled     | True                                 |
| provider:network_type     | flat                                 |
| provider:physical_network | public                               |
| provider:segmentation_id  |                                      |
| router:external           | False                                |
| shared                    | True                                 |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | fe858f6a43f84c26b994f0be74c928e6     |
+---------------------------+--------------------------------------+

Créez un sous-réseau sur le réseau public.

Par exemple, en utilisant 192.168.0.0/24 avec la plage d'adresses IP flottantes 192.168.0.200 à 192.168.0.250 avec la passerelle physique 192.168.0.1 avec 8.8.4.4 comme serveur DNS principal. Cette passerelle doit être associée au réseau physique

# neutron subnet-create public 192.168.0.0/24 --name public --allocation-pool start=192.168.0.200,end=192.168.0.250 --dns-nameserver 8.8.4.4 --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   | 8.8.4.4                                            |
| enable_dhcp       | True                                               |
| gateway_ip        | 192.168.0.1                                        |
| host_routes       |                                                    |
| id                | 3cee40a7-e241-4f9e-8033-cdc03fc58d76               |
| ip_version        | 4                                                  |
| ipv6_address_mode |                                                    |
| ipv6_ra_mode      |                                                    |
| name              | public                                             |
| network_id        | 25109c9a-0d9c-498f-8a8a-9004219ee85a               |
| subnetpool_id     |                                                    |
| tenant_id         | fe858f6a43f84c26b994f0be74c928e6                   |
+-------------------+----------------------------------------------------+

Création d'un réseau de projets privés :

Créez un réseau virtuel de projet privé pour connecter l'infrastructure réseau physique via la couche 3 (routage) et NAT. Ce réseau de projet privé comprend un serveur DHCP qui fournit des adresses IP aux instances. Une instance sur ce réseau peut avoir un accès à Internet. Cependant, l'accès à une instance sur ce réseau depuis Internet nécessite une adresse IP flottante.

Créez le réseau privé (privé).

# neutron net-create private
Created a new network:
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | 1b03eacd-e737-473b-8c0d-a16052f6505b |
| mtu                       | 0                                    |
| name                      | private                              |
| port_security_enabled     | True                                 |
| provider:network_type     | vxlan                                |
| provider:physical_network |                                      |
| provider:segmentation_id  | 65                                   |
| router:external           | False                                |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | fe858f6a43f84c26b994f0be74c928e6     |
+---------------------------+--------------------------------------+

Créez un sous-réseau sur le réseau interne. Par exemple, en utilisant le réseau 192.168.100.0/24 avec la passerelle virtuelle 192.168.0.1 avec 8.84.4. en tant que serveur DNS principal. Un serveur DHCP attribue à chaque instance une adresse IP de 192.168.100.2 à 192.168.100.254

#  neutron subnet-create private 192.168.100.0/24 --name private --dns-nameserver 8.8.4.4 --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   | 8.8.4.4                                              |
| enable_dhcp       | True                                                 |
| gateway_ip        | 192.168.100.1                                        |
| host_routes       |                                                      |
| id                | 5b986d39-7f60-4c14-ad68-9aa797fc2487                 |
| ip_version        | 4                                                    |
| ipv6_address_mode |                                                      |
| ipv6_ra_mode      |                                                      |
| name              | private                                              |
| network_id        | 1b03eacd-e737-473b-8c0d-a16052f6505b                 |
| subnetpool_id     |                                                      |
| tenant_id         | fe858f6a43f84c26b994f0be74c928e6                     |
+-------------------+------------------------------------------------------+

Créez le routeur virtuel.

Les réseaux de projets privés se connectent aux réseaux de fournisseurs publics à l'aide d'un routeur virtuel, il transmet le trafic réseau entre deux ou plusieurs réseaux virtuels (vers ou depuis privé/public). Dans notre cas, nous devons créer un routeur et y attacher des réseaux privés et publics.

# neutron router-create router
Created a new router:
+-----------------------+--------------------------------------+
| Field                 | Value                                |
+-----------------------+--------------------------------------+
| admin_state_up        | True                                 |
| external_gateway_info |                                      |
| id                    | e217d03c-ad34-4d64-bce8-0190e0eef6ca |
| name                  | router                               |
| routes                |                                      |
| status                | ACTIVE                               |
| tenant_id             | b558b39292b247b7a346678b80ed71e0     |
+-----------------------+--------------------------------------+

Ajoutez l'option router:external au réseau public du fournisseur.

# neutron net-update public --router:external
Updated network: public

Connectez le routeur au sous-réseau privé.

# neutron router-interface-add router private
Added interface 74748304-cbfb-4c53-bc6e-d12271bbcdd1 to router router.

Connectez le routeur au réseau public en le définissant comme passerelle.

# neutron router-gateway-set router public
Set gateway for router router

Vérifier :

Répertoriez les espaces de noms de réseau, la sortie doit avoir un qrouter et deux qdhcp espaces de noms.

# ip netns
qrouter-e217d03c-ad34-4d64-bce8-0190e0eef6ca
qdhcp-1b03eacd-e737-473b-8c0d-a16052f6505b
qdhcp-25109c9a-0d9c-498f-8a8a-9004219ee85a

Vous pouvez vérifier la connectivité en envoyant un ping à 192.168.0.200 à partir du réseau physique externe. En effet, nous avons utilisé le sous-réseau 192.168.0.0/24, les plages d'adresses IP flottantes de 192.168.0.200 à 250, la passerelle du routeur locataire doit occuper l'adresse IP la plus basse de la plage d'adresses IP flottantes, c'est-à-dire 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=2ms 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 = 1ms, Maximum = 2ms, Average = 1ms

C'est tout !!!, vous avez créé avec succès les réseaux initiaux pour le lancement d'une instance.

Référence :Guide OpenStack.


Ubuntu
  1. OpenStack Liberty sur Ubuntu 14.04 LTS - Configurer Nova

  2. OpenStack Kilo sur Ubuntu 14.04.2 – Configurer KeyStone #2

  3. Installez OpenStack Kilo sur Ubuntu 14.04.2

  4. Une infrastructure ouverte haute performance arrive sur Ubuntu

  5. Ubuntu 18.04 :Comment créer une interface réseau Dumthe persistante ?

Comment créer des environnements virtuels Python sur Ubuntu 18.04

Créer une machine virtuelle à l'aide de VMware Workstation 11 sur Ubuntu 14.10

Comment créer un réseau virtuel dans Azure Cloud

Comment créer une machine virtuelle Ubuntu dans Azure Cloud

Comment créer un environnement virtuel Python 3 sur Ubuntu 20.04

2 façons de créer une connexion PPPoE dans Ubuntu