Réseau Option 1 : réseaux fournisseurs

Réseau Option 1 : réseaux fournisseurs

Installer et configurer les composants Réseau sur le controller.

Installer les composants

# yum install openstack-neutron openstack-neutron-ml2 \
  openstack-neutron-linuxbridge ebtables

Configurer le composant serveur

La configuration du composant serveur du service Réseau inclut la base de données, le mécanisme d’authentification, la file de messages, les notifications de changement de topologie et le plugin.

Note

Les fichiers de configuration par défaut diffèrent d’une distribution à l’autre. Vous pouvez être amené à ajouter ces sections et options plutôt que de modifier des sections et options existantes. De plus, une ellipse (...) dans les extraits de configuration indique d’éventuelles options de configuration par défaut que vous devez conserver.

  • Editer le fichier /etc/neutron/neutron.conf et effectuer les actions suivantes :

    • Dans la section [database], configurer l’accès à la base de données :

      [database]
      ...
      connection = mysql+pymysql://neutron:NEUTRON_DBPASS@controller/neutron
      

      Remplacer NEUTRON_DBPASS par le mot de passe choisi pour la base de données.

    • Dans la section [DEFAULT], activer le plugin Modular Layer 2 (ML2) et désactiver les plugins additionnels :

      [DEFAULT]
      ...
      core_plugin = ml2
      service_plugins =
      
    • Dans les sections [DEFAULT] et [oslo_messaging_rabbit], configurer l’accès à la file de message RabbitMQ :

      [DEFAULT]
      ...
      rpc_backend = rabbit
      
      [oslo_messaging_rabbit]
      ...
      rabbit_host = controller
      rabbit_userid = openstack
      rabbit_password = RABBIT_PASS
      

      Remplacer RABBIT_PASS par le mot de passe choisi pour le compte openstack dans RabbitMQ.

    • Dans les sections [DEFAULT] et [keystone_authtoken], configurer l’accès au service d’Identité :

      [DEFAULT]
      ...
      auth_strategy = keystone
      
      [keystone_authtoken]
      ...
      auth_uri = http://controller:5000
      auth_url = http://controller:35357
      memcached_servers = controller:11211
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      project_name = service
      username = neutron
      password = NEUTRON_PASS
      

      Remplacer NEUTRON_PASS par le mot de passe choisi pour l’utilisateur neutron dans le service d’Identité.

      Note

      Commenter ou supprimer toute autre option dans la section [keystone_authtoken].

    • Dans les sections [DEFAULT] et [nova], configurer le service Réseau pour notifier le Compute des changements de topologie réseau :

      [DEFAULT]
      ...
      notify_nova_on_port_status_changes = True
      notify_nova_on_port_data_changes = True
      
      [nova]
      ...
      auth_url = http://controller:35357
      auth_type = password
      project_domain_name = default
      user_domain_name = default
      region_name = RegionOne
      project_name = service
      username = nova
      password = NOVA_PASS
      

      Remplacer NOVA_PASS par le mot de passe choisi pour l’utilisateur nova dans le service d’Identité.

    • Dans la section [oslo_concurrency], configurer le chemin du verrou :

      [oslo_concurrency]
      ...
      lock_path = /var/lib/neutron/tmp
      

Configurer le plugin Modular Layer 2 (ML2)

Le plugin ML2 utilise le mécanisme Linux bridge pour construire l’infrastructure réseau virtuel layer-2 (bridging and switching) pour les instances.

  • Editer le fichier /etc/neutron/plugins/ml2/ml2_conf.ini et effectuer les actions suivantes :

    • Dans la section [ml2], activer les réseaux flat et VLAN :

      [ml2]
      ...
      type_drivers = flat,vlan
      
    • Dans la section [ml2], désactiver les réseaux libre-service :

      [ml2]
      ...
      tenant_network_types =
      
    • Dans la section [ml2], activer le mécanisme Linux bridge :

      [ml2]
      ...
      mechanism_drivers = linuxbridge
      

      Avertissement

      Après avoir configuré le plugin ML2, la suppression de valeurs dans l’option type_drivers peut conduire à une incohérence de la base de données.

    • Dans la section [ml2], activer le driver d’extension de sécurité des ports :

      [ml2]
      ...
      extension_drivers = port_security
      
    • Dans la section [ml2_type_flat], configurer le réseau virtuel fournisseur comme étant un réseau à plat :

      [ml2_type_flat]
      ...
      flat_networks = provider
      
    • Dans la section [securitygroup], activer ipset pour augmenter l’efficacité des règles des groupes de sécurité :

      [securitygroup]
      ...
      enable_ipset = True
      

Configurer l’agent Linux bridge

L’agent Linux bridge construit l’infrastructure de réseau virtuel layer-2 (bridging and switching) pour les instances et gère les groupes de sécurité.

  • Editer le fichier /etc/neutron/plugins/ml2/linuxbridge_agent.ini et effectuer les actions suivantes :

    • Dans la section [linux_bridge], faire correspondre le réseau virtuel fournisseur à l’interface réseau physique fournisseur :

      [linux_bridge]
      physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME
      

      Remplacer PROVIDER_INTERFACE_NAME par le nom de l’interface sur le réseau physique fournisseur sous-jacent. Voir :ref:`environment-networking`pour plus d’informations.

    • Dans la section [vxlan], désactiver les réseaux de recouvrement VXLAN :

      [vxlan]
      enable_vxlan = False
      
    • Dans la section [securitygroup], activer les groupes de sécurité et configurer le driver firewall Linux bridge iptables :

      [securitygroup]
      ...
      enable_security_group = True
      firewall_driver = neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
      

Configurer l’agent DHCP

L’agent DHCP fournit les services DHCP aux réseaux virtuels.

  • Editer le fichier /etc/neutron/dhcp_agent.ini et effectuer les actions suivantes :

    • Dans la section [DEFAULT], configurer le driver d’interface Linux bridge, le driver DHCP Dnsmasq et activer les metadata isolées pour que les instances sur les réseaux fournisseurs puissent accéder aux metadata à travers le réseau :

      [DEFAULT]
      ...
      interface_driver = neutron.agent.linux.interface.BridgeInterfaceDriver
      dhcp_driver = neutron.agent.linux.dhcp.Dnsmasq
      enable_isolated_metadata = True
      

Retourner à Configuration du Réseau sur le contrôleur.

Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.