81 posts in category technical

Color-coded grid: 17 hard-case annotations vs. 8 migration targets, green/yellow/red/gray verdicts

ingress-nginx Annotation Compatibility Matrix

Why classifying ingress-nginx annotations by name is dangerous: what migrates cleanly to Gateway API or another Ingress controller, and what silently breaks.

ingress-nginx Annotation Compatibility Matrix
ingress-nginx migration candidates grouped by config layer and by which of three proxy engines serves their traffic

ingress-nginx Replacement Candidates: Envoy, HAProxy, NGINX

A source-verified look at Envoy Gateway, two HAProxy controllers, F5's NGINX controller, and NGINX Gateway Fabric, scored against the Part 3 matrix.

ingress-nginx Replacement Candidates: Envoy, HAProxy, NGINX
Lab flow: baseline test, migrate, run the same tests, diff the report — repeated for two more targets

ingress-nginx Hard Cases: Auth, Rate Limits, gRPC, Snippets

A real OVH MKS lab migrates one nasty sample app from ingress-nginx to Envoy Gateway and HAProxy Unified Gateway: ten hard cases, real bugs, real gaps.

ingress-nginx Hard Cases: Auth, Rate Limits, gRPC, Snippets
Three ingress-nginx inventory surfaces — annotations, global ConfigMap, and controller flags feed one inventory report

ingress-nginx Inventory: Annotations, ConfigMaps, Flags

Before comparing replacement controllers, find out what your ingress-nginx clusters actually depend on: annotations, the global ConfigMap, and controller flags.

ingress-nginx Inventory: Annotations, ConfigMaps, Flags
ingress-nginx retired leads to four options: stay and accept risk, switch controller, Gateway API, or a maintained fork

ingress-nginx Migration: A Field Guide

A practical field guide to migrating off the retired ingress-nginx controller: inventory, annotation compatibility, migration mechanics, and a companion lab.

ingress-nginx Migration: A Field Guide
Staged cutover timeline: parallel classes, DNS weight shift, observe, decommission, with a rollback arrow to the start

ingress-nginx Migration Mechanics: ingress2gateway and Cutover

An ingress2gateway walkthrough, coexistence patterns, DNS cutover, cert-manager, external-dns, and a rollback plan for a flag-day-free ingress-nginx migration.

ingress-nginx Migration Mechanics: ingress2gateway and Cutover
Four Gateway API runtime models: GKE outside the cluster, AKS in-cluster Istio, STACKIT managed ALB, OVH self-managed

ingress-nginx Alternatives: Cilium, Traefik, Kong, AKS, GKE

How Cilium, Traefik, and Kong score against the Part 3 matrix, plus a survey of AKS, GKE, STACKIT, and OVH ingress and Gateway API paths on managed Kubernetes.

ingress-nginx Alternatives: Cilium, Traefik, Kong, AKS, GKE
Diagram: an AuthorizationPolicy using ipBlocks reads Envoy's direct_remote_ip (the load balancer), while remoteIpBlocks reads remote_ip (the real client)

Istio AuthorizationPolicy & HTTP/2 Coalescing

Two Istio/Envoy pitfalls: AuthorizationPolicy IP matching (direct_remote_ip vs. remote_ip) and HTTP/2 connection coalescing across per-hostname listeners.

Istio AuthorizationPolicy & HTTP/2 Coalescing
Blog post cover image

Who Has Access? Humans, Accounts, AI Agents

Kubernetes RBAC, OVH IAM v2, LiteLLM keys, and an AI coding agent compared on documentation, auditing, and technical enforcement of who has access. Part 3 of 6.

Who Has Access? Humans, Accounts, AI Agents
Diagram: three rungs of enforcement — legally-enforced only, technically-enforced at rest, and technically-enforced at rest and in use

Legally vs. Technically Enforced

A framework for telling a legally-enforced sovereignty promise from a technically-enforced one, applied across BYOK, RBAC, and AI-agent access. Part 4 of 6.

Legally vs. Technically Enforced