Je viens de recevoir mon KS2G OVH et j’aimerais y faire tourner des linux containers (lxc).
Cependant, j’ai constaté que le noyau OVH manquait de pas mal d’options notament sur le réseau et les cgroups.
Pour remédier à tout ça, il va falloir compiler un nouveau noyau et tant qu’à faire le dernier en date de notre cher Linus.
On download le dernier kernel officiel
wget https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.11.1.tar.xz
On récupère le dernier fichier de config kernel chez OVH
wget -c ftp://ftp.ovh.net/made-in-ovh/bzImage/latest-production/config-3.10.9-xxxx-grs-ipv6-64
On install les dépendances pour la compilation
apt-get install make gcc lzma ncurses-dev dpkg-dev
Il faut ensuite bien sûr extraire la livraison
tar -xvf linux-3.11.1.tar.xz
Copier le fichier de conf OVH pour prise comme base. C’est cette conf à laquelle on ajoutera la prise en charge des cgroups et divers paramètres réseau
cp config-3.10.9-xxxx-grs-ipv6-64 linux-3.11.1/.config
On lance le menu de configuration (dont la conf de base est celle du fichier OVH)
cd linux-3.11.1 make menuconfig
L’idée c’est d’ajouter la prise en charge des options ci-dessous
General setup --->
[*] Control Group support --->
[*] Example debug cgroup subsystem
[*] Namespace cgroup subsystem
[*] Freezer cgroup subsystem
[*] Device controller for cgroups
[*] Cpuset support
[*] Include legacy /proc//cpuset file
[*] Simple CPU accounting cgroup subsystem
[*] Resource counters
[*] Memory Resource Controller for Control Groups
[*] Memory Resource Controller Swap Extension
[*] Memory Resource Controller Swap Extension enabled by default (NEW)
[*] Enable perf_event per-cpu per-container group (cgroup) monitoring
[*] Group CPU scheduler --->
[*] Group scheduling for SCHED_OTHER
[*] Group scheduling for SCHED_RR/FIFO
<*> Block IO controller
[*] Enable Block IO controller debugging
-*- Namespaces support --->
[*] UTS namespace
[*] IPC namespace
[*] PID Namespaces
[*] Network namespace
[*] Networking support --->
Networking options --->
<*> 802.1d Ethernet Bridging
[*] IGMP/MLD snooping
<*> 802.1Q VLAN Support
[*] GVRP (GARP VLAN Registration Protocol) support
Device Drivers --->
[*] Network device support --->
--- Network device support
< > Intermediate Functional Block support (NEW)
< > Dummy net driver support (NEW)
< > Bonding driver support (NEW)
<*> MAC-VLAN support (EXPERIMENTAL)
<*> MAC-VLAN based tap driver (EXPERIMENTAL)
< > EQL (serial line load balancing) support (NEW)
< > Universal TUN/TAP device driver support (NEW)
<*> Virtual ethernet pair device
< > General Instruments Surfboard 1000 (NEW)
Character devices --->
-*- Unix98 PTY support
[*] Support multiple instances of devpts
On compile notre nouvau noyau et on lui donne un numéro de version (prévoir plus d’une heure sur un KS2G OVH)
make KDEB_PKGVERSION=1.0 deb-pkg
Enfin on installe notre nouveau noyau
dpkg -i linux-image-3.11.1-xxxx-grs-ipv6-64_1.0_amd64.deb linux-headers-3.11.1-xxxx-grs-ipv6-64_1.0_amd64.deb
Ne pas oublier de positionner le noyau par défaut dans /boot/grub/grub.conf sur le nouvau noyau.
On redémarre et on prie 😉
source : http://www.delloye.org/linux/lxc.html
Répondre à Marc3001 Annuler la réponse