وب‌سرویس مجید

پروژه haproxy-ingress

jcmoraisjr/haproxy-ingress

این پروژه یک Ingress Controller برای کوبرنتیس (Kubernetes) است که از HAProxy به عنوان موتور مسیریابی ترافیک وب استفاده می‌کند.

HAProxy یکی از معروف‌ترین ابزارهای Load Balancer و معکوس پروکسی (Reverse Proxy) با عملکرد بالا است و این پروژه آن را به صورت یک کامپوننت مدیریت‌شده در محیط کوبرنتیس فراهم می‌کند.

کاربرد:

این اینگرس کنترلر برای مدیریت دسترسی به سرویس‌های درون کلستر کوبرنتیس از طریق قوانین Ingress استفاده می‌کند. ️

با استفاده از آن می‌توانید ترافیک HTTP و HTTPS را به صورت هوشمند به پادها (Pods) مختلف هدایت کنید، از SSL/TLS پشتیبانی کنید، ترافیک را متعادل کنید و قوانین مسیریابی پیچیده را پیاده‌سازی نمایید.

در چه شرایطی بهتره استفاده شود؟

وقتی به دنبال یک Ingress Controller با عملکرد بالا و قابلیت‌های پیشرفته در توزیع بار هستید.

وقتی نیاز به تنظیمات دقیق و سفارشی در سطح HAProxy دارید (مثل ACLها، مسیریابی بر اساس هدرها و غیره).

وقتی می‌خواهید از قابلیت‌های پیشرفته SSL مثل certificate passthrough یا SNI استفاده کنید.

در محیط‌های تولید (Production) که نیاز به قابلیت اطمینان و پایداری بالا دارید.

چند مثال از موارد استفاده:

میزبانی چندین دامنه (Virtual Hosts) روی یک Load Balancer واحد.

اعمال قوانین مسیریابی بر اساس URL، هدرها یا IP کاربر.

فعال‌سازی HTTPS با Let's Encrypt از طریق همکاری با Cert-Manager.

پشتیبانی از WebSocket و ارتباطات بلندمدت.

متعادل‌سازی بار بین سرویس‌های میکروسرویسی با قابلیت سلامت‌سنجی (Health Checks).

  • ##Kubernetes
  • ##IngressController
  • ##HAProxy
  • ##LoadBalancer
  • ##DevOps
  • ##Microservices
  • ##SSL
  • ##Networking
  • ##CloudNative
  • ##WebTraffic