Concevez votre architecture
Avant de commencer ce chapitre dédié à la mise en réseau de plusieurs VMs, vous devez comprendre la configuration réseau par défaut de votre serveur Proxmox VE.
Souvenez-vous : nous avons installé Proxmox VE sur une VM Virtualbox à laquelle nous avions ajouté 2 cartes réseaux : une carte en mode NAT (reliée à internet donc) et une carte en réseau privé hôte (reliée à l’hôte). Du point de vue réseau voilà donc l’architecture Virtualbox a créé avec ces 2 cartes réseaux :
Les adresses IP que vous voyez sur le schéma sont celles attribuées par défaut par Virtualbox lorsque vous choisissez les réseaux NAT et Réseau privé hôte. Il arrive qu’elles soient un peu différentes. Pour les vérifier, n’hésitez pas à faire sur votre hôte et sur votre serveur Proxmox les commandes ipconfig
(Windows) ou ip address
(Linux).
D’après le schéma, notre serveur Proxmox est donc relié à Internet, sauf que si vous tentez de faire un ping vers google.fr, il y a des chances que ça ne fonctionne pas. Si vous y arrivez, c’est sans doute parce que vous avez utilisé la commande (ip route del default && dhclient
) que je donnais dans le chapitre précédent. Sauf que cette commande est provisoire, donc votre configuration réseau sera réinitialisée après un redémarrage. Voilà donc comment faire pour configurer les interfaces réseau de votre serveur Proxmox VE de manière persistante.
À l’installation, vous l’avez peut-être oublié mais il nous était demandé de renseigner une adresse de passerelle et nous avions laissé la valeur par défaut. Vous pouvez la vérifier avec la commandeip route
:
Ici, l’interface enp0s3 (qui est celle reliée à internet) n’a aucune IP et la passerelle par défaut (sur l’avant-dernière ligne) est 192.168.100.1, or elle ne correspond à aucune adresse existante d’après notre schéma réseau. C’est donc ces paramètres qu’il faut changer.
Pour rappel, la passerelle par défaut est dans la majorité des cas l’adresse IP du routeur relié à internet. Et comme vous avez lu le cours sur Concevez votre réseau TCP/IP, vous savez donc que dans notre architecture, la passerelle par défaut du serveur Proxmox VE doit être 10.0.2.2, d'après le schéma ci-dessus.
Nous allons donc corriger cela.
Rendez-vous sur votre serveur Proxmox VE pour modifier le fichier de configuration réseau avec la commande nano /etc/network/interfaces
et modifiez-le pour qu’il ressemble à ça :
``` (bash)
auto lo
iface lo inet loopback
iface enp0s8 inet manual
auto vmbr0
iface vmbr0 inet static
address 192.168.56.103/24
bridge-ports enp0s8
bridge-stp off
bridge-fd 0
auto enp0s3
iface enp0s3 inet dhcp
source /etc/network/interfaces.d/*
```
Concrètement il faut supprimer la ligne 'gateway” de l’interface vmbr0 et basculer l’interface enp0s3 en “dhcp” à la place “manual” et ajouter la ligne “auto enp0s3”. De cette manière, enp0s3 récupérera automatiquement une adresse IP (souvent 10.0.2.15) et une passerelle (10.0.2.2) fournie par Virtualbox.
Vous pourrez ensuite redémarrer la machine et constater que cette fois la configuration réseau est conforme au schéma :
Dernière mise au point : si vous regardez le nombre d’interfaces réseaux listées juste au-dessus ; vous n’en avez pas 2 mais 3 :
enp0s3 ;
enp0s8 ;
vmbr0.
Les 2 premières correspondent bien aux cartes réseaux présentes sur votre serveur, mais d’où sort la 3ème nommée vmbr0 ?
Cette interface virtuelle a été créée lors de l’installation de Proxmox VE et reliée directement à la carte réseau enp0s8 (qui est l’interface de management choisie lors de l’installation). Ce type d’interface virtuelle reliée à une interface physique s’appelle un “bridge” d’où le nom “vmbr” pour (virtual machines bridge). C’est sur ce bridge que seront créées par défaut, toutes les VMs générées par Proxmox VE.
Et comme un schéma est toujours plus clair pour comprendre le réseau ;) :
Voilà, vous êtes maintenant armé pour commencer à mettre vos VMs en réseau.
Vérifiez la configuration de vos VMs
Si vous avez suivi le chapitre précédemment, vous avez déjà créé au moins 2 VMs sur votre Proxmox VE. Comme je vous l’ai dit, par défaut chacune de ces VMs devrait donc être reliée à l’interface et au réseau vmbr0. Vous pouvez vérifier cela en sélectionnant une VM, dans l’onglet “Matériel” :
Si vous regardez la ligne “carte réseau” vous devriez voir le paramètre “bridge=vmbr0” indiquant que la VM a bien une carte réseau connectée au bridge vmbr0 de votre hyperviseur.
Faites de même pour la 2ème VM.
Vos 2 VMs sont directement “physiquement” reliées au même réseau. Dans le monde de la virtualisation c’est toujours un peu ambiguë d’utiliser le terme “physique” car tout est virtuel, mais ne jouons pas sur les mots, vos VMs sont désormais reliées par un câble virtuel.
Testez la communication
Il ne reste plus qu’à vous assurer que leurs adresses IPs sont dans le même réseau, puis de les faire communiquer.
Si votre architecture est la même que la mienne, à savoir un serveur Proxmox sous Virtualbox avec une carte en réseau privé hôte, les adresses IPs seront automatiquement attribuées à vos VMs dans le réseau 192.168.56.0/24.
Votre architecture ressemblera alors à ça :
Sans grande surprise, le ping est alors un succès :
Par contre pour l’instant vos VMs n’ont pas accès à Internet. Il va falloir régler ça si vous souhaitez installer des applications (Apache, Postfix, Wordpress ou autres services d’entreprise).
Pour cela il suffit :
de créer un nouveau bridge lié à la carte réseau reliée à Internet (enp0s3 dans mon cas) ;
d’ajouter sur la VM une carte réseau utilisant ce nouveau bridge
Pour créer le nouveau bridge sur votre serveur Proxmox VE, sélectionnez votre serveur (pve) à gauche puis allez dans le menu “Système” puis “Réseau” et cliquez sur “Créer”. Remplissez les champs en fonction de votre architecture réseau. Pour ma part je vais simplement créer un bridge ayant l’IP 10.0.2.16/24 qui sera relié à l’interface physique enp0s8 (l’interface NAT de mon Proxmox VE) avec comme passerelle 10.0.2.2.
Après validation vous devez redémarrer votre serveur Proxmox VE pour que la nouvelle configuration réseau soit prise en compte. Cela poserait évidemment problème dans le cas où des dizaines de VMs étaient hébergées sur votre serveur. Les modifications réseau sur votre serveur doivent donc se faire dès sa création pour éviter les interruptions de service en entreprise. Le maître mot reste donc : l’ anticipation.
Vous pouvez ensuite reconfigurer la VM qui devra avoir accès à Internet en lui ajoutant une nouvelle carte réseau associée à ce nouveau bridge vmbr1. Cette option se trouve dans Le menu “Matériel” de votre VM en cliquant sur “Ajouter” puis “Carte réseau” :
Lors de la création de la carte réseau, l’option Pare-feu est sélectionnée, ce qui permet d’associer la nouvelle carte réseau aux règles de pare-feu définies dans Proxmox. Par défaut il n’y a aucune règle définie dans le pare-feu, le résultat est donc le même que vous cochiez ou décochiez la case.
Vous pouvez maintenant redémarrer votre VM pour que la nouvelle carte réseau soit prise en compte et tester un ping vers Internet.
Et comme je sais que vous aimez les schémas, voilà à quoi ressemble votre architecture après ces modifications :
Vous l’avez donc compris : une VM sous Proxmox ne peut pas être directement connectée à une des interfaces physiques de votre serveur Proxmox, elle est forcément rattachée à une interface bridge. C’est donc à vous de créer ces bridges pour personnaliser la connectivité réseau de vos VMs.
Libre à vous maintenant de transformer ces VMs pour qu’elles deviennent, une base de données, un serveur mail, un ERP ou ce que vous voulez !
Mais que se passerait-il si une fois vos serveurs fonctionnels, votre Hyperviseur Proxmox VE venait à tomber en panne ?
Et bien, vous vous en doutez, toutes les VMs qu’il héberge tomberaient avec lui. Et ça c’est un énorme problème et aucune entreprise ne serait prête à prendre ce risque.
Dans le prochain chapitre, nous allons voir pourquoi malgré tout, les architectures virtualisées sont devenues la norme en entreprise, grâce à une technique incroyable pour contourner le problème.
À vous de jouer !
Votre projet précédent chez TechInnovate a été très apprécié . Vous avez brillamment mis en place un serveur LAMP pour le site vitrine de l'entreprise. Mais pour permettre de meilleures performances et une meilleure scalabilité, votre tuteur vous suggère de déployer les services LAMP sur une architecture n-tiers.
Votre nouvelle mission :
Vous allez devoir faire évoluer votre ancien serveur LAMP en le séparant en 2 serveurs distincts :
Une première VM faisant office de serveur web Apache et PHP ;
Une seconde VM serveur de base de données MySQL.
Pour des raisons de sécurité, seul le serveur Apache devra avoir accès à Internet.
A vous de créer cette architecture réseau correcte sous Proxmox VE et d’installer les composants sur les 2 machines. Vous définirez aussi des adresses IP fixes pour vos serveurs.
Votre tuteur de stage vous fournit ce schéma pour vous aiguiller :
Pas besoin de faire la configuration de Apache, PHP et MySQL, c’est un de vos collègues qui prendra le relais pour finir le travail et adapter la configuration aux contraintes de l’entreprise.
Une fois que vous avez fini, vous avez ce corrigé à disposition.
En résumé
Les interfaces bridge (vmbr) de Proxmox VE connectent les VMs aux réseaux physiques ou virtuels et doivent être configurées selon vos besoins.
La configuration réseau par défaut peut nécessiter des ajustements (passerelle, DHCP) pour assurer une connectivité correcte à Internet et au réseau local.
Chaque VM est reliée à un bridge par défaut (vmbr0), mais vous pouvez créer et associer d’autres bridges pour personnaliser leur accès réseau.
Une VM doit toujours passer par un bridge pour être connectée à un réseau, d'où l'importance d'anticiper la configuration réseau pour éviter des interruptions en entreprise.
Maintenant que vos machines sont connectées, assurons leur disponibilité continue en configurant la haute disponibilité avec Proxmox VE !