Phiên bản WAF triển khai trên Kubernetes — tự động tăng/giảm pod theo lượng truy cập, kết hợp XDP kernel filtering và AI threat classification.
Lưu lượng đi qua 5 tầng xử lý. XDP chặn DDoS tại kernel trước khi traffic vào pod network. Nginx WAF tự động scale theo tải.
Thành phần then chốt giải quyết vấn đề XDP không thể chạy trong container.
Tại sao cần Bridge? XDP attach trực tiếp vào NIC driver ở kernel level — không thể chạy trong container. XDP binary chỉ hỗ trợ CLI, không có HTTP listener. Bridge chạy trên mỗi host node (DaemonSet), gọi CLI binary thay mặt K8S pods. WAF Engine biết host IP qua Downward API.
Horizontal Pod Autoscaler giám sát CPU và Memory của các Nginx pod. Khi tải tăng, tự động tạo thêm pod trong 30 giây. Khi tải giảm, thu gọn dần sau 5 phút.
| Điều kiện | Hành động | Giới hạn |
|---|---|---|
| CPU trung bình > 70% | Scale up | Tối đa +4 pod / 60 giây |
| Memory trung bình > 80% | Scale up | Tối đa +4 pod / 60 giây |
| CPU < 70%, traffic giảm | Scale down | −1 pod / 2 phút, đợi 5 phút |
| Cập nhật quy tắc WAF | Rolling update | Zero downtime |
Spike traffic: Ví dụ flash sale — tải tăng đột biến 10x trong 1 phút. HPA phát hiện CPU spike, tạo thêm pod mới trong 30s. Khi sale kết thúc, hệ thống tự thu gọn về 2 pod cơ bản. Không cần can thiệp thủ công.
Namespace riêng biệt cho toàn bộ tài nguyên WAF, cách ly khỏi các workload khác.
Deployment với HPA tự động 2→20 pod. ModSecurity + OWASP CRS v4. LoadBalancer Service :80/:443.
Deployment 1–2 replicas. Behavioral scoring, adaptive tuning, botnet correlation, dashboard :9090.
DaemonSet chạy trên mỗi node. hostNetwork + privileged. Gọi XDP CLI, port 9100.
Deployment + PVC cho model Qwen3-0.6B (~379MB Q4_K_M). ClusterIP Service :8081.
XDP API bearer token (Secret), WAF engine config.json (ConfigMap). Tách biệt bảo mật và cấu hình.
| Thành phần | WAF Standalone | WAF K8s |
|---|---|---|
| XDP SYN Protect | systemd trên host | systemd trên host (giữ nguyên) |
| XDP ↔ Engine | CLI exec trực tiếp | HTTP API qua xdp-api-bridge |
| Nginx WAF | 1 process | Auto-scale 2→20 pods (HPA) |
| WAF Engine | 1 process | K8S Deployment (restart tự động) |
| AI Model | systemd llama-server | K8S Deployment + PVC |
| Cấu hình | File trên disk | ConfigMap + Secret |
| Monitoring | journalctl | kubectl logs + metrics-server |
Cụm k3s hoặc k8s với metrics-server để HPA hoạt động.
BPF/XDP support trên mỗi worker node.
Docker Hub, ghcr.io hoặc private registry để lưu image.
Tối thiểu 3 node, khuyến nghị 5 node cho production.
Phù hợp cho hệ thống lớn, lưu lượng biến động mạnh, cần tự động co giãn và zero-downtime.