Modifications entre les versions 15 et 16
Version 15 à la date du 2008-09-25 11:28:53
Taille: 3296
Éditeur: ThomasNoël
Commentaire: JC, tu pourras remettre ta méthode en dessous mais je préfère n'indiquer que celle du bridge
Version 16 à la date du 2008-09-26 20:14:29
Taille: 3733
Éditeur: ThomasNoël
Commentaire: enjoliasisation
Texte supprimé. Texte ajouté.
Ligne 8: Ligne 8:
Installer le package {{{bridge-utils}}} = sur la machine hôte =
Ligne 10: Ligne 10:
Configurer un pont Ethernet sur la machine hôte. Si l'interface choisie est {{{eth1}}}, par exemple, mettre pour cela dans le {{{/etc/network/interfaces}}} quelque chose du genre :  * Installer le package {{{bridge-utils}}}
Ligne 12: Ligne 12:
{{{  * Configurer un '''pont ethernet''' sur la machine hôte. Si l'interface choisie est {{{eth1}}}, par exemple, mettre pour cela dans le {{{/etc/network/interfaces}}} quelque chose du genre :

  {{{
# extrait de /etc/network/interfaces sur la machine hôte
Ligne 20: Ligne 23:
Si la machine dispose de plusieurs interfaces, je préfère ne pas mettre d'ip sur l'interface associée au pont, et de configurer une autre interface pour accéder à la machine hôte. Dans ce cas, ajouter un {{{net.ipv4.conf.eth0.forwarding=0}}} dans le /etc/sysctl.conf pour l'interface (ici, eth0) qui servira uniquement à administrer la machine. Cette interface peut même être branchée sur un réseau différent, ultra-protégé, pour limiter les accès à l'hôte, qu'il est vital de bien protéger : un accés illégitime à l'hôte donnerait accès à tous les serveurs hébergés dessus.
Ligne 22: Ligne 24:
Le fichier {{{/etc/vz/vznet.conf}}} configure le comportement réseau lors du démarrage de nouvelle machines. Y ajouter le chemin vers un script qui ajoutera à chaque fois l'interface Ethernet de la machine démarrée au pont créé à la première étape.  . Remarque : si la machine dispose de plusieurs interfaces, il est intéressant de ne pas mettre d'ip sur l'interface associée au pont. On configure une autre interface pour accéder à la machine hôte directement. Dans ce cas, ajouter `net.ipv4.conf.eth0.forwarding=0` dans le /etc/sysctl.conf pour l'interface (ici, eth0) qui servira uniquement à accéder à la machine hôte. Cette interface peut même être branchée sur un réseau différent, ultra-protégé, pour limiter les accès à l'hôte, qu'il est vital de bien protéger : un accés illégitime à l'hôte donnerait accès à tous ses serveurs virtuels...!
Ligne 24: Ligne 26:
{{{
% cat /etc/vz/vznet.conf
 * Le fichier {{{/etc/vz/vznet.conf}}} configure le comportement réseau lors du démarrage de nouvelle machines. Y ajouter le chemin vers un script qui ajoutera à chaque fois l'interface Ethernet de la machine démarrée au pont créé à la première étape.

  {{{
$ cat /etc/vz/vznet.conf
Ligne 28: Ligne 32:
Exemple de script :
Ligne 30: Ligne 33:
{{{
% cat /usr/local/sbin/vzaddbr
 . Exemple de script :

  
{{{
$ cat /usr/local/sbin/vzaddbr
Ligne 37: Ligne 42:
# on active l'interface
Ligne 38: Ligne 44:
# on l'ajoute sur le bridge (comme si on la branchait sur le switch correspondant)
Ligne 41: Ligne 47:
Enfin, dernière étape, configurer une interface Ethernet virtuelle sur chaque machine :
Ligne 43: Ligne 48:
{{{vzctl set 211 --netif_add "eth0,00:E1:00:00:21:1A,veth211.1,00:E1:00:00:21:1B" --save}}}  * Enfin, dernière étape, configurer une interface ethernet virtuelle sur chaque machine :
Ligne 45: Ligne 50:
Choix des adresses mac :   {{{# vzctl set 211 --netif_add "eth0,00:E1:00:00:21:1A,veth211.1,00:E1:00:00:21:1B" --save}}}
Ligne 47: Ligne 52:
 * ne pas attribuer deux fois la même adresse mac pour deux machines différente.
 * à Dakar, j'utilise pour les deux derniers octets le numéro de la machine elle même (le VEID), avec A et B respectivement pour l'interface côté machine virtuelle et côté hôte.
 * Attention au préfixe ! Choisir un préfixe légèrement supérieur à celui de l'adresse mac de l'interface physique : dans l'algorithme de gestion de pont, c'est toujours la plus petite adresse mac qui est choisie pour être celle du pont. Le fait que l'adresse mac change lorsqu'une machine est démarrée ou stoppée peut provoquer des perturbations diverses.
 . '''Attention au choix des adresses MAC''' :
  1. ne pas attribuer deux fois la même adresse MAC pour deux machines différente.
  1. Attention au préfixe ! Choisir un préfixe légèrement supérieur à celui de l'adresse MAC de l'interface physique. En effet dans l'algorithme de gestion de pont, c'est toujours '''la plus petite adresse MAC qui est choisie pour être celle du pont'''. Il ne faut pas que l'adresse MAC change lorsqu'une machine virtuelle est démarrée ou stoppée. Il faut donc que l'adresse MAC la plus petite soit celle de la machine physique, qui ne change pas.
  1. Astuce pour s'y retrouver : utiliser pour les deux derniers octets le numéro de la machine elle même (le VEID), avec A et B respectivement pour l'interface côté machine virtuelle et côté hôte.
Ligne 51: Ligne 57:
Enfin (ENFIN), côté machine virtuelle : rien de particulier, configurer l'interface eth0 comme si de rien n'était : = et sur les machines virtuelles =
Ligne 53: Ligne 59:
{{{ Enfin, enfin, enfin, côté machine virtuelle : rien de particulier, configurer l'interface eth0 comme si de rien n'était !

  {{{
Ligne 63: Ligne 71:
La machine virtuelle est connectée au réseau comme si de rien n'était.
Ligne 65: Ligne 72:
----
 . CatégorieVirtualisation
La machine virtuelle est connectée au réseau comme si elle était sur un switch... comme si de rien n'était.

Pour la configuration réseau des machines virtuelle, la méthode « pont Ethernet » est celle qui est conseillée à l'AUF. L'avantage de cette méthode est de présenter, côté machines virtuelle, une configuration réseau 100% similaire à celle de machines physiques.

sur la machine hôte

  • Installer le package bridge-utils

  • Configurer un pont ethernet sur la machine hôte. Si l'interface choisie est eth1, par exemple, mettre pour cela dans le /etc/network/interfaces quelque chose du genre :

    • # extrait de /etc/network/interfaces sur la machine hôte
      auto vz1
      iface vz1 inet manual
              bridge_ports    eth1
              bridge_stp      off
              bridge_fd       1
              bridge_maxwait 0
  • Remarque : si la machine dispose de plusieurs interfaces, il est intéressant de ne pas mettre d'ip sur l'interface associée au pont. On configure une autre interface pour accéder à la machine hôte directement. Dans ce cas, ajouter net.ipv4.conf.eth0.forwarding=0 dans le /etc/sysctl.conf pour l'interface (ici, eth0) qui servira uniquement à accéder à la machine hôte. Cette interface peut même être branchée sur un réseau différent, ultra-protégé, pour limiter les accès à l'hôte, qu'il est vital de bien protéger : un accés illégitime à l'hôte donnerait accès à tous ses serveurs virtuels...!

  • Le fichier /etc/vz/vznet.conf configure le comportement réseau lors du démarrage de nouvelle machines. Y ajouter le chemin vers un script qui ajoutera à chaque fois l'interface Ethernet de la machine démarrée au pont créé à la première étape.

    • $ cat /etc/vz/vznet.conf
      EXTERNAL_SCRIPT=/usr/local/sbin/vzaddbr
  • Exemple de script :
    • $ cat /usr/local/sbin/vzaddbr
      #!/bin/bash
      
      BRIDGE=vz1
      ETH=$3
      
      # on active l'interface
      /sbin/ifconfig $ETH up
      # on l'ajoute sur le bridge (comme si on la branchait sur le switch correspondant)
      /usr/sbin/brctl addif $BRIDGE $ETH
  • Enfin, dernière étape, configurer une interface ethernet virtuelle sur chaque machine :
    • # vzctl set 211 --netif_add "eth0,00:E1:00:00:21:1A,veth211.1,00:E1:00:00:21:1B" --save

  • Attention au choix des adresses MAC :

    1. ne pas attribuer deux fois la même adresse MAC pour deux machines différente.
    2. Attention au préfixe ! Choisir un préfixe légèrement supérieur à celui de l'adresse MAC de l'interface physique. En effet dans l'algorithme de gestion de pont, c'est toujours la plus petite adresse MAC qui est choisie pour être celle du pont. Il ne faut pas que l'adresse MAC change lorsqu'une machine virtuelle est démarrée ou stoppée. Il faut donc que l'adresse MAC la plus petite soit celle de la machine physique, qui ne change pas.

    3. Astuce pour s'y retrouver : utiliser pour les deux derniers octets le numéro de la machine elle même (le VEID), avec A et B respectivement pour l'interface côté machine virtuelle et côté hôte.

et sur les machines virtuelles

Enfin, enfin, enfin, côté machine virtuelle : rien de particulier, configurer l'interface eth0 comme si de rien n'était !

  • # cat /var/lib/vz/private/211/etc/network/interfaces
    auto lo
    iface lo inet loopback
    
    auto eth0
    iface eth0 inet static
            address 172.18.1.211
            netmask 255.255.255.0

La machine virtuelle est connectée au réseau comme si elle était sur un switch... comme si de rien n'était.

OpenVZ/OrganisationRéseau (dernière édition le 2018-01-19 17:16:04 par MoussaNombre)