🌟 باز کردن قفل Kubernetes: دروازه مدیریت ترافیک ساده

سلام ابری ها ☁!
مدیریت ترافیک برنامه در Kubernetes می تواند چالش برانگیز باشد ، به خصوص هنگامی که چندین سرویس در حال اجرا هستند. اینجاست که 𝑲𝒖𝒃𝒆𝒓𝒏𝒆𝒕𝒆𝒔 𝑰𝒏𝒈𝒓𝒆𝒔𝒔 بازی می کند!
قبل از ورود به K8S Ingress ابتدا بیایید بفهمیم Layer 4 و Layer 7 Balancing Base چیست.
𝐋𝐚𝐲𝐞𝐫𝟒:
👉 در لایه حمل و نقل سیستم عامل (TCP/UDP) فعالیت می کند. این تصمیمات را بر اساس اطلاعات موجود در این لایه حمل و نقل می گیرد.
👉 براساس درخواست اطلاعاتی برای حمل و نقل ندارد.
👉 نیاز به خاتمه SSL جداگانه دارد.
مثال: k8s balancer
𝐋𝐚𝐲𝐞𝐫𝟕:
👉 در سطح برنامه کار می کند ، بر اساس درخواست های برنامه مانند HTTP/HTTPS تصمیم می گیرد.
👉 این اطلاعات را برای توزیع بار بر اساس درخواست های برنامه (مثال: /ورود ، /مدیر .. و غیره) دارد
👉 می تواند اتصالات SSL را خاتمه دهد
EX: K8S Ingress ، AWS LoadBalancer ، Gateway Application Azure ..
𝑾𝒊𝒕𝒉𝒐𝒖𝒕 𝑰𝒏𝒈𝒓𝒆𝒔𝒔:
👉 ما نمی توانیم با استفاده از سرویس Clusterip ، برنامه خود را در خارج از کشور در معرض دید خود قرار دهیم.
👉 افشای برنامه از طریق NodePort می تواند یک نگرانی امنیتی باشد.
👉 قرار گرفتن در معرض برنامه از طریق LoadBalancer بسیار گران است و فقط برنامه/یک سرویس را به طور همزمان نشان می دهد.
برای بررسی همه اینها مفهومی به نام “Ingress” وجود دارد
𝑾𝒉𝒂𝒕 𝒊𝒔 𝑰𝒏𝒈𝒓𝒆𝒔𝒔؟ :
Ingress یک شیء API در K8S است که دسترسی HTTP/HTTPS خارجی را به خدمات در حال اجرا در خوشه K8S مدیریت می کند.
👉 این یک متعادل کننده بار Layer7 است.
👉 به عنوان نقطه ورود به خوشه K8S عمل می کند.
👉 این امکان را برای مسیریابی درخواست های ورودی به خدمات مناسب بر اساس نام مسیر URL / HOST فراهم می کند.
دارای 2 مؤلفه است:
✨ کنترل کننده Ingress
✨ منابع ورود
🌟 𝑰𝒏𝒈𝒓𝒆𝒔𝒔:
این یک شیء K8S است ، در حالی که Ingress قوانین مسیریابی را تعریف می کند ، کنترل کننده Ingress برای این قوانین ساعت ها را انجام می دهد و مسیریابی را انجام می دهد.
🌟 𝑰𝒏𝒈𝒓𝒆𝒔𝒔:
این یک شیء K8S است که در آن قوانین مسیریابی را تعریف می کنیم مانند نحوه انجام تعادل بار.
𝑰𝒏𝒈𝒓𝒆𝒔𝒔 𝑨𝒓𝒄𝒉𝒊𝒕𝒆𝒄𝒕𝒖𝒓𝒆:
بعد از ایجاد یک منبع Ingress در K8S. URL/IP ارائه دهنده Cloud Cloud برای دسترسی به آن اختصاص می یابد.
👉 هنگامی که کاربران در تلاش برای دسترسی به برنامه با استفاده از آدرس URL/IP LoadBalancing ، ترافیک ابتدا به کنترل کننده Ingress ضربه می زند
👉 کنترل کننده Ingress همیشه قوانین منابع Ingress/ برای هرگونه اصلاح را تماشا می کند.
👉 بر اساس قوانینی که درخواست را به سرویس غلاف/استقرار خاص (Clusterip) منتقل می کند.
👉 از طریق ارتباطات داخلی ، سرویس Clusterip درخواست را به غلاف مربوطه منتقل می کند و POD درخواست را ارسال می کند.
گردش کار:
کاربر -> ارائه دهنده Cloud LoadBalancer -> کنترلر Ingress -> Service (Clusterip) -> POD.
توجه:
👉 در اینجا ما برای هر استقرار یا غلاف به خدمات نیاز داریم
افکار خود را بیان کنید