« Proxmox et OpenVZ » : différence entre les versions

De Linux Server Wiki
Aller à la navigation Aller à la recherche
Ligne 7 : Ligne 7 :
Faites une partition / de 15Go, un swap, et enfin, une partition LVM2 avec l'espace restant.
Faites une partition / de 15Go, un swap, et enfin, une partition LVM2 avec l'espace restant.


Nous allons maintenant créer notre architecture LVM puis le système de fichier :
Nous allons maintenant créer notre architecture LVM puis le système de fichier.
 
Pour commencer, créez le volume physique :
<pre>
<pre>
pvcreate /dev/sda3
$ pvcreate /dev/sda3
  Physical volume "/dev/sda3" successfully created
  Physical volume "/dev/sda3" successfully created
vgcreate pve /dev/sda3
</pre>
  Volume group "pve" successfully created
 
vgdisplay -v pve
Créez ensuite le groupe <code>pve</code> :
    Using volume group(s) on command line
<pre>
    Finding volume group "pve"
$ vgcreate pve /dev/sda3
  --- Volume group ---
  Volume group "pve" successfully created
  VG Name              pve
</pre>
  System ID             
 
  Format                lvm2
Vous pouvez vérifier les informations du groupe avec la commande <code>vgdisplay</code>:
  Metadata Areas        1
<pre>
  Metadata Sequence No  1
$ vgdisplay -v pve
  VG Access            read/write
      Using volume group(s) on command line
  VG Status            resizable
      Finding volume group "pve"
  MAX LV                0
    --- Volume group ---
  Cur LV                0
    VG Name              pve
  Open LV              0
    System ID             
  Max PV                0
    Format                lvm2
  Cur PV                1
    Metadata Areas        1
  Act PV                1
    Metadata Sequence No  1
  VG Size              215.09 GB
    VG Access            read/write
  PE Size              4.00 MB
    VG Status            resizable
  Total PE              55064
    MAX LV                0
  Alloc PE / Size      0 / 0   
    Cur LV                0
  Free  PE / Size      55064 / 215.09 GB
    Open LV              0
  VG UUID              AenAEU-jdG2-RUh1-4khe-R990-MInR-cdRIe0
    Max PV                0
 
    Cur PV                1
  --- Physical volumes ---
    Act PV                1
  PV Name              /dev/sda3   
    VG Size              215.09 GB
  PV UUID              CsIxAk-xa18-1W2q-jm1Y-fVqg-VSnW-KMaXvx
    PE Size              4.00 MB
  PV Status            allocatable
    Total PE              55064
  Total PE / Free PE    55064 / 55064
    Alloc PE / Size      0 / 0   
 
    Free  PE / Size      55064 / 215.09 GB
lvcreate -l55064 -n data pve
    VG UUID              AenAEU-jdG2-RUh1-4khe-R990-MInR-cdRIe0
  Logical volume "data" created
lvdisplay -v /dev/pve/data
    Using logical volume(s) on command line
  --- Logical volume ---
  LV Name                /dev/pve/data
  VG Name                pve
  LV UUID                KlFCb8-yE7K-NYCN-RNnN-LEV3-maIw-mDtZZq
  LV Write Access        read/write
  LV Status              available
  # open                0
  LV Size                215.09 GB
  Current LE            55064
  Segments              1
  Allocation            inherit
  Read ahead sectors    auto
  - currently set to    256
  Block device          253:0
    
    
    --- Physical volumes ---
    PV Name              /dev/sda3   
    PV UUID              CsIxAk-xa18-1W2q-jm1Y-fVqg-VSnW-KMaXvx
    PV Status            allocatable
    Total PE / Free PE    55064 / 55064
</pre>
Nous pouvons maintenant créer le volume logique <code>data</code> dans le groupe <code>pve</code> :
<pre> 
$ lvcreate -l55064 -n data pve
    Logical volume "data" created
</pre>
Vous pouvez vérifier les informations du volume avec la commande <code>lvdisplay</code>:
<pre>
$ lvdisplay -v /dev/pve/data
      Using logical volume(s) on command line
    --- Logical volume ---
    LV Name                /dev/pve/data
    VG Name                pve
    LV UUID                KlFCb8-yE7K-NYCN-RNnN-LEV3-maIw-mDtZZq
    LV Write Access        read/write
    LV Status              available
    # open                0
    LV Size                215.09 GB
    Current LE            55064
    Segments              1
    Allocation            inherit
    Read ahead sectors    auto
    - currently set to    256
    Block device          253:0
</pre>
Enfin, créez le système de fichier dans votre volume logique :
<pre> 
mkfs.ext3 /dev/pve/data
mkfs.ext3 /dev/pve/data
</pre>
</pre>

Version du 6 juin 2011 à 14:59


Partitionnement du disque dur

Pour commencer, partitionnez votre disque. Faites une partition / de 15Go, un swap, et enfin, une partition LVM2 avec l'espace restant.

Nous allons maintenant créer notre architecture LVM puis le système de fichier.

Pour commencer, créez le volume physique :

$ pvcreate /dev/sda3
   Physical volume "/dev/sda3" successfully created

Créez ensuite le groupe pve :

$ vgcreate pve /dev/sda3
   Volume group "pve" successfully created

Vous pouvez vérifier les informations du groupe avec la commande vgdisplay:

