{"id":154,"date":"2013-09-22T21:53:05","date_gmt":"2013-09-22T19:53:05","guid":{"rendered":"http:\/\/www.marc-cesarine.fr\/?p=154"},"modified":"2013-09-22T21:53:05","modified_gmt":"2013-09-22T19:53:05","slug":"mise-a-jour-du-kernel-ovh-pour-installation-de-linux-containers-lxc","status":"publish","type":"post","link":"https:\/\/www.marc-cesarine.fr\/?p=154","title":{"rendered":"Mise \u00e0 jour du kernel OVH pour installation de linux containers lxc"},"content":{"rendered":"<p>Je viens de recevoir mon KS2G OVH et j&rsquo;aimerais y faire tourner des linux containers (lxc).<br \/>\nCependant, j&rsquo;ai constat\u00e9 que le noyau OVH manquait de pas mal d&rsquo;options notament sur le r\u00e9seau et les cgroups.<br \/>\nPour rem\u00e9dier \u00e0 tout \u00e7a, il va falloir compiler un nouveau noyau et tant qu&rsquo;\u00e0 faire le dernier en date de notre cher Linus.<br \/>\n<!--more--><\/p>\n<p>On download le dernier kernel officiel<\/p>\n<pre>wget https:\/\/www.kernel.org\/pub\/linux\/kernel\/v3.x\/linux-3.11.1.tar.xz<\/pre>\n<p>On r\u00e9cup\u00e8re le dernier fichier de config kernel chez OVH<\/p>\n<pre>wget -c ftp:\/\/ftp.ovh.net\/made-in-ovh\/bzImage\/latest-production\/config-3.10.9-xxxx-grs-ipv6-64<\/pre>\n<p>On install les d\u00e9pendances pour la compilation<\/p>\n<pre>apt-get install make gcc lzma ncurses-dev dpkg-dev<\/pre>\n<p>Il faut ensuite bien s\u00fbr extraire la livraison<\/p>\n<pre>tar -xvf linux-3.11.1.tar.xz<\/pre>\n<p>Copier le fichier de conf OVH pour prise comme base. C&rsquo;est cette conf \u00e0 laquelle on ajoutera la prise en charge des cgroups et divers param\u00e8tres r\u00e9seau<\/p>\n<pre>cp config-3.10.9-xxxx-grs-ipv6-64 linux-3.11.1\/.config<\/pre>\n<p>On lance le menu de configuration (dont la conf de base est celle du fichier OVH)<\/p>\n<pre>cd linux-3.11.1\nmake menuconfig<\/pre>\n<p>L&rsquo;id\u00e9e c&rsquo;est d&rsquo;ajouter la prise en charge des options ci-dessous<\/p>\n<pre>General setup ---&gt;\n    [*] Control Group support ---&gt;\n        [*] Example debug cgroup subsystem\n        [*] Namespace cgroup subsystem\n        [*] Freezer cgroup subsystem\n        [*] Device controller for cgroups\n        [*] Cpuset support\n        [*] Include legacy \/proc\/\/cpuset file\n        [*] Simple CPU accounting cgroup subsystem\n        [*] Resource counters\n        [*] Memory Resource Controller for Control Groups\n        [*] Memory Resource Controller Swap Extension\n        [*] Memory Resource Controller Swap Extension enabled by default (NEW)\n        [*] Enable perf_event per-cpu per-container group (cgroup) monitoring\n        [*] Group CPU scheduler ---&gt;\n        [*] Group scheduling for SCHED_OTHER\n        [*] Group scheduling for SCHED_RR\/FIFO\n        &lt;*&gt; Block IO controller\n        [*] Enable Block IO controller debugging\n    -*- Namespaces support ---&gt;\n        [*] UTS namespace\n        [*] IPC namespace\n        [*] PID Namespaces\n        [*] Network namespace<\/code>\n\n    [*] Networking support ---&gt;\n        Networking options ---&gt;\n        &lt;*&gt; 802.1d Ethernet Bridging\n        [*] IGMP\/MLD snooping\n        &lt;*&gt; 802.1Q VLAN Support\n        [*] GVRP (GARP VLAN Registration Protocol) support\n\nDevice Drivers ---&gt;\n    [*] Network device support ---&gt;\n        --- Network device support\n        &lt; &gt; Intermediate Functional Block support (NEW)\n        &lt; &gt; Dummy net driver support (NEW)\n        &lt; &gt; Bonding driver support (NEW)\n        &lt;*&gt; MAC-VLAN support (EXPERIMENTAL)\n        &lt;*&gt; MAC-VLAN based tap driver (EXPERIMENTAL)\n        &lt; &gt; EQL (serial line load balancing) support (NEW)\n        &lt; &gt; Universal TUN\/TAP device driver support (NEW)\n        &lt;*&gt; Virtual ethernet pair device\n        &lt; &gt; General Instruments Surfboard 1000 (NEW)\n\nCharacter devices ---&gt;\n    -*- Unix98 PTY support\n    [*] Support multiple instances of devpts<\/pre>\n<p>On compile notre nouvau noyau et on lui donne un num\u00e9ro de version (pr\u00e9voir plus d&rsquo;une heure sur un KS2G OVH)<\/p>\n<pre>make KDEB_PKGVERSION=1.0 deb-pkg<\/pre>\n<p>Enfin on installe notre nouveau noyau<\/p>\n<pre>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<\/pre>\n<p>Ne pas oublier de positionner le noyau par d\u00e9faut dans \/boot\/grub\/grub.conf sur le nouvau noyau.<br \/>\nOn red\u00e9marre et on prie \ud83d\ude09<br \/>\nsource : <a>http:\/\/www.delloye.org\/linux\/lxc.html<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Je viens de recevoir mon KS2G OVH et j&rsquo;aimerais y faire tourner des linux containers (lxc). Cependant, j&rsquo;ai constat\u00e9 que le noyau OVH manquait de pas mal d&rsquo;options notament sur le r\u00e9seau et les cgroups. Pour rem\u00e9dier \u00e0 tout \u00e7a, il va falloir compiler un nouveau noyau et tant qu&rsquo;\u00e0 faire le dernier en date [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[4],"tags":[],"class_list":["post-154","post","type-post","status-publish","format-standard","hentry","category-systeme"],"_links":{"self":[{"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=\/wp\/v2\/posts\/154","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=154"}],"version-history":[{"count":0,"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=\/wp\/v2\/posts\/154\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=154"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=154"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.marc-cesarine.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}