Blog

Tous les articles

Blog

Articles techniques sur la construction de la plateforme minicloud — GitOps, Kubernetes, IA et ingénierie bare-metal.

identity
OIDC Is Not a Directory: Why I Keep Reaching for LDAP Next to Authentik

I run a simulated insurer's IS with Authentik as the single sign-on provider — one login for everything. So why did I just bolt an LDAP server onto it for the second time? Because SSO answers one question, and twice I needed a different one. Here's the root cause, and the rule that tells you in advance which protocol you actually need.

authentik
ldap
oidc
Oct 20, 20267 min de lecture
governance
Why an Insurer Needs Guidelines — and How I Built the Whole Framework as Code

An insurance company doesn't run by hiring people and letting each department decide how to work. It runs on a framework of policies, standards, guidelines, procedures and controls. I built that framework for my simulated insurer — 15 governance books, 80 pages, wired to the business apps — and learned that the hard part isn't writing the rules. It's keeping the human rule, the executable rule and the engineering decision as one thing.

compliance
insurance
solvency-ii
Oct 20, 20268 min de lecture
architecture
Modular-Monolith-First: Sizing Architecture to the Problem, Not the Fashion

I run a simulated insurer's IS on Kubernetes, built as separate services per domain. Then I stopped and asked the uncomfortable question: is that the right architecture, or just the fashionable one? This is the decision I made — modular-monolith-first — and, more usefully, the decision I deliberately did NOT make: building the thing at all, yet.

modular-monolith
microservices
domain-driven-design
Sep 30, 20267 min de lecture
ai-agents
The Engineering Harness: Turning an AI Agent Into a Reliable Colleague on a Real Information System

Everyone is talking about smarter models. Almost nobody talks about the harness — the rules, memory, guardrails and verification loops that sit around the model and decide whether it ships reliable work or plausible garbage. This is the harness I built so an AI agent can operate on the ktayl-solution information system without breaking prod.

agentic-ai
engineering-harness
context-engineering
Sep 29, 202614 min de lecture
backup
3-2-1, Not 1: Why I Kept MinIO Instead of Going Cloud-Only for Backups

It's tempting to delete the backup server and push everything to cheap cloud object storage. On the ktayl-solution platform I decided not to — and an hour later I fat-fingered a bucket delete that proved exactly why. This is the reasoning behind keeping a local MinIO alongside Cloudflare R2, and where the cloud instinct is actually right.

disaster-recovery
minio
cloudflare-r2
Sep 27, 20265 min de lecture
ansible
The Layer Below GitOps: How ~200 Lines of Ansible Keep a Bare-Metal Cluster Reproducible

GitOps reconciles everything inside the cluster — but not the operating system beneath it. This is how minicloud-ansible codifies the node-level prerequisites (iSCSI, multipath, registry mirrors, default routes, CIS hardening) so any node can be reimaged or added with a single idempotent playbook run.

bare-metal
kubernetes
k3s
Sep 19, 20268 min de lecture
kubernetes
Anatomy of a Cascading Kubernetes Outage: When the First Symptom Is Three Layers From the Cause

A disk filled up. Then cluster DNS died. Then storage volumes refused to rebuild. The obvious cause was a symptom — the real culprit was a bloated SQLite write-ahead log starving the storage layer. Here is the full debugging trail, the fix, and the prevention that shipped afterward.

sre
incident-response
post-mortem
Aug 23, 20267 min de lecture
harbor
One Registry to Rule Them All: Harbor as the Single Image Entry Point for a Bare-Metal k3s Cluster

How a self-hosted Harbor instance, configured as a pull-through proxy for docker.io, ghcr.io, quay.io, and registry.k8s.io, becomes the single entry point for all image traffic on a bare-metal k3s cluster — eliminating Docker Hub rate limits, centralizing vulnerability scanning, and keeping air-gap capability without any code changes in your manifests.

kubernetes
docker
registry
Aug 16, 20269 min de lecture
security
Every Non-Human Identity on a Self-Hosted k8s Platform: A Complete Taxonomy

Service accounts, robot accounts, break-glass tokens, OAuth2 client credentials, API keys — a self-hosted Kubernetes platform uses all of them. Here is how they differ, why each one exists, and what happens when you lose track of one.

iam
kubernetes
vault
Aug 16, 20269 min de lecture