Le Blog Utux

HTTP 200 GET /

Un peu de mécanique automobile

Rédigé par uTux 1 commentaire

Voici une aventure à la Cyrille Borne sur le thème des problèmes mécaniques d'une voiture qui a fait son temps. Il ne s'agit ici pas d'un Partner Diesel mais d'une 106 Essence avec plus de 265 000 km au compteur, un score plus qu’honorable pour ce type de motorisation. Il s'agit de la voiture de madame Utux qui s'en sert presque exclusivement en ville (et heureusement).

Alors que la voiture ne présentait pas de signes de faiblesse à part les bruits habituels, elle a un jour refusé de démarrer. Le démarreur avait de la peine à tourner, un symptôme qui indique en général que la batterie est déchargée. N'ayant pas de pinces pour la brancher sur un autre véhicule, j'ai donc poussé la voiture. Après avoir pris suffisamment d'élan, madame Utux qui était dedans a enclenché la seconde vitesse et embrayé, ce qui a permis de démarrer.

Nous avons donc décidé de faire un tour afin que la batterie puisse se recharger, mais une fois sortis du garage nous n'avons pu que constater que tout allait mal : essuie-glaces au ralenti, pas de clignotants, phares très faibles, voyants allumés sur le tableau de bord. Ces symptômes indiquent clairement un problème de tension électrique insuffisante donc l'alternateur ne semblait pas fournir assez de puissance. Au bout de 5 minutes environ nous avons décidé de faire demi-tour et de rentrer mais il était trop tard, la voiture a calé en arrivant à un feu rouge. Je suis donc descendu pour la pousser mais cette fois le moteur n'a pas voulu démarrer. Après avoir garé la voiture sur le bas-côté et attendu une dizaine de minutes nous avons fait un nouvel essai et cette fois nous avons réussi à la démarrer et à retourner à la maison.

Nous avons donc eu de la chance d'arriver à rentrer, mais l'aventure n'était pas terminée car il était maintenant l'heure de procéder au troubleshoot. Parce que oui on imagine bien que sur une voiture aussi vieille on a pas forcément envie d’appeler une dépanneuse et d'aller dans un garage, les frais sont trop importants. Si on reprend les symptômes, ils indiquent clairement un problème de tension électrique insuffisante pour alimenter les différents systèmes, mes doutes se sont donc orientés vers l'alternateur. Il s'agit-il d'un petit générateur électrique entraîné par le moteur thermique et dont le but est de fournir du courant pour alimenter les systèmes électriques de la voiture et recharger la batterie. Donc peu importe que cette dernière soit chargée ou pas, dès lors que le moteur est allumé l'alternateur prend le relais. Or dans notre cas il ne fournissait manifestement pas de jus ou pas assez vu les problèmes électriques rencontrés. Ma crainte était donc que l'alternateur soit HS et qu'il faille le remplacer, une tâche qui ne m'enchantait pas car mes compétences en bricolage sont assez limitées. Ce ne fut en fait pas le cas puisqu'en ouvrant le capot j'ai immédiatement vu ça :

Courroie manquante

Là on voit rapidement le problème, il devrait y avoir une courroie mais il n'y en a plus, l'alternateur n'est donc plus entraîné par le moteur, ça explique pourquoi il ne fournit plus de jus. En fait on voit la courroie en dessous, et pour l'avoir retirée je peux dire qu'elle était complètement râpée et il ne restait que des bribes de l'armature. J'en ai donc acheté une identique neuve sur eBay pour 7€ frais de port inclus. Mais une fois la courroie neuve entre mes mains, il me fallait encore trouver comment la changer. Mon premier réflexe fut d'aller sur Internet et je suis tombé sur un tutoriel assez bien fait sur astuces-pratiques.fr.

