Google PlusFacebookTwitter

Swift et l’optimisation système

By on Jan 16, 2015 in Devel, Linux, OpenStack | 0 comments

Optimiser Swift c’est bien, optimiser le système c’est mieux ! Il y a quelques mois, j’ai eu envie de m’essayer à l’optimisation de Swift. Pour ceux qui auraient besoin d’un petit rappel sur ce qu’est Swift, c’est un système distribué de stockage d’objets, extensible et redondant. Swift est aussi connu sous le doux nom d’OpenStack Object Storage. Généralement, l’optimisation de Swift consiste à modifier le nombre de worker et de concurrency, c’est bien mais ce n’est pas suffisant. Swift étant destiné à du stockage de fichiers redondés, il se base donc sur deux principaux composants matériels du serveur (sans compter le processeur et la mémoire): Le disque dur La carte réseau Se sont donc ces deux composants qu’il faudra optimiser sous Linux. Pour se faire, il sera nécessaire de passer par le sysctl...

Un goût de kpatch pour Debian GNU/Linux Wheezy (7.x)

By on Juil 21, 2014 in Devel, Linux | 0 comments

Kpatch et Wheezy, ça fonctionne ! Dans le précédent billet sur kpatch (cf. Kpatch, une alternative libre pour patcher son noyau à chaud !), je contais mes déboires à installer kpatch sur Debian GNU/Linux Wheezy : Dans un premier temps, j’ai essayé de faire fonctionner kpatch sur une Debian 7.5 (alias Wheezy) mais ce fut laborieux. Par laborieux je veux dire que Wheezy est trop ancienne pour que kpatch puisse fonctionner out of the box. Hélas, Jessie n’est que la version testing du projet du Debian. Cela signifie que cette version ne peut pas être installée sur un serveur de production. Comme dit dans le précédent billet, Wheezy embarque une version 4.7.2 de gcc et un noyau Linux 3.2 alors que les pré-requis de kpatch sont minimums gcc 4.8.0 et un noyaux Linux 3.7. Après quelques heures passées à essayer de faire fonctionner kpatch sur Wheezy, j’ai enfin réussi à les faire...

Kpatch, une alternative libre pour patcher son noyau à chaud !

By on Juil 2, 2014 in Devel, Linux | 3 comments

I had a dream… Kpatch ! Bon, c’est vrai, je le reconnais, je m’emballe légèrement.  🙄 Enfin une solution prometteuse permettant d’appliquer les mises à jour de sécurité (et autres) du noyau à chaud, ce qui veut dire sans redémarrage du serveur. Avant, il existait Ksplice, une solution propriètaire détenue par la société Oracle mais ça c’était avant ! Depuis quelques mois, RedHat et Suse se sont lancés dans la bataille pour chacun fournir leur solution alternative. Pour RedHat : kpatch Pour Suse : kgraft Pour ma part, je n’ai pas eu l’occasion de « jouer » avec kgraft, si vous avez déjà côtoyé la bête, n’hésitez pas à partager votre retour d’expérience. Comment ça fonctionne ? Je vais faire très simple et très rapide : kpatch permet de remplacer une fonction par une autre à l’aide d’un module noyau. Pour la version longue...

Mise en place de Kdump à l’aide de Puppet

By on Avr 14, 2014 in Linux | 0 comments

Kdump un standard en devenir (si si si) Il va de soit que c’est un avis personnel mais à mon sens, avoir un serveur sans Kdump c’est comme rouler en voiture sans feux de croisement (superbe analogie, non ?). Pour une petite piqûre de rappel sur ce qu’est Kdump et à quoi il sert, je vous invite à parcourir les liens suivants : http://blog.incloudus.com/2013/kdump-tools-et-kdump-install-par-lexemple http://blog.incloudus.com/2013/lutilisation-de-kdump-sur-debian-wheezy http://wiki.incloudus.com/display/DOC/Debian+-+Kdump Les liens ci-dessus traitent de l’installation manuelle de Kdump sur une distribution Debian GNU/Linux, c’est bien, c’est fonctionnel mais quid de l’industrialisation du déploiement de Kdump sur l’ensemble d’un parc informatique ? Et pourquoi pas avec Puppet ? Il existe plusieurs outils d’industrialisation, dont...

Kexec et l’appel système (syscall) shutdown(8)

By on Jan 21, 2014 in Linux | 0 comments

Dans le doute tu rebootes, pas si facile avec kexec ! Ça vous est forcement arrivé, ce moment de solitude, mais si, vous savez, celui qui vous rend perplexe lorsque vous exécutez un simple init 6 ou reboot. Celui où vous vous attendez à voir le BIOS (qui met quinze plombes à charger) de votre serveur apparaître à l’écran alors qu’en fait ce n’est qu’une séquence de démarrage de votre noyau. C’est bon, ça vous revient à l’esprit ? Vous vous souvenez donc ce que vous avez fait par la suite, un reboot -f bien moche qui passe outre l’init (d’ici, j’arrive à voir la honte sur votre visage). Vous n’êtes quand même pas allés jusqu’au reset matériel ? J’avoue, je l’ai fait… Ne me regardez pas comme ça ! 😯 L’explication du pourquoi du comment Pourquoi les commandes init 6, reboot et shutdown -r now ne...

Linux From Scratch et ARM Cortex-A7 – Partie 2

By on Nov 27, 2013 in Embarqué, Linux | 4 comments

La chaîne de compilation, une étape qu’elle est cruciale !! Première phrase et déjà une superbe faute de français… tout fout le camp ! Dans le premier billet de cette série (cf. Linux From Scratch et ARM Cortex-A7 – Partie 1),  j’ai évoqué ce qu’était une chaîne de compilation a.k.a une toolchain dans la langue de « ChaQueSpéAre ». Pour ceux qui ont la flemme de lire ou relire ce billet voici ce que vous auriez du retenir : Une chaîne de compilation est un groupe d’outils permettant la compilation d’un programme d’une architecture processeur à une autre. En général, on y trouve les outils suivants : Binutils, Cloog, eGlibc, GCC, GMP, ISL, Noyau Linux, MPC, MPFR. Ces librairies sont nécessaires à la compilation de GCC (cf. http://gcc.gnu.org/install/prerequisites.html). Toujours dans mon précédent billet, j’ai évoqué plusieurs possibilités pour la...