L’équipe de développement de Proxmox a intégré l’approche SDN Software-Defined Networking dans sa solution de virtualisation. C’est-à-dire que toute la couche de gestion réseaux étendu est intégrée dans l’hyperviseur. Proxmox avait déjà posé la première brique réseau en intégrant OpenvSwitch vers 2015.
OpenvSwitch est un commutateur virtuel open source (Apache License 2.0). Il permet aux administrateurs réseaux de gérer de façon précise le trafic réseau des machines virtuelles dans un hyperviseur, mais aussi de définir des politiques avancées de gestion des ressources du réseau virtuel via un switch virtuel (par fichier de configuration ou en ligne de commande ovs-vsctl
). Mais il n’y a pas de gestion centralisée.
Le SDN est un acronyme signifiant Software-Defined Networking. C’est un ensemble de technologies ayant comme points communs :
- un contrôle centralisé des ressources réseau ;
- une orchestration centralisée ;
- une virtualisation des ressources physiques.
Le SDN vise une plus grande agilité dans le déploiement et le fonctionnement des infrastructures réseau en s’inspirant des technologies du Cloud Computing (et d’Opérateur Réseaux). OpenvSwitch reste au niveau de l’hyperviseur, le SDN embrasse l’ensemble du datacenter et connecte d’autres infrastructures externes.
Des technologies opérateurs sont mises en places comme :
- Q-in-Q,
- Virtual Extensible LAN (VXLAN),
- Network Virtualization using GRE (NVGRE),
- BGP EVPN (BGP MPLS-Based Ethernet VPN)
La solution de virtualisation de Proxmox continue ses innovations ! Il y a quelque temps avec la solution de sauvegarde complémentaire à PVE. Maintenant l’approche réseaux, il ne reste plus grand-chose pour que cette solution soit définitivement adoptée par les entreprises. Tout en sachant que Proxmox est déjà largement utilisé par les entreprises du « cloud » et du numérique.
Un support « entreprise » est disponible avec différents programmes de garanties COMMUNITY au PREMIUM.
À cette heure, la solution SDN dans Proxmox est en version expérimentale mais les fonctionnalités sont présentes et opérationnelles. Il est possible de tester et de réaliser des maquettes.
Le SDN de Proxmox permet la séparation et le contrôle fin des réseaux virtuels, en utilisant des configurations flexibles contrôlées par logiciel.
La séparation est constituée de zones, une zone étant sa propre zone de réseau séparée virtuelle. Un VNet est un type de réseau virtuel connecté à une zone. Selon le type ou le plugin utilisé par la zone, il peut se comporter différemment et offrir des caractéristiques, des avantages ou des contraintes différents. Normalement, un VNet se présente comme un bridge Linux avec un tag VLAN ou VXLAN, mais certains peuvent également utiliser le routage de couche 3 pour le contrôle. Les VNets sont déployés localement sur chaque nœud/PVE/hyperviseur, après que la configuration ait été effectuée à partir de l’interface d’administration SDN du DATACENTER (vue Proxmox) du cluster.
La suite des explications en anglais ici.
Il y a une vidéo mais c’est en allemand : Tutoriel en allemand avec des schémas et des lignes de commandes…
Qui veut se dévouer à faire un tutoriel en français ?
Pour aller plus loin : Wiki de Proxmox sur son SDN
La solution Proxmox fonctionne bien sur n’importe quelle machine (PC récent ou serveur).
Aller plus loin
- Lien vers le SDN par Proxmox (164 clics)
- Lien vers OpenvSwitch par Proxmox (74 clics)
- Lien vers l'article OpenvSwitch sur LinuxFr (137 clics)
- Définition du SDN par Wikipedia (52 clics)
# Merci !
Posté par aderumier . Évalué à 5.
Bonjour,
je suis l'auteur principal du module sdn, merci pour ce petit post.
N'hésitez pas à le tester, et à faire des retour sur le forum proxmox, je repond régulièrement aux questions.
Dans la prochaine version à venir, il y a des grosses nouveautés:
gestion de plusieurs subnets par vnet, gestion ipam (interne, netbox, phpipam) + dns (powerdns)+ attribution automatique des ips pour les CT et VM.
Egalement, pour le plugin evpn, il y aura le support d' ebgp. (actuellement c'est ibgp only).
N'hésitez pas à tester et à me faire un retour si vous avez besoin de features ou si vous trouvez des bugs ----> aderumier@odiso.com
Et si vous codez en perl, n'hésitez pas à contribuer ! _^
Alexandre
[^] # Re: Merci !
Posté par l0optr . Évalué à 3. Dernière modification le 31 janvier 2021 à 22:50.
Merci à toi pour ce boulot :) Perso je suis impatient de voir le support de phpIPAM. Comment contribuer / aider ? Peux-tu partager un lien vers le code source de ce module ?
On parle bien de ceci : https://git.proxmox.com/?p=pve-network.git;a=tree;f=PVE/Network/SDN;hb=HEAD ?
J.
[^] # Re: Merci !
Posté par aderumier . Évalué à 2.
https://git.proxmox.com/?p=pve-network.git;a=tree;f=PVE/Network/SDN;hb=HEAD ?
c'est bien ce repo là ,malheuresement mes derniers patches n'ont pas encore été commit.
Proxmox a un workflow où on envoit les patches series via la mailing-list.
https://pve.proxmox.com/wiki/Developer_Documentation
j'ai d'autres patches sur d'autres modules également qui n'ont pas encore été commit.
Je vais regarder pour mettre mes derniers patch sur github + releases des .deb pour tester, ca sera plus simple.
Si jamais tu es un utilisateur de phpipam, je veux bien un retour. (le module fonctionne bien pour ajouter/modifier,supprimer,trouver une ip dispo, mais je n'utilise pas phpipam personnelement, il y a peut être des fonctionnalités plus avancées qui manquent)
[^] # Re: Merci !
Posté par l0optr . Évalué à 1.
Pourquoi pas. je sais pas si je vais patché mon install labo… Si tu as des packages ou un lien vers le pach en question c'est surement + simple :)
# Toujours pas de SDN avec les derniers Patchs...
Posté par moula . Évalué à 0.
Bonjour Alexandre,
Thomas n'a pas le temps pour appliquer tes derniers pacths, il est parti sur corosync et pbs :-)
Je suis toujours avec mes testes de la dernière fois et le fameux bug.
Il faut que tu trouves un moyen en dehors du "pvetest" pour qu'on puisse tester tes derniers patchs.
Merci pour ce travail.
Moula.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.