Modifications entre les versions 7 et 10 (s'étendant sur 3 versions)
Version 7 à la date du 2011-12-19 19:39:50
Taille: 4580
Éditeur: MoussaNombre
Commentaire: migration du contenu des CT
Version 10 à la date du 2011-12-20 14:54:01
Taille: 4757
Éditeur: MoussaNombre
Commentaire: Le 2011-12-20 04:09, Jean Christophe André a écrit : Malheureusement cela ne suffit pas toujours !
Texte supprimé. Texte ajouté.
Ligne 1: Ligne 1:
<<TableOfContents>>
Ligne 70: Ligne 72:
== migration du contenu des CT == == Migration du contenu des CT ==
Ligne 74: Ligne 76:
  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 ....")
Ligne 84: Ligne 87:
     rsync -av --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/      rsync -avPHS --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/
Ligne 86: Ligne 89:
     rsync -av --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/      rsync -avPHS --numeric-ids /var/lib/vz/root/$ct/ new-vz:/var/lib/vz/private/$ct/

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 -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

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 -av --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

  • Note : l'outil `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.

  • montage des partitions (racine et autres, ex : 404, 404-var, 404-srv) dans /var/lib/vz/private sur le nouveau serveur
  • 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 ....")
  • une première copie par rsync depuis l'ancien : rsync -av --numeric-ids /var/lib/vz/root/404/ new-vz:/var/lib/vz/private/404/

  • fermeture de la connexion réseau du CT et re-rsync
  • sur le nouveau serveur :
    • démontage des partitions sauf de la racine du CT (umount /var/lib/vz/private/404/var /var/lib/vz/private/404/srv)
    • démarrage du CT
  • arrêt du 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)

    •      # 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)