Prérequis

  • Centos 5.1 installé sur le serveur (voir ce billet pour les étapes)
  • Demandez la plage d'IP gratos qui vient avec le serveur via l'interface Web de Hetzner - ou ayez en votre possession des adresses IP qui pointent vers votre serveur.


1. Désactiver SELinux

Connectez-vous au serveur via ssh.

Désactivez SELinux, qui entre en conflit avec les vservers :

setenforce 0

vi /etc/selinux/config

Modifiez cette ligne :

SELINUX=disabled

Vous pouvez vérifier ce que vous venez de faire pour vous assurer que SELinux est désactivé avec :

sestatus


2. Installation des paquetages requis

Ajout du repository approprié à la configuration de yum :

vi /etc/yum.repos.d/dhozac-vserver.repo

Copiez-collez ça dedans :

[dhozac-vserver]

name=Linux-VServer related packages for CentOS $releasever - $basearch

baseurl=http://rpm.hozac.com/dhozac/centos/$releasever/vserver/$basearch

gpgkey=http://rpm.hozac.com/conf/keys/RPM-DHOZAC-GPG-KEY

Mise à jour de yum avec la version du nouveau repository :

yum update yum


3. Installation du kernel Linux-vserver

Installation du kernel :

yum install kernel


(PARENTHÈSE IMPORTANTE!)

Là, ça va peut-être se conclure par une erreur du genre :

Transaction Check Error: package kernel-2.6.18-53.1.21.el5 (which is newer than kernel-2.6.18-53.1.19.el5) is already installed

Dans ce cas, booter avec kernel plus ancien :

vi /boot/grub/grub.conf

Modifier la ligne :

default=1

Ce qui aura pour effet de booter avec le kernel 2.6.18-53.el5, plus ancien, qui venait avec l'installation de Centos 5.1.

reboot

Reconnexion au serveur via SSH. Désinstallation du kernel récent :

rpm -e kernel-2.6.18-53.1.21.el5

(ou autre version récentre du kernel qui causait un conflit)

Et on recommence :

yum install kernel

(FIN DE LA PARENTHÈSE!)


Vérifiez que le bon kernel va booter

vi /boot/grub/grub.conf

Normalement default=0 et le kernel vserver 2.6.22.19-vs2.3.0.34.1 (ou une variante) sera en premier, l'ancien kernel de l'installation de Centos restant en deuxième position.


4. Modification de la configuration de sshd

Le but est de s'assurer que sshd dans le vserver sur l'hôte ne réponde qu'aux connexions initiées sur l'IP attribuée au vserver au serveur hôte des vservers (et pas aux autres requêtes sur les vservers).

vi /etc/ssh/sshd_config

Modifier cette ligne en ajoutant l'IP du vserver serveur :

ListenAddress ip-du-serveur


5. Installer les outils de gestion de vservers

yum install util-vserver{,-core,-lib,-sysv,-build}

Rendre certaines entrées /proc visibles

/etc/init.d/vprocunhide start

Activer le script d'initialisation vservers-default, pour que les vservers marqués default démarrent au démarrage de votre machine.

chkconfig vservers-default on

Une dernière mise à jour des paquetages pour la route :

yum update

Si vous avez installé Centos sur un server Hetzner en suivant mes instructions, vous avez créé une grosse partition /home. On va mettre les vservers dedans.

mkdir /home/vservers/

rm /etc/vservers/.defaults/vdirbase

ln -s /home/vservers /etc/vservers/.defaults/vdirbase

mv /vservers/.hash /home/vservers/

mv /vservers/.pkg /home/vservers/

ln -s /home/vservers/.pkg /vservers/.pkg

(cette dernière ligne étant un moyen d'éviter du trouble plus loin lors de l'internalisation de la gestion des paquetage yum aux vservers, où le paramètre de configuration vdirbase ne semble pas être pris en compte pour .pkg/)


6. C'est ça qui est ça.

Redémarrez la machine

reboot

Vous pouvez ensuite vous reconnecter à votre serveur via et commencer à créer des vservers dedans.