Toutes les newsletters
#82

Newsletter du 21 Septembre 2026

open sourceCiliumKubernetesAPIRESTbackupsGitJSONmonitoringself-hostingOpenTofuIPv6SREIA

J'ai longtemps cherché quelqu'un de neutre à qui raconter mes réunions au boulot, mes déboires et mes états d'âme. Un psy, c'était trop cher alors j'ai écrit un script Python qui transforme mon desktop en R2-D2.

Je lui parle, il reconnaît quelques mots, il bipe, il n'interrompt jamais, ne juge jamais et n'a aucun avis tranché sur rien. C'est la meilleure écoute active que j'aie jamais eue pour zéro euro la séance.

Chaque matin je dis "bonjour D2". D2 bipe et ma femme lève les yeux au ciel.

Je lui ai demandé s'il avait bien dormi et il a bipé, j'ai pris ça pour un oui. Ma femme a levé les yeux au ciel un peu plus haut.

Le souci c'est que D2 comprend ce qu'il veut. Je dis "D2, joue un son", il entend "déjà un saumon". C'est pas super grave, il bipe quand même avec conviction, comme un vrai thérapeute qui n'écouterait pas mais hoche la tête.

Ma femme dit que je parle plus à D2 qu'à elle alors j'ai demandé à D2 et il a bipé. Débat clos.

Cyril

La pépite de la semaine

La Linux Foundation et LF Energy proposent un framework coûts-bénéfices pour aider les gestionnaires de réseaux électriques à comparer solutions open source et propriétaires. Coûts, risques, valeur stratégique et sociétale, tout est converti en euros puis résumé en un seul indice, format idéal pour un comité de direction pressé. Verdict, l'open source rapporte deux à cinq fois plus. Alors je suis à fond pour l'open source hein mais une étude signée par la fondation qui héberge les projets évalués et nourrie par les chiffres de leurs propres utilisateurs, ça ressemble moins à un audit qu'à une plaquette commerciale avec des formules (ce qui ne la rend pas fausse mais juste prévisible). Reste que chiffrer enfin la valeur de l'open source ouvre peut-être la voie à des études plus neutres.

Lire l'article

Le coeur de la veille

Cilium 1.20 Deuxième version majeure de l'année pour le CNI qui a mangé tous les autres. Au programme, Gateway API qui passe en v1.6 avec TCPRoute et UDPRoute, de quoi enfin exposer une base ou un serveur DNS sans repasser par un Service LoadBalancer bricolé, et le filtre ExternalAuth qui authentifie les arrivants avant qu'ils ne touchent l'application. Le reste de la liste parle de netkit, de ztunnel, d'agrégation d'identités dans la BPF policy map et de plugins de datapath. J'ai lu, j'ai hoché la tête, et j'ai compris qu'il fallait que je m'y remette sérieusement.

You can refactor everything except your API Créer une API prend dix minutes, la regretter prend des années. Ce chouette billet rappelle la loi la plus cruelle du métier : le champ que vous avez nommé à la va-vite un jeudi soir est désormais gravé dans le contrat, consommé par un partenaire externe que vous ne contrôlez pas et vous le traînerez jusqu'à votre retraite. Au menu, le modèle de maturité de Richardson, le niveau 3 que personne n'atteint, PUT contre PATCH, les collections qu'il faut emballer dans un objet dès le premier jour sous peine de casser tous les clients le jour où la pagination arrive, et les codes d'erreur qui renvoient 200 avec le message d'échec planqué dans le corps. Sa conclusion est obvious, il suffit de prendre les bonnes décisions avant la mise en prod, c'est-à-dire exactement au moment où personne ne sait encore à quoi sert le service.

Backups aren't simple Tout part d'un drame familial, les photos de famille effacées en voulant brancher un disque sur le décodeur TV, et on remonte pas à pas sur tout ce qu'implique une vraie sauvegarde. Chaque solution ajoute un mot à la liste : une copie ailleurs, puis des snapshots pour revenir en arrière, puis une rotation GFS pour ne pas exploser le stockage, puis la dédup, puis les bases de données à dumper, puis la règle 3-2-1, puis le stockage objet qui perd les métadonnées et facture au fichier. Sa conclusion est la bonne : arrêter les frais et utiliser Borg ou Restic qui règlent tout ça depuis des années. À la fin on obtient une sauvegarde chiffrée, dédupliquée, GFS, archivée, cloud et 3-2-1, et parfaitement inutile tant que personne n'a testé la restauration.

