« Tüm yayınlar

ingress-nginx emekli oldu: production için göç planı ne gerektiriyor

Kubernetes SIG Network ingress-nginx bakımını durdurdu. CNCF, Contour'a geçiş veya Gateway API'ye modernizasyon öneriyor; kesim öncesi kontrol listesi burada.

Kubernetes SIG Network, uzun yıllardır birçok kümede çalışan ingress-nginx kontrolcüsünün bakımını durdurdu. CNCF'nin 9 Temmuz'da yayımlanan yazısına göre bundan sonra yeni CVE'ler için upstream yaması gelmeyecek ve özellik geliştirmesi de sona erdi. Bugün üretimde çalışan sürüm hemen değişmiyor, yani risk takvimde, sayfalayan alarmda değil; bu da ekiplerin genelde bir tarayıcı CVE'yi işaretleyene kadar ertelediği türden bir risk.

CNCF iki yol tanımlıyor: Envoy tabanlı Contour'a yanal geçiş, Ingress API'de kalıp yama sorununu başka bir projeye devretmek anlamına geliyor. İkinci yol ise Ingress'in upstream destekli halefi olarak tanımlanan Gateway API'ye modernizasyon; ingress2gateway aracı çeviriyi otomatikleştirmek için öneriliyor ve kritik olmayan iş yüklerinin önce taşınmasıyla kademeli bir geçiş tavsiye ediliyor. Ara çözüm olarak önce Contour'a geçip zaman kazanmak, ardından Gateway API taşınmasını kendi takviminize göre planlamak mümkün.

Mühendisler için asıl mesele, annotation'ların kontrolcüler arası birebir taşınmadığı gerçeği. Sağlık kontrolü semantiği, TLS/sertifika yenileme ve SNI davranışı, rewrite/trailing-slash kuralları her kontrolcüde farklı işliyor; bunlar kontrol edilmeden yapılan bir geçiş, en çok annotation taşıyan -yani en kritik- trafik yollarında sessiz regresyonlara yol açabilir. Önerilen güvenlik ağı, eski kontrolcüyü farklı bir IngressClass üzerinde canlı tutup yeni kontrolcü bir üretim haftasını alarmsız geçirene kadar kesimi küme bazında değil sınıf bazında yapmak.