Et il s'avère que le changement de la courroie fut plutôt facile. Il suffit de disposer d'un jeu de clés (plates ou à pipes) et de ne pas avoir peur de s'allonger sur le sol. Il y a 1 vis à desserrer par dessus, une à desserrer par en dessous, et enfin une vis dont le pas permet de régler la tension de la courroie en avançant ou en reculant l'alternateur. J'ai du le réduire au minimum afin de pouvoir passer la nouvelle courroie puis le retendre jusqu'à la moitié du pas de vis à peu près. Pour m'assurer que la tension de la courroie était correcte (ni trop faible ni trop forte) on m'a conseillé de la pincer et voir si elle pouvait se tordre d'un 1/4 de tour. Et après avoir fini le montage, voilà à quoi ressemblent l'alternateur et sa courroie :

Nouvelle courroie en place

C'est beaucoup mieux avec une courroie ! Et entre temps nous avons pu nous procurer des pinces ce qui permet de démarrer la voiture sans devoir la pousser. J'ai donc amené ma propre voiture et, en laissant le moteur tourner, j'ai branché les batteries respectives en parallèle (le plus avec le plus, le moins avec le moins). C'est ainsi que la 106 a repris vie, le démarreur a fonctionné et le petit moteur de 50 ch a démarré. Nous avons laissé le branchement une dizaine de minutes avant de le défaire. Depuis tout va bien, les essuie glace vont à la bonne vitesse, les phares et clignotants fonctionnent, et la batterie s'est suffisamment rechargée pour démarrer en autonomie.

Au final je suis plutôt fier de cette réparation qui a nécessité 7€ et un peu d'huile de coude. Il est parfois bon de sortir de son domaine et de profiter des ressources à notre disposition sur Internet.

Ordinosaure - Episode 1: Dallas, la pile impitoyable!

Rédigé par uTux 4 commentaires

Peu avant le confinement, j'ai récupéré un ordinosaure qui partait à la poubelle. C'était véritable aubaine pour moi et mon âme de collectionneur de vieux hardware. Il m'a tapé dans l’œil avec son connecteur DIN (pour le clavier) et son bouton turbo et je me suis dit que j'avais sûrement trouvé un des premiers Pentium. Avec un peu de chance peut-être y aurait-il aussi une carte Sound Blaster Pro / 16 en ISA. J'ai donc ramené le tout chez moi.

Ordinosaure
Il est bon pour la casse! - Luke Skywalker.

Je n'avais jamais entendu parler de la marque MIPS, et vu qu'il s'agit aussi du nom d'une architecture de processeur, il est très difficile de trouver des informations sur Google. En m'adressant à un groupe de passionnés sur Facebook, il semble que MIPS était une boutique de micro informatique nantaise. J'ai pu extraire les caractéristiques de la machine:

  • Carte mère au format Baby AT
  • Pentium 120 MHz
  • 24 MB de RAM
  • Carte VGA Cirrus Logic
  • Carte son ISA OPTi 82c929

La grande question que je me suis rapidement posé est de savoir s'il fonctionne encore car hormis l'état de sa façade il était en plus stocké en extérieur. Pour pouvoir le tester il me fallait un clavier avec un connecteur DIN, j'ai donc du commander un adaptateur sur Internet. En attendant qu'il arrive j'ai branché et allumé la machine pour constater que le POST s'affiche mais qu'il bloque sur un classique message "Keyboard error press F1 to RESUME", donc impossible d'aller plus loin.

Keyboard error
Le grand classic du clavier non détecté, press F1

Comme je m'en doutais, la pile du Bios est HS, mais à ce moment là je pensais que le seul impact serait la perte de l'heure et des paramètres du lorsque l'alimentation est débranchée, alors que c'était en fait beaucoup plus grave.