Git rebase -i is not that scary Un dev junior découvre que le rebase interactif terrorise des collègues qui ont quinze ans de métier et un avis tranché sur tout le reste. Son argument tient en une phrase : la commande ouvre un fichier texte, vous écrivez drop devant le commit "WIP ne pas merger" et l'honneur est sauf. Le seul vrai danger, c'est --force au lieu de --force-with-lease, et là on parle d'un message d'excuses dans le slack de l'équipe.

/usr/local/bin

Jid Pour ceux qui, comme moi, rouvrent la doc de jq à chaque fois, jid permet de fouiller un JSON en mode interactif : je tape le chemin, Tab complète, le résultat s'affiche en direct. Il gère JMESPath, et une option recrache la requête au format jq prête à coller dans un script pour faire croire aux collègues que je l'ai écrite de tête.

Checkmate Je viens de découvrir cette chouette alternative à Uptime Kuma et elle vaut le détour. HTTP avec expiration des certificats, ping, port, DNS, Docker, gRPC, WebSocket, serveurs de jeu, tout y est, plus un agent nommé Capture pour remonter CPU, RAM, disque et température. Les monitors Docker vont jusqu'à récupérer l'état, la santé et les logs de chaque conteneur, à condition d'accepter de monter la socket ou de générer un mutual TLS complet, avec CA maison et certificats à la main. Pour les notifications il y a de quoi se faire réveiller sur à peu près tout ce qui existe, de Slack à ntfy en passant par Telegram.

Opendepot Un registre auto-hébergé pour vos modules et providers OpenTofu et Terraform, natif Kubernetes, qui implémente les trois protocoles officiels. De quoi garder la main sur la distribution, le versionnage et le stockage sans dépendre du registre public. Déployable via chart Helm, avec authentification GitHub App et RBAC Kubernetes. Le jour où le registre public tombera, vous serez le seul du bureau à pouvoir encore détruire votre infrastructure en toute autonomie.

K10s Une visualisation hiérarchique de votre écosystème K8s, des superclusters jusqu'aux pods, en passant par les pools et les nœuds le tout en s'appuyant bien sûr sur l'API Kubernetes. Déploiement en un kubectl apply, deux secrets à créer, et vous avez enfin une vue d'ensemble sur votre bordel. Attention toutefois, voir l'ensemble de son architecture affichée d'un coup peut provoquer des réactions imprévisibles.

En bref

How senior leaders disrupt incidents just by showing up Un VP rejoint un canal d'incident et demande poliment quel est l'impact client. Aussitôt, tout le monde arrête de réparer la prod pour se demander qui doit répondre, si les priorités viennent de changer et s'il est temps de mettre à jour son CV. Brent Chapman compare ça à un porte-avions qui entre dans un port : il ne fait rien de mal, il est juste énorme, et tous les petits bateaux changent de cap. Le pire, c'est que ça marche aussi quand le dirigeant ne dit rien, sa simple présence suffit à faire transpirer le canal. Moralité, pendant un incident, le dirigeant le plus utile est celui qui ne vient pas.

The shortest IPv6 addresses Un curieux s'est demandé quel serait l'équivalent IPv6 le plus court de 1.1.1.1. Réponse théorique : une adresse du genre X::, avec un seul groupe non nul, ce qui laisse 8192 candidates dans la plage réellement routable. Réponse pratique : il les a toutes pingées une par une avec un script fish, parce qu'un problème qui tient en treize bits se règle à la force brute. Sur 8192 adresses, quatre répondent depuis une connexion résidentielle, dont deux qui servent vraiment du DNS, et trois de plus depuis un autre réseau, dont une qui répond sans que l'auteur sache pourquoi. Je retiens surtout que le 1.1.1.1 de l'IPv6 existe, qu'il tient en six caractères, et que personne ne le retiendra non plus.

Sous les pavés l'IA

I tried running AI locally to save money John Liter voulait économiser sur ses tokens en faisant tourner Qwen sur sa RTX 5070, jusqu'à ce que son onduleur de 400 VA se mette à hurler sous le bureau. Bilan, du matériel à racheter, une application de monitoring développée pour l'occasion et toujours pas la moindre économie.

How to build a LSP plugin for Claude Code Claude écrit du code valide mais ignore royalement les conseils qu'un serveur de langage souffle à un humain dans son éditeur. CircleCI explique donc comment en emballer un en plugin, avec un proxy JSON-RPC obligatoire sinon Claude Code envoie vos charts Helm se faire valider comme des configs CircleCI.