logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Ceci est une ancienne révision du document !


LXC ou la virtualisation allégée

Nota :

Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !

Introduction

LXC (LinuX Container) est un système permettant d'installer plusieurs distributions séparée les unes des autres (comme des machines virtuelles) mais qui partagent malgré tout le même noyau du système hôte. Il est donc à mi-chemin entre un chroot et une machine virtuelle.

Installation

Installer le paquet lxc qui contient les outils permettant de créer, lancer supprimé des conteneurs LXC

apt-get install lxc

Lors de l'installation, vous devez indiquer l'emplacement où seront installée vos conteneur, /var/lib/lxc par défaut (FIXME Y-a-t-il des précautions pour installer sur une autre partition par exemple ?)

D'autres paquet sont recommandés, et notamment debootstrap qui permettra d'installer un autre système Debian

apt-get install bridge-utils libvirt-bin debootstrap

Utilisation

Préparer le système hôte

/etc/fstab

LXC utilise les cgroups (FIXME une petite vulgarisation la dessus :?: ). Il faut donc monter ce système de fichier virtuel dans /etc/fstab

cgroup  /sys/fs/cgroup  cgroup  defaults  0   0

et monter le système de fichier

mount /sys/fs/cgroup

Vérifier la configuration du noyau

lxc-checkconfig
Kernel config /proc/config.gz not found, looking in other places...
Found kernel config file /boot/config-3.2.0-4-amd64
--- Namespaces ---
Namespaces: enabled
Utsname namespace: enabled
Ipc namespace: enabled
Pid namespace: enabled
User namespace: enabled
Network namespace: enabled
Multiple /dev/pts instances: enabled

--- Control groups ---
Cgroup: enabled
Cgroup clone_children flag: enabled
Cgroup device: enabled
Cgroup sched: enabled
Cgroup cpu account: enabled
Cgroup memory controller: enabled
Cgroup cpuset: enabled

--- Misc ---
Veth pair device: enabled
Macvlan: enabled
Vlan: enabled
File capabilities: enabled

Note : Before booting a new kernel, you can check its configuration
usage : CONFIG=/path/to/config /usr/bin/lxc-checkconfig

Création de RootFS

LXC vient avec des Templates, c'est à dire des scripts permettant l'installation simple d'un système. Il en existe pour Debian, Archlinux, Fedora, OpenSuse et Ubuntu.

Créons don par exemple un système, tiens au hasard, Debian :-D

lxc-create -n myfirstcontainer -t debian

Cela va nous installer une Debian Stable super minimale dans la même architecture que le système hôte (i386, AMD64 …) dans /var/lib/lxc/myfirstcontainer/rootfs et un fichier de configuration /var/lib/lxc/myfirstcontayner/config.

Il existe quelques options pour ce template, notamment pour le choix de la version. Par exemple pour installer une Debian Sid

lxc-create -n sid-container -t debian -- -r sid

Le fichier de configuration

FIXME

Lancer le conteneur

lxc-start -n myfirstcontainer -d

le -n pour indiquer le nom du conteneur, le -d pour le lancer en arrière plan ( non attaché à la console )

Sans le -d, il ne sera pas possible de quitter proprement le conteneur. Utiliser lxc-start au premier plan seulement dans un but de debuggage.

Pour un démarrage automatique

ln -s /var/lib/lxc/mycontainer/config /etc/lxc/auto/mycontainer

Arrêter le conteneur

lxc-stop -n myfirstcontainer

Arrête le conteneur sans arrêt propre par SysV. Pour un arrêt propre

lxc-halt -n myfirstcontainer

Enter dans le conteneur

lxc-console -n myfirstcontainer

Le login/mot de passe est root/root à changer dès que possible :-)

Quitter le conteneur

Ctrl+a q

Liens

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
doc/autres/vm/lxc.1393620458.txt.gz · Dernière modification: 28/02/2014 21:47 par captnfab

Pied de page des forums

Propulsé par FluxBB