Les routed provider networks dans OpenStack Neutron

Les routed provider networks dans OpenStack Neutron

Une segmentation réseau efficace pour les entreprises

Les réseaux d’entreprise d’aujourd’hui sont souvent complexes et exigent. Le composant Neutron dans OpenStack repond particulierement bien a ces contraintes via la fonctionalite des “Routed Provider Networks”. Basé sur le concept de “Provider Network”, cette fonctionnalité permet d’ajouter un niveau supplémentaire de segmentation au réseau. Non seulement cela offre une manière plus granulaire de contrôler le trafic, mais cela limite également la portée du domaine de diffusion (broadcast), ce qui peut être particulièrement bénéfique dans des environnements réseau à grande échelle.

De provider network a routed provider network

Avant d’explorer les details des routed provider networks dans Neutron, il est crucial de comprendre le concept de provider network. Dans le contexte d’OpenStack Neutron, un Provider Network est un réseau virtuel mappé directement sur un réseau physique existant (appelé “fabric”) dans le data center. Cette configuration permet à OpenStack de déployer des instances virtuelles capables de communiquer avec des ressources en dehors de l’écosystème OpenStack.

Provider Network

Généralement, la “fabric” ou le réseau physique, utilise une segmentation via un VLAN dédié. Neutron supporte également des configurations flat, sans VLAN.

Les provider networks présentent plusieurs avantages, surtout en termes de simplicité et d’efficacité. Cependant, ils ne sont pas sans inconvénients, en particulier lorsqu’il s’agit de gérer des environnements réseau complexes. Un de ces inconvénients est la portée étendue du domaine de broadcast. Dans un provider network, il est courant que tous les nœuds fassent partie du même domaine de broadcast, ce qui peut engendrer des problèmes de performances et compliquer la mise en place d’une segmentation entre les hôtes.

Un domaine de broadcast limité et une segmentation logique et physique

Les routed provider networks de Neutron peuvent être associés à des availability zones par le biais d’aggrégats. C’est à ce stade que la notion de segment devient pertinente.

Segmentation logique et physique

Ainsi les routed provider networks offrent une segmentation du réseau à la fois sur les plans logique et physique. Lorsque cette segmentation est associée à des availability zones, elle permet de créer des domaines d’erreur distincts. Par exemple, il est possible de configurer un Routed Provider Network pour qu’il soit limité à une Availability Zone spécifique, ce qui réduit l’impact d’une défaillance survenue dans une autre zone.

Under the hood

Neutron s’intègre étroitement avec les aggrégats de Nova pour gérer les segments de réseau associés aux routed provider networks. Ainsi, pour chaque segment créé, Neutron génère un aggrégat Nova correspondant en utilisant l’UUID du segment. Cela permet de maintenir une relation claire entre le segment de réseau et les hôtes qui y sont attachés.

Lorsqu’un hôte est attaché à un réseau, l’aggrégat Nova associé à ce segment est mis à jour pour inclure l’hôte en question. Il est important de noter que l’association de l’hôte au segment est réalisée via l’utilisation de la physnet configurée dans l’agent Neutron de l’hôte.

Une limitiation qui n’en est plus.

Dans la première implémentation des routed provider networks dans Neutron, il était uniquement possible d’attacher un seul segment par réseau, ce qui équivaut à un seul sous-réseau par réseau. Cela posait problème pour ceux qui souhaitaient avoir un domaine de broadcast réduit pour leur réseau; la seule solution était donc de créer plusieurs réseaux distincts.

Neutron Multi-Segments

Grâce à une contribution récente proposée par la Société Générale dans la release Zed, cette limitation a été levée. Il est maintenant possible de configurer un seul réseau avec plusieurs sous-réseaux, chacun étant attaché à un segment différent. On parle alors de réseaux “Multi-Segments”.

Sources: