Le Blog Utux

HTTP 200 GET /

Migration vers Kubernetes

Rédigé par uTux Aucun commentaire

Kubernetes est probablement la technologie la plus complexe sur laquelle j'ai pu travailler cette année, à tel point que j'ai longtemps été réticent à m'y frotter. J'ai tout de même choisi de me faire violence et de persévérer car ce domaine est très valorisant et très valorisé. Utiliser un outil dans le cadre d'un réel besoin est le meilleur moyen pour apprendre, c'est pourquoi j'ai décidé de migrer mon blog et d'autres sites. Voici une vue d'ensemble du fonctionnement du blog dans Kubernetes, en sachant que le pod est composé d'un container OpenSMTPD (pour le formulaire de contact) et bien entendu d'un container Pluxml :

Schema utux Kubernetes

Note : Fait avec Diagrams (schema as code). L'Ingress Controller est Traefik (j'en parle plus bas).

Le changement n'a pas été instantané, loin de là, à vrai dire j'avais ce projet de côté depuis plus de 1 an. Mon idée de départ était de créer un cluster a plusieurs nœuds mais cela ajoute une contrainte au niveau du stockage, en effet il faut des volumes accessibles en réseau. La question des coût s'est posée également car mon blog n'est pas suffisamment important pour justifier 4 serveurs (3 noeuds + 1 NAS). J'ai donc fait des concessions et accepté d'utiliser un cluster Kubernetes à 1 nœud, avec la Storage Class par défaut de k3s (local-path). C'est donc un premier pas timide mais l'objectif est de me familiariser avec Kubernetes.

Logo k3s

J'ai utilisé k3s, le Kubernetes Lightweight de Rancher. Cette distribution a l'avantage d'être facile à installer (une commande curl) et d'avoir une emprunte mémoire assez limitée (même si ça reste beaucoup plus élevé que Docker). Par contre elle n'est pas miraculeuse et le côté "lightweight" s'est fait en excluant ou limitant certaines features. Par exemple pour la gestion des Ingress on a droit à un Traefik built-in en version 1.7 (donc legacy) absolument pas documenté pour la gestion des certificats Let's Encrypt. J'ai donc désactivé cette version et installé le Traefik 2.x de containous grâce à Helm. Cette version de Traefik est implémentée en tant que CustomResourceDefinition (aka CRD) et est documentée sur le site officiel. J'avoue quand même avoir passé 3-4 jours à faire fonctionner ces satanés certificats Let's Encrypt mais j'y suis finalement parvenu et j'ai beaucoup appris.

Un autre point sur lequel k3s est limité est la liste de Storage Classes. Dans Kubernetes, une Storage Class, est en quelques sortes un driver qui peut provisionner à la volée des PersistentVolumes (PV). Dans mon cas je comptais utiliser AzureFiles pour provisionner des partages depuis un Storage account sur Azure mais il semble que k3s ne l'implémente pas. En lisant cette documentation je crois comprendre que k3s ne propose qu'une Storage Class locale, c'est à dire sur le nœud qui exécute le pod. Quand aux backends supportés, je ne trouve pas de liste même si j'ai pu valider que NFS fonctionne bien.

Migrer le blog dans Kubernetes m'a déjà permis d'apprendre beaucoup de choses. Rien de plus gratifiant que le sentiment "j'ai compris !!!" après avoir passé des heures à essayer en vain de faire fonctionner une ressource. J'espère me motiver un jour à ajouter d'autres nœuds dans mon cluster, quand j'aurai résolu le problème du stockage.

Le PC portable de 2005 avec 2GB de RAM

Rédigé par uTux 4 commentaires

Il y a presque un mois, j'évoquais avoir retrouvé un Acer Aspire 3022WLMI et installé Debian Buster i386 pour tenter d'en faire quelque chose: Un pc portable de 2005 est-il utilisable en 2020 ? Le constat était bien triste: avec 512 MB de RAM il est impossible d'utiliser Firefox et d'aller sur le web. Poussé par la curiosité, j'ai commandé un kit 2x1 GB pour €12 (port inclus) afin de voir si cela allait débloquer la situation.

modules ram