$ vgdisplay -v pve
      Using volume group(s) on command line
      Finding volume group "pve"
    --- Volume group ---
    VG Name               pve
    System ID             
    Format                lvm2
    Metadata Areas        1
    Metadata Sequence No  1
    VG Access             read/write
    VG Status             resizable
    MAX LV                0
    Cur LV                0
    Open LV               0
    Max PV                0
    Cur PV                1
    Act PV                1
    VG Size               215.09 GB
    PE Size               4.00 MB
    Total PE              55064
    Alloc PE / Size       0 / 0   
    Free  PE / Size       55064 / 215.09 GB
    VG UUID               AenAEU-jdG2-RUh1-4khe-R990-MInR-cdRIe0
   
    --- Physical volumes ---
    PV Name               /dev/sda3     
    PV UUID               CsIxAk-xa18-1W2q-jm1Y-fVqg-VSnW-KMaXvx
    PV Status             allocatable
    Total PE / Free PE    55064 / 55064

Nous pouvons maintenant créer le volume logique data dans le groupe pve :

   
$ lvcreate -l55064 -n data pve
    Logical volume "data" created

Vous pouvez vérifier les informations du volume avec la commande lvdisplay:

$ lvdisplay -v /dev/pve/data
      Using logical volume(s) on command line
    --- Logical volume ---
    LV Name                /dev/pve/data
    VG Name                pve
    LV UUID                KlFCb8-yE7K-NYCN-RNnN-LEV3-maIw-mDtZZq
    LV Write Access        read/write
    LV Status              available
    # open                 0
    LV Size                215.09 GB
    Current LE             55064
    Segments               1
    Allocation             inherit
    Read ahead sectors     auto
    - currently set to     256
    Block device           253:0

Enfin, créez le système de fichier dans votre volume logique :

   
mkfs.ext3 /dev/pve/data
mkswap /dev/sda2
mkfs.ext3 /dev/sda1

Installation du système de base

mount /dev/sda1 /mnt
debootstrap --arch=amd64 lenny /mnt
...
I: Base system installed successfully.

Configuration de debian et installation de proxmox

mount -o bind /proc /mnt/proc
mount -o bind /dev /mnt/dev
mount -o bind /sys /mnt/sys
chroot /mnt

Modifiez le fichier sysctl.conf afin de permettre le forwaring ipv6 :

net.ipv4.ip_forward=1
aptitude update
aptitude safe-upgrade
aptitude install locales 
dpkg-reconfigure locales
aptitude install console-data
dpkg-reconfigure console-data # from arch > french > latin9)

A ajouter dans le source.list :

# PVE packages provided by proxmox.com
deb ftp://download.proxmox.com/debian lenny pve

puis :

wget -O- "http://download.proxmox.com/debian/key.asc" | apt-key add -
aptitude update

Pour profiter d'openVZ, installez le kernel 2.6.32* :

aptitude install pve-kernel-2.6.32-4-pve

Si vous n'aviez pas grub d'installé :

mkdir /boot/grub
grub-install /dev/sda

Créer et configurer /boot/grub/menu.lst

Installez les headers du kernel (optionnel) :

aptitude install pve-headers-2.6.32-4-pve lvm2
tzselect
dpkg-reconfigure tzdata
aptitude install openssh-server
aptitude install proxmox-ve-2.6.32 ntp

Pour simplifier l'administration :

ln -s /var/lib/vz /vz

Utiliser son propre certificat ssl pour l'interface web

Je vous renvoi sur http://wiki.csnu.org/index.php?title=Installation_et_configuration_de_OpenSSL pour la mise en place d'une autorité de certification. Dans l'exemple suivant, je créé un certificat proxmox et le signe avec l'autorité onyx_ca :

openssl req -newkey rsa:2048 -keyout proxmox.key -out proxmox.req
openssl ca -name onyx_ca -extensions PROXMOX -in proxmox.req -out proxmox.pem
mkdir /etc/apache2/ssl/
mv proxmox.* /etc/apache2/ssl/
cat /etc/ssl/root_ca/root_ca.pem /etc/ssl/onyx_ca/onyx_ca.pem > /etc/apache2/ssl/cachain.pem

Modifiez le fichier /etc/apache2/sites-enabled/pve.conf comme suit :

<VirtualHost *:443>
    SSLEngine on
    SSLProtocol all -SSLv2
    #SSLCertificateFile /etc/pve/pve-ssl.pem
    #SSLCertificateKeyFile /etc/pve/pve-ssl.key
    SSLCertificateFile /etc/apache2/ssl/proxmox.pem
    SSLCertificateKeyFile /etc/apache2/ssl/proxmox.key
    SSLCertificateChainFile /etc/apache2/ssl/cachain.pem

    RewriteEngine on
    RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
    RewriteRule .* - [F]
 </VirtualHost>

Ajouter des templates manuellement

Il suffit de télécharger directement les archives dans /var/lib/vz/template/cache/. Vous pouvez trouver des templates sur http://download.proxmox.com/appliances/ et http://wiki.openvz.org/Download/template/precreated

Partager des fichiers d'un VE à un autre VE

OpenVZ, de part son architecture, permet de partager des fichiers d'un VE à un autre très facilement. Pour cela, connectez vous en ssh à votre host et utilisez la commande mount :

mount --bind /vz/private/102/directory /vz/root/101/directory

Pour que ce partage reste actif même en cas de reboot créez le fichier /etc/vz/conf/101.mount:

#!/bin/bash
source /etc/vz/vz.conf
source ${VE_CONFFILE}
mount -n --bind /vz/private/102/directory /vz/root/101/directory

N'oubliez pas de rendre ce fichier executable :

chmod +x /etc/vz/conf/101.mount