Mise à jour du kernel OVH pour installation de linux containers lxc

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


Publié

dans

par

Étiquettes :

Commentaires

4 réponses à “Mise à jour du kernel OVH pour installation de linux containers lxc”

  1. Avatar de Kamil

    Gracias!!!!!!!!!!! 😉 2 days 30h looking for solution to PID namespace for OVH grsec kernel for LXC. Thanks!!!

  2. Avatar de Kamil

    Set new Kernel:
    update-grub
    nano /etc/default/group
    SET VAR Default = number_kernel
    update-grub && reboot

  3. Avatar de Roy
    Roy

    MERCI !

    Débutant, j’ai tourné en rond avant de tomber sur ton site, Tout s’explique maintenant ! Je comprends pas pourquoi OVH n’active pas tout ça de base :/

    En plus tu es le seul à partager ça sur le WEB. Un grand MERCI de prendre le temps pour documenter tout ça !

    Pour les débutants, il est aussi possible d’avoir un panel:
    LXC Web Panel

    C’est très joli et fonctionnel.

    1. Avatar de Marc3001

      Mon post est très grandement inspiré de celui-ci http://www.delloye.org/linux/lxc.html.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.