Et il faut constater qu'en passant de 512 MB à 2 GB de RAM, les choses s'améliorent grandement pour le web. On peut enfin naviguer sans que la machine ne freeze mais il ne faut cependant pas crier victoire trop vite. Je vais régulièrement sur Youtube et les vidéo ne sont tout simplement pas lisibles même en 480p. Il faut se rappeler qu'en 2005 Youtube n'existait pas et que regarder une vidéo en ligne était synonyme de RealPlayer et de qualité de visionnage infâme. Dans tous les cas le décodage matériel n'existait pas sur PC, c'est donc le Sempron 3000+ qui hérite de cette tâche, en plus de devoir gérer tous les scripts pour faire fonctionner le site. Résultat, la vidéo saccade. J'ai essayé avec VLC (en utilisant la commande vlc suivie de l'url Youtube) mais le résultat n'est pas meilleur. De toutes façons, avec le WiFi limité à 54Mbps, la bande passante risquerait de poser un problème.

acer 3022wlmi

Comme on peut le voir sur cette image, la consommation de mémoire à vide est de 265MB pour Debian Buster i386 + Mate, ce qui me semble assez similaire aux chiffres de 2007-2008 dont je me souviens (sous Gnome2). Malheureusement la consommation à vide ne veut pas dire grand chose puisque Firefox et le web que l'on associait à des usages légers à l'époque sont aujourd'hui en état d'obésité morbide. Par ailleurs la consommation de mémoire d'un OS n'est pas le seul élément à prendre en compte, encore faut-il qu'il les utilise correctement. Par exemple Windows 10 est beaucoup plus gourmand mais dispose de mécanismes de compression de la mémoire et gère très bien son fichier d'échange, ce qui fait que même à saturation le système reste utilisable.

Initialement je réparais cette machine pour l'utiliser en attendant que mon Dell Latitude E5540 soit réparé, mais vu qu'entre temps j'ai acheté un Latitude 5500BTX, je n'en ai plus besoin et vais clore ce mini projet. Voici les conclusions que j'en tire :

  • Je suis bien content que Debian supporte encore le 32-bit, même si je ne suis pas contre l’arrêt du support de cette architecture.
  • Alors qu'à l'époque je galérais pour faire fonctionner le Wifi et la carte graphique, aujourd'hui tout fonctionne out-the-box. Le support matériel de Linux est aujourd'hui très bon.
  • Debian i386 + Mate ne semble pas consommer plus de RAM qu'à l'époque de Gnome 2, il y a plus de 10 ans.
  • Firefox et le web ne sont pas utilisables avec 512MB de RAM.
  • Cette machine ne vaut plus rien aujourd'hui, la DDR mobile non plus (€12 avec le port), il faut en profiter. Dans quelques années les PC de l'époque XP deviendront des collector, comme pour le DOS aujourd'hui.

Faut-il Marveliser Star Wars ?

Rédigé par uTux Aucun commentaire

Lorsque Disney a racheté la licence Star Wars, je me suis dit que cela pouvait être une bonne chose car après tout Star Wars a toujours été un empire commercial avec une histoire très manichéenne, ils sont donc faits pour s'entendre. J'étais ouvert à cette nouvelle postlogie (Episodes 7, 8, 9) en me disant que forcément ça n'allait pas être comme avant et qu'il allait falloir l'accepter. Mais j'ai quand même été déçu de l'Episode 7 en voyant qu'il s'agissait d'un remake assaisonné de fan service, qui au final n'avait rien à dire et ne faisait que rebooter l'histoire des rebelles contre l'empire et du gentil Jedi contre le grand méchant Sith et son bras droit. En résumé, ce que je reproche à cette postlogie :

  • Ce sont des films de commande, on a choisi des réalisateurs bankables et on leur a donné un cahier des charges : des sabres laser, des combats dans l'espace, la force, le bien VS le mal, des caméo, la lignée des Skywalker. Et mine de rien ça fait 40 ans que les films Star Wars sont comme ça, l'originalité est proche de zéro.
  • Les caméos ou les personnages ridiculement trop vieux qui ont été casés pour plaire aux fans. Le plus ridicule pour moi était Han Solo jusqu'à ce que j'apprenne le retour de Lando Calrissian dans l'Episode 9. On dirait une parodie...
  • Le manque de vision d'ensemble et la guerre intestine des réalisateurs, qui se sont contre-dits en allant parfois jusqu'au négationnisme de l'épisode précédent. Ainsi l'Episode 9 ignore complètement ce qui s'est déroulé dans le 8 comme si le film n'avait pas existé.
  • Le seul que j'ai aimé est l'Episode 8 car il posait enfin ses propres enjeux et allait à l'encontre de ce que tout le monde attendait. Manque de chance, c'est de loin le plus détesté de la postlogie.
  • Au final le fait que cette postlogie ne raconte rien d'intéressant.

