Installation de Linux-vserver sur un serveur Centos 5.1
Par Alexandre le mardi, juin 3 2008, 21:51 - Hébergement Web - centos - ds5000 - hetzner - linux-vserver
J'ai publié un billet récemment sur l'installation de Centos 5.1 sur un serveur Hetzner DS 5000. Voici de nouvelles notes au sujet de l'installation de Linux-vserver sur ce même serveur - ou sur tout autre serveur Centos 5.1.
Linux-vserver (voyez aussi Wikipédia) permet de créer plusieurs machines virtuelles Linux sur un même serveur Linux. L'intérêt particulier de Linux-vserver (par opposition à d'autres technologies de virtualisation comme Xen) tient au fait que Linux-Vserver n'entraîne pas d'overhead. Autrement dit, pas de ressources (mémoire, processeur...) gaspillées à faire rouler des éléments en double. Il n'y a qu'un seul noyau Linux pour tous les vservers d'un système - qui peuvent toutefois rouler des distributions Linux différentes.
En plus, tout ça a été inventé par un Québécois, Jacques Gélinas.
Le document qui a été le plus utile pour écrire ces notes : Installation on CentOS sur linux-vserver.org.
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.
Commentaires