<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Cilium on Danilo Falcão da Silva</title><link>https://falcao.org/tags/cilium/</link><description>Recent content in Cilium on Danilo Falcão da Silva</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 21 May 2026 17:50:00 -0300</lastBuildDate><atom:link href="https://falcao.org/tags/cilium/index.xml" rel="self" type="application/rss+xml"/><item><title>The Kubernetes Ingress Landscape in 2026: Nginx Isn't the Center Anymore</title><link>https://falcao.org/posts/kubernetes-ingress-landscape-2026/</link><pubDate>Thu, 21 May 2026 17:50:00 -0300</pubDate><guid>https://falcao.org/posts/kubernetes-ingress-landscape-2026/</guid><description>&lt;p>For about a decade, &amp;ldquo;Kubernetes ingress&amp;rdquo; effectively meant one thing:
&lt;strong>&lt;code>ingress-nginx&lt;/code>&lt;/strong>, the community-maintained controller that wrapped
the Nginx engine behind the Kubernetes &lt;code>Ingress&lt;/code> resource. It was
fine. It was the default everyone reached for. It was also,
quietly, the wrong long-term shape for the problem.&lt;/p>
&lt;p>That era ended in 2026. The community &lt;code>ingress-nginx&lt;/code> project
&lt;strong>reached end-of-life in March 2026&lt;/strong>. The &lt;strong>Kubernetes Gateway
API&lt;/strong>, which graduated to GA on the v1.2 line, is now the
forward-looking standard. &lt;strong>Envoy Gateway&lt;/strong> is the CNCF reference
implementation. &lt;strong>Cilium&lt;/strong> does L7 routing in eBPF without a
sidecar or an extra proxy. &lt;strong>RKE2&lt;/strong> flipped to &lt;strong>Traefik&lt;/strong> by
default in v1.36 and removes &lt;code>ingress-nginx&lt;/code> entirely in v1.37.&lt;/p></description></item><item><title>eBPF Is Eating Kubernetes' iptables Plumbing</title><link>https://falcao.org/posts/ebpf-eating-kubernetes-iptables/</link><pubDate>Wed, 20 May 2026 19:30:00 -0300</pubDate><guid>https://falcao.org/posts/ebpf-eating-kubernetes-iptables/</guid><description>&lt;p>For most of Kubernetes&amp;rsquo; life, the cluster data path has been a tower of
&lt;strong>iptables&lt;/strong> rules. Pod-to-service routing, NAT, network policy, even
the way &lt;code>kube-proxy&lt;/code> programs a Service IP — all of it expressed as
netfilter chains evaluated linearly on every packet. It worked. It
also aged badly.&lt;/p>
&lt;p>In 2026, the answer the ecosystem has converged on is &lt;strong>eBPF&lt;/strong>, and the
project doing most of the convergence is &lt;strong>Cilium&lt;/strong>. The shift is
no longer aspirational: kube-proxy itself shipped an &lt;strong>nftables mode&lt;/strong>
that is expected to go &lt;strong>GA in Kubernetes 1.33&lt;/strong>, the old &lt;strong>IPVS
backend is deprecated as of v1.35&lt;/strong>, and the major managed Kubernetes
providers (EKS, GKE, AKS) all offer a Cilium-powered data plane as a
first-class option. Azure CNI Powered by Cilium is GA on K8s 1.33.&lt;/p></description></item></channel></rss>