Hébergement Helm Charts : Harbor, ArgoCD ou ChartMuseum pour votre Lab ?

Hébergement Helm Charts : Harbor, ArgoCD ou ChartMuseum pour votre Lab ?

> helm repo add chartmuseum http://localhost:8080_

Helm Charts : Pourquoi j'ai choisi ChartMuseum pour mon Lab local

Par Nicolas DELAHAYE | v.1974 | Architecte Solution STRATÉGIE: Simplicité vs Robustesse de production

Je construis actuellement un environnement de développement pour une solution déployée sur Kubernetes. Pour l'infra, j'utilise Helm Charts (simple, efficace, facile à injecter via Ansible ou Terraform). Mon problème ? Je voulais un dépôt de Charts qui ne soit pas juste un dossier local (trop éloigné de la prod), mais sans pour autant lancer une "Death Star" comme ArgoCD ou Harbor sur mon MacBook. Je veux déclencher la mise à jour seulement quand mon Chart est "OK", et non à chaque micro-modification locale.
Avantages Inconvénients
Ultra complet, sécu (Trivy), signatures. Très lourd à déployer en local.
Le roi du GitOps en production. Surdimensionné pour un simple test de Chart.
Simplicité absolue (Nginx/Apache). Pas d'API, pas de gestion de versions.
Léger, API de dépôt, stockage cloud. Moins de fonctions de sécurité avancées.
J'ai choisi ChartMuseum car c'est un projet officiel de l'univers Kubernetes (CNCF). C'est écrit en Go, c'est ultra-léger et cela fournit exactement ce dont j'ai besoin : un vrai dépôt de Helm Charts accessible via une API. Cela me permet de tester le cycle de vie réel de mes déploiements sans l'overhead d'un registre d'artefacts d'entreprise.
Une fois votre instance lancée (via Docker ou en binaire), voici le workflow minimaliste : Étape 1 : Packager votre Chart
$ helm package ./mon-beau-chart

// Cela génère un fichier .tgz prêt pour le dépôt.

Étape 2 : Envoyer au Chartmuseum
$ curl --data-binary "@mon-beau-chart-0.1.0.tgz" http://localhost:8080/api/charts
Étape 3 : Déployer votre chart
$ helm install mon-beau-chart chartmuseum/mon-beau-chart
// RÉFLEXION DE NICO : En tant qu'architecte, on est souvent tenté par les solutions "Rolls-Royce" (Harbor, ArgoCD). Mais le vrai Craftsmanship, c'est de savoir choisir l'outil proportionné au besoin. ChartMuseum me permet de simuler un flux de production tout en restant sur un environnement local fluide. C'est propre, c'est net, c'est efficace.
Cygwin vs MSYS2 : Quel environnement choisir pour Windows ?

Cygwin vs MSYS2 : Quel environnement choisir pour Windows ?

> diff cygwin msys2 --brief_

Cygwin ou MSYS2 ? Mon arbitrage pour un Lab Kubernetes sous Windows

Par Nicolas DELAHAYE | v.1974 | Architecte Solution

CONTEXTE: Environnement Cross-Platform (Win/Linux)


Dans mon équipe, nous avons deux clans : les puristes Linux et les utilisateurs Windows. Pour mon projet de lab Kubernetes (3 nodes, cassables et reconstructibles en moins de 5 minutes), l'environnement doit tourner de manière identique partout.

Le choix de la virtualisation s'est imposé, et comme vous le savez, j'ai opté pour QEMU (voir mon article précédent). C'est en cherchant le portage de QEMU sur Windows que je suis tombé sur MSYS2. Alors que j'avais déjà Cygwin et WSL2, j'ai voulu creuser. Voici pourquoi j'ai fini par changer mon fusil d'épaule.

Cygwin est un monument. Son but : recréer un environnement Unix complet sous Windows via une couche de compatibilité (cygwin1.dll).

  • Forces : Collection immense d'outils, très proche d'un vrai Linux.
  • Faiblesses : Une couche d'émulation lourde qui impacte les performances. Les binaires produits sont "prisonniers" de la DLL Cygwin.

MSYS2 est arrivé avec une philosophie différente : fournir un shell Unix léger mais orienté vers le développement natif Windows.

  • Le Graal : Il utilise pacman (le gestionnaire de paquets d'Arch Linux). C'est rapide, moderne et propre.
  • Intégration : Parfait pour piloter Vagrant, Ansible et QEMU sans les frictions de compatibilité de Cygwin.
Cygwin MSYS2
Moyenne (Émulation) Excellente (Natif)
Setup.exe manuel Pacman (CLI)
Dépendants DLL 100% Windows natifs
Peu adapté Idéal

Pour mon lab piloté par Vagrant et Ansible, MSYS2 l'emporte car :

  1. Il ne nécessite pas de contraintes GPL lourdes sur les binaires.
  2. Il s'aligne avec les outils modernes (CMake, Ninja, Git).
  3. L'installation de QEMU y est d'une fluidité exemplaire.

// LE MOT DE L'ARCHITECTE :

Cygwin reste pertinent pour des scripts historiques ou des besoins POSIX très stricts. Mais aujourd'hui, pour monter des toolchains modernes et des pipelines DevSecOps robustes sur Windows, MSYS2 est le choix par défaut. C'est l'outil qui m'a permis de faire tenir mon lab Kubernetes dans ma poche (ou presque).

Mémento QEMU : Dompter vos VMs en ligne de commande (Guide)

Mémento QEMU : Dompter vos VMs en ligne de commande (Guide)

> man qemu-maintenance.sh_

Mémento : La maintenance QEMU en ligne de commande

Par Nicolas DELAHAYE | v.1974 | Architecture & Automation

OBJECTIF: Zéro interface graphique. 100% efficacité.


Installer QEMU sur son Mac via Brew, c'est une chose. Le piloter au quotidien sans s'emmêler les pinceaux, c'en est une autre. Voici mon "disque dur externe" de commandes pour gérer mes nodes Kubernetes sans passer par une GUI lourde.

Si vous utilisez QEMU seul ou via un wrapper, le plus simple pour voir ce qui tourne est de vérifier les processus systèmes (le bon vieux grep) :

$ ps aux | grep qemu-system

// Note : Si vous utilisez libvirt (souvent avec Vagrant) sur Linux, la commande est plus élégante : `virsh list --all`

Avant de lancer une VM, il faut un disque. Le format qcow2 est le standard : il est "thin provisioned" (il ne prend que la place réelle des données).

$ qemu-img create -f qcow2 mon-node-kube.qcow2 20G

Pas besoin de menu "Settings". Tout se passe dans les flags au lancement. Pour ajouter de la RAM ou des CPU à la volée :

$ qemu-system-x86_64 -m 4G -smp 2 -hda mon-node-kube.qcow2

-m 4G : Alloue 4 Go de RAM.
-smp 2 : Alloue 2 cœurs CPU.

L'avantage du format qcow2, c'est qu'il gère les snapshots en interne. Très utile avant de faire une mise à jour risquée sur un cluster Kubernetes.

Créer un point de restauration :

$ qemu-img snapshot -c backup_stable mon-node-kube.qcow2

Revenir en arrière :

$ qemu-img snapshot -a backup_stable mon-node-kube.qcow2

Ici, pas de corbeille. On supprime l'image disque et, si elle était enregistrée dans libvirt, on l'efface de la base.

$ rm mon-node-kube.qcow2
$ # Ou via virsh :
$ virsh undefine mon-node-kube

// RÉFLEXION DE SENIOR :

Maîtriser ces commandes, c'est s'assurer que votre infrastructure est reproductible. Une fois que vous connaissez ces flags, vous pouvez les mettre dans un script Bash ou un playbook Ansible. C'est ça, le vrai DevSecOps : transformer la maintenance manuelle pénible en un processus automatisé et robuste.

[ LOGOUT - Session Ended ]

Alternative VirtualBox sur Mac Silicon : Pourquoi QEMU est l’arme ultime pour votre Lab Kubernetes

Alternative VirtualBox sur Mac Silicon : Pourquoi QEMU est l’arme ultime pour votre Lab Kubernetes

> cat articles/virtu-alternative-vbox.md_

Kubernetes sur Mac M3 : Pourquoi j'ai dit adieu à VirtualBox pour QEMU

Par Nicolas DELAHAYE | v.1974 | Architecte & Coach Agile

TAGS: #Kubernetes #CKA #CKS #QEMU #Vagrant #Ansible #MacOS #DevSecOps


Dans le cadre de ma préparation aux certifications CKA (Certified Kubernetes Administrator) et CKS (Security Specialist) de la Linux Foundation, j'ai dû faire face à un problème de riche.

Le cursus propose de monter un lab de 3 nodes (1 Control Plane et 2 Workers). Jusque-là, tout va bien. Sauf que la formation suggère d'utiliser Google Cloud (GCP) ou Amazon AWS. En tant qu'entrepreneur et techos pragmatique, payer des instances à l'heure alors que j'ai un MacBook Pro 2024 (puce M3) flambant neuf sous les doigts, ça me pique un peu.

Pourquoi louer chez Bezos ce que je peux héberger localement ?

Mon premier réflexe ? VirtualBox. On se connaît depuis 15 ans. Mais soyons honnêtes : sur les architectures modernes (Silicon Apple), VirtualBox est devenu un "pachyderme".

C'est lourd, ça consomme des ressources de manière déraisonnable, et la configuration réseau est parfois un vrai casse-tête chinois selon l'infrastructure de l'hôte. De plus, sur les puces ARM (M1/M2/M3), le support est encore loin d'être aussi fluide qu'à l'époque d'Intel.

Je voulais une solution :

  • Open Source (éthique oblige).
  • Légère (je ne veux pas entendre mes ventilos décoller).
  • Simple à automatiser via Vagrant et Ansible.
  • Gratuite (exit VMware Fusion ou Parallels Desktop).

Si vous venez du monde Linux, vous connaissez forcément QEMU. C'est l'émulateur/hyperviseur de référence. La bonne nouvelle ? Il est parfaitement porté sur Mac.

Certes, QEMU n'a pas la "jolie" interface graphique de VirtualBox, mais est-ce qu'on est là pour cliquer sur des boutons ou pour faire du DevSecOps ?

L'intérêt majeur de QEMU, c'est sa modularité. Comme j'utilise Vagrant pour piloter mes VMs et Ansible pour le provisionning (le "Craftmanship" de l'infrastructure), je n'ai besoin d'aucune interface. Tout se passe dans mes fichiers de configuration.