On a beaucoup entendu parler de marvelisation de Star Wars, mais je ne suis pas d'accord car chez Marvel au moins c'est bien fait. Le grand méchant Thanos a été teasé pendant 10 ans et chaque personnage a été développé au maximum. Chaque héros a eu droit à son film pour ensuite converger sur un film global où tout se rejoint et où le grand méchant débarque enfin, pour mettre une claque monumentale à tout le monde. Et même si c'est une machine à fric parfois un peu trop formatée, au moins ça marche bien. Je n'ai pas honte de dire que Avengers Infinity War et Endgame sont peut-être les meilleurs blockbusters des 20 dernières années et que j'ai adoré ces films.

Cette postlogie de Star Wars a le cul entre deux chaises puisque chaque film a été géré de manière indépendante à la manière des Marvel, tout en essayant de rester une trilogie cohérente avec une vision à la George Lucas. Résultat l'échec est total et les films ne brillent dans aucun des deux aspects.

Si Disney n'a pas de vision d'ensemble pour la timeline de Star Wars et change de réalisateur à chaque fois, alors autant assumer à fond le concept de Marvellisation de la saga. Ainsi on pourrait imaginer des films sur plusieurs histoires ou personnages isolés, laissant à chaque fois entrevoir l'arrivée d'une menace plus grande provenant des confins de la galaxie. Voici ce que j'imagine déjà :

  • Un film orienté sur les Jedi, après la reconstruction de l'ordre par Luke Sywalker. Ce dernier pourrait être le héros, ou cela pourrait être un autre personnage, ou un groupe.
  • Un film sur les restes de l'Empire, avec pourquoi pas un groupe de déserteurs tentant de résister. Il permettrait d'introduire le fait que des amiraux sont restés fidèles à l'Empire et tentent de le reconstruire.
  • Un film un peu plus indépendant, qui pourrait par exemple suivre Han Solo et Chewbacca ou similaires. Ils n'auraient rien à voir avec la République ou l'Empire, et voyageraient dans différents mondes.
  • Un film d'espionnage centré sur la nouvelle république. Leia aurait pu être le personnage principal, ou pas. Il permettrait de montrer que la paix n'est pas revenue partout et que certains mondes sont restés fidèles à l'Empire.
  • Et lorsqu'on a bien monté l'intrigue avec nos films, présenté nos héros, posé les enjeux, on fait un Star Wars Infinity War dans lequel l'Empire débarque des confins de la galaxie, mené par nouvel antagoniste Sith, et met la misère à tout le monde. Et bien sûr on case nos batailles monumentales.

Tout ceci n'est que mon avis bien sûr car je crois que Disney peut faire de grandes choses avec Star Wars. Je crois qu'il faut renouveler la licence avec de nouvelles histoires et ne pas s'enliser éternellement dans la saga Skywalker avec du fan service. The Mandalorian et Rogue One sont la preuve que Disney est capable de bien exploiter la licence quand il se libère du lourd héritage des films.

A chacun d'entre nous de voter avec son portefeuille pour juger de la qualité des prochains films ;)

Dell Latitude 5500 BTX + Debian Buster

Rédigé par uTux 11 commentaires

Nouveau PC.

Comme dit précédemment, j'ai cassé l'écran de mon Latitude E5540 de 2013. J'ai commandé une dalle de rechange mais elle tarde à arriver et on ne peut jamais être certain de la qualité du produit étant donné qu'il ne s'agit pas d'une pièce officielle. Par exemple ma dernière dalle avait des angles d'affichage immondes. Je me suis donc posé la question de simplement acheter un nouveau PC portable, et c'est ce que j'ai fait.

