Chuyển đến nội dung chính

Bài 5: ingress-nginx đã đóng băng — việc phải làm

Tháng 3/2026 dự án ngừng phát triển, repo chỉ đọc, không còn vá bảo mật. Và nó đứng ngay ở cửa vào.

Xem bản video

Bài này giao việc, không dạy lý thuyết. Nếu cụm của bạn đang chạy ingress-nginx thì đây là thứ nên đọc trước mọi thứ khác trong series.

Chuyện đã xảy ra

Tháng 3 năm 2026, dự án ingress-nginx ngừng phát triển. Repo chuyển sang chỉ đọc:

  • không bản phát hành mới
  • không sửa lỗi
  • không vá bảo mật

Theo hướng dẫn di trú của AWS, nó đang đứng ở cửa của khoảng một nửa số cụm Kubernetes. (Con số này là ước tính trong tài liệu đó, không phải phép đo của tôi.)

Nói cho rõ: cái gì ngừng, cái gì không

Vẫn cònĐã ngừng
đối tượng Ingress — không bị xoá khỏi API, cụm vẫn chấp nhậningress-nginx, cái controller đọc nó

Nhưng bản thân Ingress cũng đã đóng băng tính năng từ lâu — mọi thứ mới đều đi vào Gateway API. Nói cách khác: bản mô tả vẫn còn, người thi hành thì nghỉ.

Vì sao phải dừng

Theo thông báo của Steering Committee và Security Response Committee, lý do rất đời: dự án chạy gần như hoàn toàn bằng tình nguyện, trong khi bề mặt tấn công của nó rất rộng — nó nhận annotation do người dùng viết rồi sinh ra file cấu hình nginx thật để chạy, ở đúng cửa vào cụm. Số người bảo trì không đủ để canh một thứ như thế. Ngừng có kiểm soát vẫn hơn để nó mục dần.

Rủi ro của việc ngồi yên

Hôm nay cụm vẫn chạy bình thường — đó là sự thật. Nhưng lỗ hổng tiếp theo sẽ không có bản vá. Và vì nó nằm ở cửa vào, nó là thứ người ngoài chạm tới đầu tiên, trước cả tường lửa ứng dụng và trước cả mã của bạn.

Đây không phải chuyện thiếu tính năng. Đây là một bề mặt tấn công không còn ai canh.

Ba đường ra

ĐườngCái giá
1Chuyển sang Gateway API (khuyến nghị)công sức lớn nhất, nhưng là đường duy nhất đi tới đâu đó
2Đổi sang một ingress controller khác còn được bảo trìnhẹ hơn, nhưng vẫn ở trên một API đã đóng băng
3Mua hỗ trợ thương mại cho bản đã đóng băngmua thêm thời gian, không giải quyết gì

Không chọn cũng là một lựa chọn — và là lựa chọn tệ nhất trong bốn cái.

Công cụ dịch sẵn

ingress2gateway bản 1.0 ra tháng 3/2026, dịch được hơn 30 annotation. Nó đọc đám Ingress đang có rồi sinh ra HTTPRoute tương ứng. Nhưng nó không phải nút bấm một phát là xong: nó dịch phần cấu trúc — host, path, backend. Còn chỗ nào bạn dùng annotation riêng của nginx (rewrite, auth, rate limit, snippet) thì vẫn phải xem lại bằng mắt.

Việc làm ngay tuần này

# 1. đếm xem cụm đang có bao nhiêu Ingress
kubectl get ingress -A --no-headers | wc -l

# 2. chạy thử bản dịch, chỉ in ra màn hình
ingress2gateway print --input-file ingress.yaml
  1. Chọn đường đi và ghi hẳn một cái ngày vào lịch.

Việc tệ nhất lúc này là không làm gì rồi quên nó đi.

Nguồn: Thông báo của Steering & Security Response Committee · Google Open Source — The End of an Era · AWS — hướng dẫn di trú khỏi NGINX Ingress · ingress2gateway 1.0