Après avoir reçu l'adaptateur DIN/PS2 (ce qui a pris deux bonnes semaines en raison du confinement), j'ai enfin pu passer ce message d'erreur en appuyant sur F1. Malheureusement la machine ne bootait toujours pas et demandait cette fois d'insérer une disquette. J'ai d'abord soupçonné que le disque dur soit HS mais en le branchant en USB dans un autre PC j'ai pu valider qu'il fonctionnait parfaitement. Ma seconde piste fut donc d'aller dans le Bios pour modifier les paramètres. Mais je me suis aperçu qu'il était impossible de les modifier car non persistant aux redémarrages. En parallèle à cela, j'avais un message "FDC error" (floppy disk controler) ce qui m'a rapidement amené à soupçonner que ces erreurs étaient dues à la pile CMOS, il allait donc falloir la changer. Le hic c'est que dans les années 90 on utilisait pas de pile bouton facile à remplacer, mais un des dispositifs suivants:

  • Soit une grosse pile infâme soudée sur la carte mère ayant tendance à couler et pourrir le reste des composants.
  • Soit un petit chip DALLAS soudé contenant l'horloge RTC, les paramètres du Bios et une pile.

Je digresse un peu mais on avait donc dans un cas une pile soudée qui finit par couler et détruire la carte mère, et dans l'autre cas une pile soudée impossible à changer. L'informatique ce n'était donc pas mieux avant.

A la lecture du titre de cet article vous aurez compris que je suis dans le second cas, j'ai ce petit chip RTC DALLAS que je vais nommer "pile DALLAS" pour plus de facilité.

Dallas RTC
Le petit composant de l'enfer.

Ma première piste fut donc de prendre la référence et d'acheter une pile de rechange sur eBay. J'en ai commandé deux en état "neuf" dont une seule est arrivée. J'ai passé beaucoup de temps à dessouder la pile existante car mon fer de 25W n'était pas assez chaud pour travailler dans de bonnes conditions (et impossible d'en changer car les magasins de bricolage étaient fermés). Après avoir réussi à l'extraire, j'ai soudé la pile "neuve" d'eBay à la place pour constater que rien ne changeait, le système indiquait toujours qu'elle était HS et refusait de booter. En fait il semble que la pile est bien "neuve" mais issue d'un stock de l'époque, donc totalement épuisée. Les joies d'eBay.

Ma seconde piste fut donc de "modder" la pile DALLAS. En effet je ne suis pas le premier à avoir ce problème et beaucoup de bricoleurs ont remarqué qu'il suffit de scier/limer le chip pour accéder aux bornes de polarité de la pile. A partir de là il est possible d'y souder une pile externe. On trouve de nombreux tutoriels à ce sujet. N'ayant ni Dremel ni scie, j'ai utilisé une simple lime et finalement le mod fut assez simple à réaliser.

Dallas modded
La pile moddée remise en place.

Après avoir réalisé le mod (avec une pile bouton CR2032) et soudé le tout sur la carte mère, le message CMOS Battery n’apparaît plus et la machine a booté... sur Windows 95 ! Et que dire à part que c'est un grand retour en arrière, la dernière fois que j'ai utilisé ce système d'exploitation c'était probablement au collège, fin 90 début 2000. Pour corser le tout j'ai tout fait au clavier car je n'ai pas de souris à brancher sur un port série. Au risque de faire mon vieux con, je suis toujours étonné qu'on arrive à faire tourner un OS graphique complet avec seulement 24 Mo de mémoire vive, de manière plutôt correcte. Linux, Android, iOS et Windows devraient s'en inspirer! Point.

Windows 95 au boot
Ça rappelle des souvenirs n'est-ce pas ?

Ce projet ayant duré plusieurs mois, je dois dire que je suis satisfait d'avoir réussi à faire démarrer la machine. L'état de Windows 95 semble indiquer qu'il a été utilisé jusqu'en 1999 et je ne peux que supposer que le PC a ensuite dormi dans un grenier pendant 21 ans avant d'entre envoyé à la poubelle et de finir entre mes mains.

Le Pentium
Le CPU.

La prochaine étape est de remplacer le disque dur par une carte compact Flash et y installer MSDOS 6.22 pour en faire une machine de retro gaming. A bientôt pour de nouvelles aventures dans le monde des années 90!

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.

Fil RSS des articles