// Note : Avec QEMU, j'ai une gestion propre du réseau interne et un service NAT efficace, sans les "verrues" de code spécifiques qu'on doit parfois ajouter pour VirtualBox.

Sur Mac, c'est d'une simplicité déconcertante grâce à Brew :

$ brew install qemu

Une fois installé, QEMU s'intègre comme un charme avec le provider Vagrant (souvent via libvirt ou des plugins dédiés comme vagrant-qemu).

vagrant plugin install vagrant-qemu

Mon workflow est désormais immuable :

  1. Je modifie mon Vagrantfile.
  2. vagrant up (QEMU lance mes 3 nodes en arrière-plan).
  3. Ansible déploie mon cluster Kubernetes (Kubeadm).
  4. Si je casse tout ? vagrant destroy -f && vagrant up. En 5 minutes, je repars sur une base saine.

Passer de VirtualBox à QEMU, c'est un peu comme passer d'un traitement de texte lourd à du Markdown : on perd le superflu pour gagner en efficacité et en contrôle. Pour préparer mes certifs CKA/CKS, c'est le setup idéal : robuste, reproductible et totalement gratuit.

Si vous voulez jeter un œil à ma configuration complète (Vagrantfile + Playbooks Ansible), tout est disponible sur mon GitHub.

// RÉFÉRENCES SYSTEME :