Mes critères étaient les suivants :

  • Choisir un modèle dans une gamme professionnelle, j'ai plus confiance au niveau durabilité même si le prix peut être multiplié par deux.
  • Pas de GPU, ni AMD ni Nvidia. Je ne veux pas avoir à gérer Optimus et compagnie, ou avoir à traiter avec des drivers propriétaires sous Linux. De plus je ne compte pas jouer.
  • Écran 15,6 pouces minimum avec un grand angle d'affichage, si possible en technologie IPS.
  • Clavier rétro éclairé + pavé numérique.
  • Processeur 4c/8t, mémoire >= 8 GB, SSD >= 256 GB.
  • Des clic touchpad souples (oui c'est con mais je déteste les "clic clic" ou "tic tic" à répétition).
  • Une batterie de bonne capacité (assez difficile à estimer mais bon).
  • Une connectique standard car beaucoup de modèles n'ont pas de RJ45. J'en ai besoin.
  • Budget max €1000.

Après avoir tenu un comparatif de plusieurs modèles incluant Dell, HP et Lenovo (les Thinkpad), je suis finalement parti un Dell Latitude 5500 BTX pour ~€1000, je reste donc fidèle à la marque.

Latitude 5500 BTX

Le bazar

S'il y a une chose dont il faut parler, c'est du bazar absolu que sont les catalogues des constructeurs. Difficile de s'y retrouver quand la même machine existe en plusieurs versions et que les différences se situent dans les détails techniques. Dell fait fort avec parfois une dizaine de variantes du même modèle qui ont les mêmes caractéristiques mais pas les mêmes options. C'est le bordel absolu.

L'autre point qui m'a particulièrement agacé chez Dell est l'impossibilité d'obtenir des photo contractuelles des machines. Sur leur site il n'y a que des illustrations utilisées pour toute la gamme, et elles ne sont pas d'une grande utilité. Idem dans les manuels téléchargeables. Heureusement on peut en trouver chez les revendeurs (la photo que j'ai mis vient de LDLC) ou sur Youtube lorsque des tests ou des unboxing sont disponibles. J'avais besoin des photo pour voir à quoi ressemble le touchpad, et ce fut difficile à trouver.

La machine

Caractéristiques techniques:

  • Intel Core i5-8365U (4c/8t, de 1,6 à 4,1 GHz).
  • iGP Intel UHD 620.
  • 8 GB DDR4.
  • SSD NVMe 256 GB.
  • 15,6" 1920x1080 "grand angle", mat.
  • Clavier rétro éclairé.
  • Batterie 4 cellules, 68 Wh.

Oui, du Core i5. À une époque j'aurais exigé du Core i7 mais depuis qu'AMD écrase tout avec ses Ryzen, Intel a rendu ses i5 plus intéressants. On a bien 4 cœurs avec hyperthreading (donc 8 threads) mais avec des fréquences légèrement inférieures au Core i7 et un cache L3 moins important (6 MB au lieu de 8 MB). Cependant je suis prêt à sacrifier 10% de performances si ça me permet d'économiser €150, dans tous les cas le CPU est overkill pour mes besoins (loisirs et développement avec des langages qui n'ont pas besoin de compilation).

Sans aller jusqu'à dire que c'était un critère de sélection, j'aime le look sobre de la machine. Pas d’aluminium brossé, pas de sacrifice du port RJ45, pas d'excentricités. Le seul point notable est l'absence de lecteur DVD, mais on est en 2020 et personnellement je n'en ai pas besoin.

J'ai fait ma commande le Jeudi soir, la machine a été expédié le Lundi, et je l'ai reçue le Mercredi, livrée par UPS.

Latitude 5500 BTX

Le chargement se fait via le port USB-C, ce que j'ai trouvé surprenant au début, mais pourquoi pas. Si cela permet d'aller vers une unification des chargeurs alors c'est une bonne chose. Autre surprise: les boutons Function (par exemple pour augmenter le son ou la luminosité) sont par défaut prioritaires sur les touches F1-F12. Autrement dit, si on appuie sur F2, on baisse le son. Si on veut vraiment "F2", alors il faut faire FN+F2. Ce comportement est modifiable avec Fn + ESC, heureusement. Le rétro éclairage du clavier peut être désactivé ou diminué.

L'écran est plutôt bon et les angles sont corrects, bien moins fatigant pour les yeux que mon ancienne machine. Je ne saurais dire s'il s'agit d'une dalle IPS, l'information n'était pas donnée. Le son n'est pas trop mauvais, ce n'est pas de la "haute qualité" comme affiché sur le site de Dell, ça reste un PC portable.

Dans l'ensemble la machine est satisfaisante, très légère, très sobre, bien construite, mis à part l'autonomie batterie qui n'a rien d'exceptionnel et dont je vais reparler un peu plus loin.

Debian

Pas de Bios sur cette machine, uniquement UEFI (avec ou sans secure boot). Heureusement cela ne pose pas de problèmes à Debian qui s'installe sans broncher, avec le réseau en RJ45 car la carte Wifi a besoin d'un firmware propriétaire non inclus (on l'ajoute plus tard avec le paquet firmware-iwlwifi des dépôts non-free).

Je note avec amusement que l'installeur de Debian propose par défaut MATE alors que j'ai toujours pensé que c'était GNOME 3. Tant mieux. Par contre mauvaise surprise, le compositeur par défaut fourni avec MATE est désormais Compiz, et ça c'est pas cool. Déjà parce que j'ai passé l'âge des effets graphiques inutiles, mais aussi et surtout parce qu'il me provoque des bugs (freezes de plusieurs secondes) ou des désagréments, par exemple je ne peux plus agripper le bord d'une fenêtre en faisant ALT + clic droit. En installant le paquet mate-tweak j'ai pu remettre le compositeur par défaut, Marco, beaucoup plus fiable.

Pour faire fonctionner le Wifi, j'ai du ajouter les dépôts non-free et installer le paquet firmware-iwlwifi. Et c'est tout, le reste fonctionne out-the-box, même pas besoin du kernel des backports même si la machine est récente. L'autonomie batterie pourrait peut-être être améliorée avec un noyau plus à jour mais je n'ai pas encore essayé.

La batterie, parlons-en. Après 2 heures d'utilisation je tombe à 60%, ce qui donne (avec une règle de trois) une autonomie théorique de 5 heures. J'ai connu l'époque pas si lointaine où les PC portables avaient une autonomie standard de 1h30, et les plus économiques tiraient jusqu'à 3 heures. Donc en soit, c'est 5 heures c'est bien. Néanmoins mon E5540 avait une batterie 9 cellules qui tenait bien plus longtemps alors qu'elle va sur ses 7 ans. Je ne peux m'empêcher d'être un peu déçu surtout qu'il n'y a pas de GPU à alimenter. Mais ce n'est pas si grave.

Au niveau des performances, rien à redire. Le SSD en NVMe fait le boulot et les chargements sont instantanés. Mes petites machines virtuelles exploitent bien les 8 cœurs du CPU et ça dépote. Côté accélération graphique, je n'ai lancé que Stellarium pour l'instant et il cape à 60 fps donc tout va bien. Cet ordinateur offre un support exemplaire de Linux.

En résumé

Points positifs:

  • Les performances, le Core-i5 fait le taf et le SSD en NVMe est au top.
  • Le look sobre, le poids limité, la connectique.
  • Les angles de vue convenables pour l'écran.
  • Le son convenable pour un notebook.
  • Fonctionne parfaitement sous Linux Debian.

Points négatifs:

  • Autonomie batterie correcte (5 heures en théorie) mais moins bien que mon E5540.
  • Pas de touches multimédia (play/stop, previous, next).
  • Il faut démonter pour enlever la batterie.
  • Le prix ? Un peu cher mais c'est une gamme pro (intervention sur site en cas de problèmes). Et puis il faut relativiser, c'est moins de 50% du prix d'un Mac book pro.

J'attends quelques semaines avant d'apposer mon tampon "Utux approves" mais pour l'instant c'est bien parti.

EDIT: Je rencontre un bug étrange. Lors du démarrage, si la batterie est faible, le chargement se fige sur l'initramfs, juste après le grub. Pour pouvoir démarrer il faut soit ajouter acpi=off, soit brancher le chargeur. Peut-être qu'une mise à jour du bios réglera ce souci.

EDIT2: La mise à jour du firmware UEFI a bien résolu le problème de démarrage sur batterie.

EDIT3: Correction du nom, c'est bien le Latitude 5500 et pas E5500 (qui se réfère à une ancienne gamme).

Fil RSS des articles