Modifications entre les versions 6 et 14 (s'étendant sur 8 versions)
Version 6 à la date du 2010-09-18 17:47:15
Taille: 3138
Éditeur: MoussaNombre
Commentaire: démontage des partoches des ct
Version 14 à la date du 2013-12-11 09:57:38
Taille: 4703
Éditeur: MoussaNombre
Commentaire: gestion des @ MAC
Texte supprimé. Texte ajouté.
Ligne 1: Ligne 1:
<<TableOfContents>>
Ligne 2: Ligne 4:
 cf https://wiki.auf.org/wikiteki/OpenVZ/Installation et https://wiki.auf.org/wikiteki/OpenVZ/OrganisationRéseau pour l'installation du serveur hôte openvz  cf https://wiki.auf.org/wikiteki/OpenVZ/Installation, https://wiki.auf.org/wikiteki/OpenVZ/OrganisationRéseau et http://wiki.auf.org/wikiteki/OpenVZ/Conseils pour l'installation du serveur hôte openvz
Ligne 17: Ligne 19:
  * créer le script de montage
  {{{
  * créer le script de montage : {{{#!sh
Ligne 21: Ligne 22:
Ligne 23: Ligne 23:

     mount -o noatime /dev/vz/505-srv $RACINE/srv
     mount -o noatime /dev/vz/505-log $RACINE/var/log
   }}}
  * bien sûr, le démontage -- '''OBSOLETE''', à ne plus FAIRE --màj 20100918 MoussaNombre
   {{{
     #/etc/vz/conf/505.umount
     #!/bin/bash

     RACINE=/var/lib/vz/root/505

     for a in var/log srv
       do
        if mount|grep -q $RACINE/$a
          then
            umount $RACINE/$a
        fi
       done
   }}}
  * les rendre exécutables : `chmod u+x /etc/vz/conf/505.*mount`
     mount -n -o noatime /dev/vz/505-srv $RACINE/srv
     mount -n -o noatime /dev/vz/505-log $RACINE/var/log
}}}
  . {i} pas besoin de script de démontage
  * les rendre exécutables : `chmod u+x /etc/vz/conf/505.mount`
Ligne 49: Ligne 34:
 * transfert du VE dans sa slot finale : `rsync -av --numeric-ids /var/lib/vz/private/505.tmp/* /var/lib/vz/private/505/`  * transfert du VE dans sa slot finale : `rsync -avPHS --numeric-ids /var/lib/vz/private/505.tmp/* /var/lib/vz/private/505/`
Ligne 69: Ligne 54:

== Migration du contenu des CT ==
  __Note__ : l'outil [[http://wiki.openvz.org/Migration_from_one_HN_to_another|`vzmigrate`]] (http://openvz.org/documentation/mans/vzmigrate.8) permet de transferer un CT d'un HN à un autre sans "éteindre" le CT. Dans mon cas, où les CT ont chacun leurs propres partions, je ne peux pas l'utiliser.

 1. créer les partitions nécessaires sur le nouveau serveur en calquant les tailles sur l'existant (serveur source)
 1. monter les partitions (racine et autres, ex : 404, 404-var, 404-srv) dans /var/lib/vz/private sur le nouveau serveur
 1. copier le fichier de config du CT depuis l'ancien serveur (/etc/vz/conf/404.conf) et adapter la ligne de config réseau (NETIF="ifname ....")
 1. faire une première copie par rsync depuis l'ancien : `rsync -avPHS --numeric-ids /var/lib/vz/root/404/ new-vz:/var/lib/vz/private/404/`
 1. fermer la connexion réseau du CT et re-rsync
 1. sur le nouveau serveur :
  * démonter les partitions sauf de la racine du CT (umount /var/lib/vz/private/404/var /var/lib/vz/private/404/srv)
  * démarrer le CT
 1. arrêter le CT sur l'ancien et modif de la config pour mettre ONBOOT="no"
  __Résumé__ : (je met ici dans un script les commandes que j'ai exécutées), en supposant que les partitions sont déjà montées (A ADAPTER AVANT DE LANCER !)
   {{{
     # migration-ct.sh
     ct=$1
     rsync -avPHS --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/
     vzctl exec $ct /etc/init.d/networking stop
     rsync -avPHS --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/
     ssh new-vz "umount /var/lib/vz/private/$ct/var /var/lib/vz/private/$ct/srv ; vzctl start $ct"
     vzctl stop $ct
     sed -i '/^ONBOOT/c ONBOOT="no"' /etc/vz/conf/$ct.conf
   }}}

Procédure utilisée pour la création de VE

Partitionnement

  • racine du VE : lvcreate -L 3G -n 505 vz partition lvm de 3G dans le groupe de volume "vz"

  • partitions particulières en fonction du rôle du VE :
    • var : lvcreate -L 2G -n 505-var vz

    • log : lvcreate -L 2G -n 505-var-log vz

    • tmp : lvcreate -L 1G -n 505-tmp vz

    • srv : lvcreate -L 5G -n 505-srv vz

    • etc.
    • formater les partitions : for i in 505 505-var 505-var-log 505-srv 505-tmp; do mkfs.ext3 /dev/vz/$i; done

  • point de montage
    • racine : /dev/vz/505 /var/lib/vz/private/505
    • les autres : /dev/vz/505-partoche /var/lib/vz/root/505/partoche

    • ajouter ces montages (la racine et les autres) dans /etc/fstab
    • créer le script de montage :

           #/etc/vz/conf/505.mount
           #!/bin/bash
           RACINE=/var/lib/vz/root/505
           mount -n -o noatime /dev/vz/505-srv $RACINE/srv
           mount -n -o noatime /dev/vz/505-log $RACINE/var/log
    • {i} pas besoin de script de démontage

    • les rendre exécutables : chmod u+x /etc/vz/conf/505.mount

Création du VE

  • vzctl create 505 --hostname git-prive --ostemplate debian-4.0-i386-ca-auf

  • renommage du répertoire de base du VE pour pouvoir le mettre dans sa partition finale : mv /var/lib/vz/private/505 /var/lib/vz/private/505.tmp

  • montage de la partition racine : mkdir /var/lib/vz/private/505 ; mount /dev/vz/505 /var/lib/vz/private/505

  • montage des autres partitions (provisoirement dans private, le temps du transfert) : for i in var srv tmp; do mkdir /var/lib/vz/private/505/$i; mount /dev/vz/$i /var/lib/vz/private/505/$i; done`

  • transfert du VE dans sa slot finale : rsync -avPHS --numeric-ids /var/lib/vz/private/505.tmp/* /var/lib/vz/private/505/

  • suppression du répertoire temporaire : rm -rf /var/lib/vz/private/505.tmp

  • démontage des partitions sauf la racine : for i in tmp srv var; do umount /dev/vz/$i; done

  • modifier le fichier de configuration : /etc/vz/conf/505.conf :

    • ONBOOT="yes"
    • DISK_QUOTA="no"

Configuration réseau

Ajustement de quelques paramètres

  • hostname : /var/lib/vz/private/505/etc/hostname

  • resolver : /var/lib/vz/private/505/etc/resolv.conf

  • etc.

Zou, on peut le lancer

  • vzctl start 505

  • on y accède par ssh pour la suite (ou depuis l'hôte vzctl enter 505)

Migration du contenu des CT

  1. créer les partitions nécessaires sur le nouveau serveur en calquant les tailles sur l'existant (serveur source)
  2. monter les partitions (racine et autres, ex : 404, 404-var, 404-srv) dans /var/lib/vz/private sur le nouveau serveur
  3. copier le fichier de config du CT depuis l'ancien serveur (/etc/vz/conf/404.conf) et adapter la ligne de config réseau (NETIF="ifname ....")
  4. faire une première copie par rsync depuis l'ancien : rsync -avPHS --numeric-ids /var/lib/vz/root/404/ new-vz:/var/lib/vz/private/404/

  5. fermer la connexion réseau du CT et re-rsync
  6. sur le nouveau serveur :
    • démonter les partitions sauf de la racine du CT (umount /var/lib/vz/private/404/var /var/lib/vz/private/404/srv)
    • démarrer le CT
  7. arrêter le CT sur l'ancien et modif de la config pour mettre ONBOOT="no"
    • Résumé : (je met ici dans un script les commandes que j'ai exécutées), en supposant que les partitions sont déjà montées (A ADAPTER AVANT DE LANCER !)

      •      # migration-ct.sh
             ct=$1
             rsync -avPHS --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/
             vzctl exec $ct /etc/init.d/networking stop
             rsync -avPHS --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/
             ssh new-vz "umount /var/lib/vz/private/$ct/var /var/lib/vz/private/$ct/srv ; vzctl start $ct"
             vzctl stop $ct
             sed -i '/^ONBOOT/c ONBOOT="no"' /etc/vz/conf/$ct.conf

ZA/Montréal/CréationServeurVirtuelOpenvz (dernière édition le 2013-12-11 09:57:38 par MoussaNombre)