[ EOF - End Of File ]

Quoi choisir comme outil pour n’avoir qu’un seul mot de passe à retenir ?

Quoi choisir comme outil pour n’avoir qu’un seul mot de passe à retenir ?

>cat articles/gestionnaire-mots-de-passe.md_

Quoi choisir comme outil pour n'avoir qu'un seul mot de passe à retenir ?

L'implacable réalité du "Facteur Humain"

On ne va pas se mentir : être un être humain en 2025, c'est gérer une charge mentale numérique qui frise l'overclocking. Entre les outils pros, les accès cloud, la banque en ligne, les mutuelles, les impôts, et le dernier service SaaS à la mode, nous jonglons en moyenne avec plus de 100 comptes différents. En tant que "techo sénior" (né en 1974, faites le calcul), j'ai connu l'époque où un mot de passe, c'était le nom de son chien suivi de "123". Mais aujourd'hui, si vous voulez dormir tranquille, l'hygiène de sécurité impose des règles strictes :
    • Un mot de passe unique par service (jamais de réutilisation).
      Une longueur conséquente (12 caractères minimum, 16 c'est mieux).
      Une complexité réelle(Majuscules, minuscules, chiffres, caractères spéciaux).
  • Le problème ?

    Je suis un homme, pas une base de données chiffrée. Retenir 100 chaînes de caractères aléatoires du type `kL9$zR_pQ2!m` est biologiquement impossible.

    Le risque ?

    Les "pirates" (les vrais, les Black Hats) font leur job avec une efficacité redoutable. Quand un site marchand un peu négligent subit une fuite de données, votre couple "email + mot de passe" finit sur le Dark Web en moins de temps qu'il ne faut pour compiler un "Hello World". Si vous utilisez le même mot de passe pour votre banque, le pirate a alors les clés de votre coffre-fort. C’est là que le gestionnaire de mots de passe devient votre meilleur allié. C’est votre "cerveau externe" sécurisé.

    Pourquoi ne pas se contenter du navigateur (Chrome, Firefox, Safari) ?

    C'est la solution de facilité. Votre navigateur vous propose gentiment d'enregistrer vos identifiants. C'est pratique, certes, mais c'est vulnérable.
    • L'exposition aux malwares :> Certains logiciels malveillants sont spécialisés dans l'extraction des bases de données de mots de passe des navigateurs.
      Le manque de flexibilité : Sortir de l'écosystème du navigateur (pour une application lourde ou un autre device) est souvent laborieux.
      La sécurité relative : On lit régulièrement dans la presse technique l'existence de failles permettant de contourner le mot de passe "maître" de ces navigateurs.
  • Le choc des cultures : KeePass vs KeePassXC

    Dans ma quête de remise à niveau en sécurité — notamment via l'excellente SecNumAcadémie de l'ANSSI que je vous recommande vivement — j'ai redécouvert KeePass.

    KeePass : Le vétéran de l'ANSSI

    KeePass est une institution. C'est l'outil recommandé par les services de sécurité de l'État. C'est du "Open Source" pur jus, audité, solide comme un coffre-fort suisse. * Le bémol : KeePass est viscéralement "Windows Friendly". Son interface semble tout droit sortie de Windows XP (édition 2010). * Le calvaire du Mac : Pour un utilisateur de Mac comme moi, l'installer est un chemin de croix. Il faut passer par Mono (l'implémentation open-source de .NET / C#). On se retrouve à installer des dépendances lourdes en espérant que les fonctions cryptographiques soient correctement portées et que l'interface ne bugge pas à chaque clic. Pour un architecte solution, ce n'est pas ce qu'on appelle une solution "élégante" ou "Craft".

    KeePassXC : La réponse moderne (et Mac-friendly)

    J'ai donc ouvert mon navigateur préféré et lancer une recherche sur le web, pour trouver une alternative crédible. Ma requête était simple : Alternative à Keepass pour Mac, open source, freeware, et installable via Brew. C'est là que j'ai trouvé KeePassXC. Développé par une équipe principalement basée en Allemagne (donc soumis aux règles strictes de sécurité et de confidentialité de l'UE), KeePassXC est un "fork" communautaire de KeePass écrit en C++ avec Qtb>.

    Mes arguments de pourquoi c'est mieux

    * Natif : Pas besoin de Mono ou de couches de compatibilité étranges. Ça tourne nativement sur Mac, Linux et Windows. * L'interface : Enfin quelque chose de propre, lisible, qui respecte les codes visuels de notre décennie. * Compatibilité : Il utilise le même format de fichier (`.kdbx`) que KeePass. Vous pouvez passer de l'un à l'autre sans perte de données.

    Mon workflow : De la barre rouge à la barre verte

    Quand j'ai installé KeePassXC, j'ai procédé à un grand nettoyage de printemps. 1. L'importation : J'ai récupéré mes mots de passe stockés dans Firefox et Chrome pour les centraliser dans ma nouvelle base locale. 2. L'audit : KeePassXC possède un indicateur de force. J'ai vu beaucoup de rouge. J'ai donc pris mon bâton de pèlerin pour changer mes mots de passe sur les sites sensibles. 3. Le passage au vert : Pour chaque site, j'ai laissé KeePassXC générer un mot de passe de 20 caractères minimum. La petite barre passe au vert fluo. Satisfaction immédiate du cerveau de techos que je suis. 4. L'intégration navigateur : J'ai installé l'extension "KeePassXC Browser". Le lien est magique : quand je suis sur une page de login, l'icône dans le champ de saisie me permet de déverrouiller ma base et de remplir les champs automatiquement. Si je crée un nouveau compte, l'outil me propose un mot de passe et l'enregistre de suite.

    🛠️ Le Tuto : Installer KeePassXC comme un pro

    Si vous voulez franchir le pas (et je vous le conseille, que vous ayez 20 ou 50 ans), voici la marche à suivre. Installation via le Terminal (La voie du guerrier) Pour les utilisateurs de Mac, on ne s'embête pas avec des DMG à télécharger. Ouvrez votre terminal : # Si vous n'avez pas Brew, installez-le d'abord sur brew.sh brew install --cask keepassxc

    Création de la base de données

    Lancez l'application. Créez une nouvelle base de données. Attention : C'est ici que vous choisissez votre unique mot de passe à retenir. Choisissez une phrase longue, un "passphrase", quelque chose qui a du sens pour vous mais qui est impossible à deviner. Ce sera la seule clé de votre royaume numérique.

    Installation des extensions navigateurs

    C'est indispensable pour ne pas avoir à faire des copier-coller toute la journée. * L'addon pour Firefox * L'addon pour Chrome / Brave / Chromium

    Le portage

    Prenez 30 minutes. Exportez vos mots de passe de votre navigateur (Paramètres > Mots de passe > Exporter en CSV) et importez-les dans KeePassXC. Ensuite, supprimez-les de votre navigateur.

    Conclusion : Un petit pas pour l'homme, un grand pas pour votre sécurité

    Est-ce que c'est un peu narcissique de vouloir sécuriser sa propre vie numérique avant celle des autres ? Peut-être. Mais comme on dit en avion : "Mettez votre masque à oxygène avant d'aider les autres". En utilisant KeePassXC, je ne me contente pas de "retenir des mots de passe". Je mets en œuvre les principes du Craftsmanship (un outil robuste, bien conçu, une base propre) et du DevSecOps (sécurité intégrée au quotidien). Si cet article aide une seule personne (ou juste moi dans 6 mois quand j'aurai oublié comment j'ai configuré mon Brew), alors le contrat est rempli. Restez safe, restez curieux, et passez au vert !

    Références & Ressources

    * KeePass (L'original) * KeePassXC (La version moderne) * ANSSI (La bible de la sécu en France) * SecNumAcadémie (Formation gratuite au top) `EOF - End Of File`