Le Blog Utux

HTTP 200 GET /

pfSense, OPNsense, Endian, RouterOS

Rédigé par uTux 4 commentaires

J'utilise depuis quelques années un routeur ASUS RT-AC66U branché sur la freebox en bridge, principalement pour avoir du WiFi en 5GHz (le 2,4 étant saturé chez moi) mais aussi pour des fonctionnalités qui n'existaient pas quand je me suis abonné, par exemple le pare-feu et les dns ipv6. Ce montage fonctionne plutôt bien mais le routeur arrive aujourd'hui à ses limites :

  • Problèmes de performances avec OpenVPN (client et serveur) probablement à cause du CPU faiblard (MIPS 600 MHz). Les débits ne dépassent pas 1 Mbps.
  • Le firmware alternatif ASUS Merlin que j'utilisais a abandonné le support du RT-AC66U. J'ai du rebasculer sur le firmware ASUS officiel, toujours maintenu mais avec beaucoup moins de fonctionnalités.
Asus RT AC66U

J'envisage donc de changer de routeur et de mettre à niveau ma stack réseau avec au passage un ou plusieurs switches supportant les VLANs. J'ai envisagé plusieurs pistes :

  • Partir sur un routeur Mikrotik, car j'ai déjà travaillé avec ce matériel et j'adore RouterOS. De plus les prix sont très raisonnables.
  • Acheter un Linksys WRT (les gros routeurs bleus) car ces modèles ont l'air d'avoir une grosse communauté et énormément de firmwares alternatifs toujours maintenus.
  • Miser sur un APU Alix + pfSense / OPNsense. L'intérêt du x86 est que quasiment tous les OS fonctionnent dessus en natif.

Le routeur Linksys WRT a été rapidement éliminé car je prends le risque de retomber dans la même situation qu'avec le RT-AC66U, à savoir les firmwares communautaires qui ne sont plus maintenus ou trop limités.

J'ai été très tenté par un routeur Mikrotik malheureusement le support d'OpenVPN est extrêmement sommaire et ne correspond pas à mon besoin. Il est possible d'utiliser de l'IPsec (en IKEv2) mais pour une raison que j'ignore le flux ne passe pas à travers ma Freebox.

L'achat d'un APU Alix en x86 s'impose donc. Pour rappel, il s'agit d'un des nombreux modèles de SBC (Single Board Computer) au format mini-ITX construit par PC Engines. Grands fans de CPU AMD à basse consommation et de multiples interfaces réseau, ils sont très prisés pour faire des routeurs. En prime l'architecture x86-64 permet de faire tourner quasiment n'importe quel OS: Windows, Linux, FreeBSD, OpenBSD... ce qui donne au final un petit serveur mieux qu'un Raspberry Pi, même si le prix est bien plus élevé. L'inconvénient des APU Alix est qu'ils ne sont pas vendus dans la plupart des boutiques françaises, il faut donc aller chercher sur Amazon, eBay, Varia Store, ou d'autres revendeurs.

Alix APU 4d4

Pas de Wifi sur ce modèle, je vais devoir brancher mon Asus RT-AC66U configuré en mode point d'accès. En fait il est possible d'avoir du wifi directement sur le routeur Alix, mais c'est plus compliqué quand on veut du double bande 2,4 et 5 GHz car il faut deux cartes.

Reste à choisir l'OS qui sera installé pour faire office de routeur. Pour cela j'ai testé dans des machines virtuelles pfSense, OPNsense et Endian. Voici les résultats de ce POC :

  • Endian a une interface web trop limitée qui n'a quasiment pas évolué au cours des dernières années et ne permet pas de gérer un serveur OpenVPN, il faut passer par la CLI. J'ai donc abandonné assez rapidement cette solution.
  • OPNsense n'a pas été facile à prendre en main, l'interface moderne n'est pas très intuitive mais au final j'ai pu faire tout ce que je voulais. Malheureusement ma première mise à jour s'est faite dans la douleur, et lors de la seconde j'ai perdu la fonctionnalité de serveur DHCP. J'ai aussi de gros problèmes de lenteurs de l'interface avec Linux + Firefox ESR alors qu'avec Chrome pas de problèmes. Je n'ai donc pas un bon retour d'expérience concernant la fiabilité du produit.
  • pfSense est donc le gagnant par élimination. L'interface est différente d'OPNsense mais les fonctionnalités et la logique sont les mêmes. Le système de mises à jour est différent puisqu'il ne fonctionne pas par parquets mais au niveau de l'image dans son ensemble.

Il faut maintenant que je prenne le temps de configurer tout ça.

Projet d'achat #3: Courtière et visites

Rédigé par uTux 1 commentaire

Le temps passe et mon dernier article à ce sujet, l’œuf ou la poule, remonte à Octobre 2019. Pas facile de se motiver, pas facile de comprendre comment fonctionne ce marché, et pas facile de rester motivé quand on voit les prix exorbitants. Ce qui m'a aidé à reprendre mon projet, c'est le fait que mon entreprise côtise à un organisme qui accompagne les personnes dans leurs projets immobiliers (Action Logement), propose des courtiers, et le prêt 1% logement, le tout sans surcoût pour le salarié.

J'ai contacté cet organisme en Mars, à peu près une semaine avant le confinement, ce qui a rajouté un délai dans la démarche. Finalement j'ai pu discuter avec une courtière début Juin et me faire accompagner dans mon projet. J'ai donc une confirmation de mon budget et je comprends un peu mieux comment fonctionnent les banques et les agences ainsi que les différents frais à prévoir. La prochaine étape est donc de signer pour acheter un logement, afin de lancer les démarches pour l'emprunt.

J'ai lancé les recherches sur internet, sur différent moteurs, et en dehors de Nantes il n'y a vraiment pas grand chose. Dans la région que je cherche (Est et Nord-Est de Nantes), une fois qu'on a filtré par budget et enlevé tous les logements "avec locataire en place", il n'en reste qu'une petite dizaine. Difficile de dire si c'est un effet du confinement ou si c'est la situation normale. J'ai tout de même trouvé des choses intéressantes et en suis actuellement à ma troisième visite. La première s'est volontairement faite sur un logement imparfait pour me servir de brouillon et apprendre les règles du jeu des agences. Et s'il y a des mots que l'on entend souvent de la bouche des agents immobiliers, c'est :

  • "J'ai eu une personne intéressé(e) hier pour cet appart"
  • "J'ai deux visites programmées demain pour ce bien"
  • "Il y a déjà eu une offre je crois mais le propriétaire a refusé"
  • "Je sens qu'il va pas rester longtemps, tenez j'en ai encore vendu un similaire ce matin"

Difficile de savoir s'il s'agit de la vérité ou d'un moyen de mettre la pression à l'acheteur, peut-être un mélange des deux si le marché est aussi tendu que ce que les moteurs de recherches d'annonces laissent penser. S'agissant de mon premier achat et vu l'engagement que le crédit impose, je préfère jouer la prudence au maximum.

Au fur à mesure des annonces et des visites, j'ai appris que le logement parfait n'existe probablement pas, ou qu'il nécessite un budget plus élevé (adieu le T3 à moins de 20km de Nantes). Je vais donc essayer de faire un choix rationnel, en me disant que je peux toujours revendre et déménager dans quelques années quand mon budget ou ma situation auront évolué. J'ai tout de même l'impression d'avoir fait un grand pas en avant dans mon projet et lancé la machine. J'espère concrétiser un achat dans les prochains jours/semaines :)

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 ;)

Fil RSS des articles