ما هي وحدة تحكم Kubernetes Ingress؟

منظر رأسي لمبنى دائري

المؤلفون

Stephanie Susnjara

Staff Writer

IBM Think

Ian Smalley

Staff Editor

IBM Think

ما هي وحدة تحكم Kubernetes Ingress؟

وحدة تحكم Kubernetes Ingress هي عنصر برمجي متخصص يدير حركة المرور الواردة إلى التطبيقات التي تعمل في بيئات Kubernetes، وتعمل كجسر بين المستخدمين الخارجيين والخدمات التي يتم نقلها في حاويات.

تعتمد الشركات الحديثة بشكل كبير على التطبيقات الموزعة وأحمال التشغيل المبنية من عشرات أو مئات الخدمات المصغرة. ومن دون تنسيق مناسب لحركة المرور، ستتطلب كل خدمة نقطة نهاية عامة خاصة بها، مما يشكل مشكلات كبيرة في الإدارة والأمان.

على سبيل المثال، قد تحتاج منصة الرعاية الصحية إلى نقاط وصول منفصلة لبوابات المرضى ولوحة المعلومات وأنظمة الفوترة وإعداد تقارير الامتثال - وهو نهج يصبح مكلفاً ومعقداً من الناحية التشغيلية.

تعالج وحدة تحكم Kubernetes Ingress هذه المشكلة من خلال العمل كموازن أحمال وموجه ذكي لحركة المرور عند نقطة دخول التطبيق. حيث ينشئ مسار حركة مرور مركزي للمستخدمين الخارجيين للوصول إلى الخدمات الداخلية.

يوفر النظام البنائي لـ Kubernetes وحدات تحكم Ingress مختلفة، بما في ذلك أدوات مفتوحة المصدر (على سبيل المثال، NGINX، Traefik) المتوفرة على منصات مثل GitHub والحلول الخاصة المصممة لتلبية احتياجات تنظيمية محددة.

أحدث الأخبار التقنية، مدعومة برؤى خبراء

ابقَ على اطلاع دومًا بأهم—اتجاهات المجال وأكثرها إثارة للفضول—بشأن الذكاء الاصطناعي والأتمتة والبيانات وغيرها الكثير مع نشرة Think الإخبارية. راجع بيان الخصوصية لشركة IBM.

شكرًا لك! أنت مشترك.

سيتم تسليم اشتراكك باللغة الإنجليزية. ستجد رابط إلغاء الاشتراك في كل رسالة إخبارية. يمكنك إدارة اشتراكاتك أو إلغاء اشتراكك هنا. راجع بيان خصوصية IBM لمزيد من المعلومات.

ما المقصود بمنصة Kubernetes؟

قامت Google بتطوير Kubernetes في البداية وتم التبرع بها لمؤسسة Cloud Native Computing Foundation (CNCF) في عام 2015، وهي الآن تعمل على تشغيل البنية التحتية الأساسية لتكنولوجيا المعلومات لمعظم شركات Fortune 500، مما يجعل إدارة وحدات التحكم في الدخول أمرًا حساسًا للعمليات. وفقًا لمجموعة أجريت عام 2022، فإن 96% من المؤسسات تستخدم Kubernetes أو تقيّم التقنية لبيئات الإنتاج1

قبل ظهور Kubernetes، كان يتم تشغيل التطبيقات عادةً على خوادم مخصصة أو أجهزة افتراضية (VMs)، ما يجعل عملية التوسع مكلفة وتستغرق وقتًا طويلًا. قدَّمت Kubernetes الحاويات - وهي وحدات خفيفة وقابلة للنقل تضم التطبيقات مع جميع تبعياتها.

لقد أحدثت Kubernetes ثورة في مهام سير عمل عمليات التطوير ونشر التطبيقات من خلال تقديم تنسيق الحاويات على نطاق واسع. تعمل هذه المنصة مفتوحة المصدر على أتمتة نشر التطبيقات التي يتم نقلها في حاويات وتوسيع نطاقها وإدارتها عبر البنية التحتية الموزعة، مما يتيح التعاون السلس بين فرق التطوير والعمليات.

تنظم Kubernetes التطبيقات في حجيرات - أصغر وحدات قابلة للنشر تتكون من حاوية واحدة أو أكثر (عادةً حاويات Docker). وتعمل هذه الحجيرات عبر العُقد العاملة داخل المجموعات، بينما ينسق مستوى التحكم جميع عمليات المجموعة. توفر الخدمات هويات شبكة مستقرة لمجموعات الحجيرات، مما يتيح أنماط اتصال موثوقة.

يتم نشر وحدات التحكم في الدخول عادةً كحجيرات متخصصة تراقب حالة المجموعة من خلال واجهة Kubernetes API. تتعقب وحدات التحكم هذه التغييرات في موارد Ingress - كائنات التكوين التي تحدد قواعد توجيه حركة المرور - وتقوم تلقائيًا بتحديث جداول التوجيه الخاصة بها لتعكس عمليات نشر التطبيقات الجديدة أو تحديثات التكوين.

IBM Cloud

Red Hat OpenShift AI on IBM Cloud: نشر أحمال تشغيل الذكاء الاصطناعي

استخدام قدرات الذكاء الاصطناعي مع Red Hat OpenShift on IBM Cloud. يستكشف هذا الفيديو كيفية إنشاء أحمال تشغيل الذكاء الاصطناعي ونشرها وإدارتها بكفاءة باستخدام منصة العمليات القابلة للتطوير للتعلم الآلي.

ما هو Kubernetes Ingress؟

لفهم كيفية عمل وحدات التحكم Ingress، من الضروري فهم Kubernetes Ingress— مورد API (أو كائن Ingress) الذي يحدد قواعد التوجيه التي توجه حركة المرور الخارجية إلى الخدمات داخل المجموعة.

يختلف Kubernetes Ingress عن المصطلح العام ingress (الدخول)، والذي يشير إلى تدفق حركة مرور الشبكة الواردة إلى بيئة تطبيق يتم نقله بالحاويات قائم على السحابة الأصلية. في Kubernetes، يشير Ingress على وجه التحديد إلى مجموعة القواعد والتكوينات التي تدير كيفية توجيه نسبة استخدام الشبكة الواردة إلى خدمات مختلفة. في المقابل، يشير ingress (الدخول) بمعنى أوسع ببساطة إلى أي حركة زيارات تدخل إلى نظام (على عكس الخروج، والذي يشير إلى حركة المرور المتدفقة خارج النظام).

اقرأ المزيد حول الدخول مقابل الخروج في Kubernetes.

يوفر Kubernetes Ingress نهجًا توضيحيًا لإدارة الوصول الخارجي إلى الخدمات داخل المجموعة. بدلا من تعريض الخدمات الفردية (على سبيل المثال، خدمات NodePort وLoadBalancer) مباشرة إلى الإنترنت، يقوم Ingress بإنشاء طبقة وصول خاضعة للرقابة تقوم بتوجيه الطلبات بذكاء بناء على معايير متعددة. تتيح هذه القدرة إمكانية الإدارة الفعالة لحركة المرور الخارجية إلى الخدمات، والتي يتم كشفها عادةً باستخدام ClusterIP داخل مجموعة Kubernetes.

يعمل Kubernetes Ingress من خلال عنصرين متكاملين.

موارد الدخول (Ingress)

تحدد موارد Ingress (يشار إليها أيضا باسم موارد Kubernetes أو كائنات واجهة برمجة تطبيقات Kubernetes) قواعد التوجيه. يتم تعريفها في YAML أو JSON، مع تحديد قواعد الدخول وشهادات SSL ومتطلبات المصادقة وسياسات حركة المرور.

على سبيل المثال، يمكن للمستخدمين استخدام الحقل ingressClassName لتحديد وحدة تحكُّم Ingress التي يجب أن تُدير المورد، ما يسمح بتوجيه حركة المرور إلى وحدة تحكُّم محددة عند وجود عدة وحدات تحكُّم داخل المجموعة.

وحدات تحكم Ingress

وحدات تحكم Ingress هي عناصر برمجية تقرأ قواعد التكوين وتطبقها، وتعمل كوكلاء عكسيين ذات قدرات لإدارة حركة المرور المتقدمة.

كيف تعمل وحدة تحكم Kubernetes Ingress؟

تقوم موازِنات التحميل التقليدية في الطبقة الرابعة، مثل تلك الخاصة بمسارات TCP وUDP وHTTP/HTTPS، بتوزيع حركة المرور اعتمادًا فقط على عناوين IP والمنافذ. على النقيض من ذلك، تعمل وحدة التحكم Kubernetes Ingress في الطبقة 7 (طبقة التطبيق)، ما يُتيح توجيهًا أكثر تطورًا.

بالاستفادة من واجهة برمجة تطبيقات Kubernetes Ingress وميزات مثل HTTPRoute، تتخذ وحدة تحكم Ingress قرارات التوجيه بناءً على السمات التفصيلية الخاصة بـ HTTP، مثل

  • مسارات عناوين URL وأسماء المضيفين
  • عناوين وأساليب HTTP
  • طلب المحتوى وملفات تعريف الارتباط
  • الرموز المميزة للمصادقة وسياق المستخدم

تستند هذه القرارات إلى قواعد التكوين التي تحدِّد سياسات التوجيه والمتطلبات الأخرى. تراقِب وحدات التحكم Ingress التغييرات في هذه التكوينات بشكل مستمر، وتحدِّث سلوك التوجيه تلقائيًا دون تدخل يدوي، ما يضمن توزيع حركة المرور وإدارة الأمان بشكل سلس.

يمكن لمجموعات Kubernetes تشغيل العديد من وحدات تحكم Ingress في وقت واحد، حيث يتعامل كل منها مع أنواع مختلفة من حركة المرور أو التطبيقات. تعمل كل وحدة تحكم بطريقة تعتمد على الأحداث، حيث تستجيب للتغييرات في موارد الدخول من خلال قراءة المواصفات والشروح والبيانات الوصفية ثم تحويلها إلى تعليمات توجيه قابلة للتنفيذ.

الوظائف الرئيسية لوحدة تحكم Kubernetes Ingress

معالجة الطلب

تقوم وحدات تحكم Kubernetes Ingress بفحص الطلبات الواردة واتخاذ قرارات التوجيه بناءً على قواعد محددة مسبقًا، مثل أسماء المضيفين وأسماء DNS. وتتعامل مع حركة مرور HTTP وHTTPS وتقوم بإنهاء SSL وتتخذ قرارات موازنة الأحمال الذكية عبر مثيلات الخدمة المتعددة.

إدارة التكوين

تراقب وحدات تحكم Kubernetes Ingress باستمرار واجهة برمجة تطبيقات Kubernetes بحثاً عن التغييرات التي تطرأ على موارد Ingress عبر مساحات الأسماء. وسواء تم تطبيق هذه التغييرات من خلال kubectl أومسار التكامل المستمر/التسليم المستمر (CI/CD) أو أدوات أخرى (على سبيل المثال،Helm وTerraform)، تقوم وحدة التحكم بتحديث قواعد التوجيه تلقائيًا دون تدخل يدوي أو إعادة تشغيل الخدمة.

موازنة الأحمال

تم دمج وظيفة موازنة التحميل في معظم وحدات التحكم Kubernetes Ingress، حيث تعمل على توزيع الطلبات الواردة عبر مثيلات متعددة من نفس الخدمة، ما يضمن الأداء الأمثل ويمنع أي مثيل واحد من أن يصبح مرهقًا.

إدارة TLS

تشتمل وحدات تحكم Kubernetes Ingress الحديثة على القدرات المتطورة، مثل إنهاء TLS، والتزويد التلقائي للشهادات، والتجديد التلقائي، وفرض الاتصال الآمن.

فحص السلامة

تراقب وحدات تحكم Kubernetes Ingress المتقدمة سلامة خدمات الواجهة الخلفية بشكل مستمر وتوجه حركة المرور تلقائيًا بعيدًا عن الحالات الفاشلة لضمان توفر عالٍ وتحسين تجربة المستخدم.

حالات استخدام وحدة تحكم Kubernetes Ingress

دمج التطبيقات

تستخدم المؤسسات الكبيرة وحدات تحكم Ingress لدمج مئات التطبيقات الداخلية خلف نقاط وصول موحدة. يقلل هذا النهج من تكاليف البنية التحتية مع تحسين الأمن من خلال إنفاذ سياسة مركزية. قد تقوم شركة تصنيع عالمية بتوجيه الطلبات إلى أنظمة تخطيط موارد المؤسسات الإقليمية المختلفة وتطبيقات سلسلة التوريد وبوابات العملاء من خلال نشر وحدة تحكم Ingress واحدة.

بيئات التطوير وتعيين المراحل

تستخدم فرق التطوير وحدات تحكم Ingress لإنشاء بيئات منفصلة لاختبار الميزات الجديدة. يمكن للفرق إعداد بيئات اختبار جديدة تلقائيًا وتوجيه حركة المرور المناسبة لكل منها بناءً على الميزة التي يتم تطويرها.

تكامل الشركاء والمورِّدين

تستخدم الشركات وحدات تحكم Ingress لمشاركة واجهات برمجة التطبيقات الداخلية بأمان مع الشركاء والبائعين. يمكن أن يكون لكل مجموعة أذونات وصول وحدود استخدام مختلفة، تتم إدارتها جميعاً من خلال نظام واحد دون إنشاء بنية تحتية منفصلة.

توزيع حركة المرور على مستوى العالم

تطبق المؤسسات متعددة الجنسيات وحدات تحكم Ingress كجزء من استراتيجيات إدارة حركة المرور العالمية، لتوجيه المستخدمين إلى مراكز البيانات المثالية جغرافيًا مع الحفاظ على سياسات الأمان والمراقبة المتسقة.

متطلبات الامتثال والتدقيق

تستخدم الصناعات المنظمة وحدات تحكم Ingress لتنفيذ متطلبات التسجيل المطلوبة وعناصر التحكم في الوصول (الإضافة عند إنشاء الصفحة) وسياسات إدارة البيانات . يمكن مراقبة جميع أشكال الوصول الخارجي وتدقيقه مركزيا من خلال طبقة Ingress.

فوائد وحدات التحكم في الدخول (Ingress) من Kubernetes

  • دمج البنية التحتية: غالباً ما تتطلب البنى التقليدية موازنات أحمال مخصصة لكل تطبيق، مما يؤدي إلى تكاليف ضخمة فيما يتعلق بالأجهزة والتشغيل. تمكّن وحدات تحكّم Ingress المؤسسات من دمج التطبيقات خلف بنية تحتية مشتركة، مما يقلل من تكاليف موازنة الأحمال ويحسن استخدام الموارد.
  • تسريع دورات التطوير: يمكن لفرق التطوير نشر ميزات جديدة واختبارها دون إشراك مسؤولي الشبكة أو تكوين موازنات أحمال خارجية. تدعم وحدات تحكم Ingress مهام سير عمل GitOps حيث تتم إدارة تغييرات التوجيه من خلال التحكم في الإصدار ومسارات النشر المؤتمتة.
  • قابلية الملاحظة المحسنة:  لتوفير قابلية الملاحظة المحسنة، توفر وحدات تحكم Ingress الحديثة التحليلات المفصلة حول أنماط استخدام التطبيقات وسلوك المستخدم واختناقات الأداء. تتيح إمكانية الرؤية هذه القدرة على اتخاذ قرارات قائمة على البيانات حول تخطيط السعة وتبني الميزات وتحسين تجربة المستخدم.
  • فرض الأمان تلقائيًا: بدلًا من تكوين سياسات الأمان عبر أنظمة متعددة، يمكن للمؤسسات فرض قواعد المصادقة والتفويض والحد من المعدل وجدار حماية تطبيقات الويب (WAF) والحماية من الهجمات الموزعة لحجب الخدمة (DDoS) من خلال سياسات وحدة التحكم Ingress. ويمكن نشر تحديثات الأمان بشكل فوري عبر كافة التطبيقات.
  • قابلية النقل عبر السحابة: على عكس خدمات موازنة الأحمال الخاصة بالسحابة، توفر وحدات تحكم Ingress وظائف متسقة عبر مزودي السحابة المختلفين والبنية الأساسية المحلية. يمكن ترحيل التطبيقات بين البيئات بدون تغييرات في البنية.
  • قدرات توسيع النطاق الديناميكية: يمكن لوحدات تحكم Ingress ضبط أنماط التوجيه تلقائيًا استنادًا إلى ظروف حركة المرور في الوقت الفعلي وسعة الواجهة الخلفية والسياسات المكوّنة. تتيح هذه الميزة تشكيل حركة مرور متطورة تتكيف مع ظروف العمل المتغيرة.

تحديات وحدات التحكم في الدخول (Ingress)

  • اعتبارات الأداء: تتدفق كل حركة المرور الخارجية من خلال وحدات تحكم Ingress، مما يجعلها اختناقات محتملة في بيئات الإنتاج. يجب على المؤسسات التخطيط بعناية للسعة وتنفيذ المراقبة المناسبة وتصميم الاستراتيجية لضمان التوافرية العالية.
  • منحنى التعلم والنفقات التشغيلية: تحتاج الفرق إلى اكتساب الخبرة في مفاهيم شبكات Kubernetes وإدارة تكوين YAML واستكشاف أخطاء الأنظمة الموزعة وإصلاحها، والتي قد تتطلب تدريباً كبيراً وتعديلاً تشغيلياً.

خيارات وحدة تحكم Kubernetes Ingress

يعتمد اختيار وحدة تحكم Kubernetes Ingress المناسبة على المتطلبات التنظيمية والبنية التحتية الحالية وقدرات الفريق. تقدم كل عملية تنفيذ مزايا مميزة لحالات استخدام محددة:

  • وحدة تحكم NGINX Ingress: يوفر الخيار الأكثر اعتمادًا على نطاق واسع، وهو وحدة تحكم NGINX Ingress (ingress-nginx)، أداء من فئة المؤسسات وقدرات تخصيص هائلة. يوفر نظام NGINX البنائي الناضج وثائق شاملة، وخيارات دعم تجارية، وقابلية توسع مثبتة.
  • وحدة تحكم Traefik Ingress: تم تصميم Traefik لبيئات السحابة الأصلية الحديثة، مع التركيز على الاكتشاف التلقائي للخدمة وسهولة الاستخدام. تتميز Traefik بالتفوق في البيئات الديناميكية حيث تتغير خدمات Kubernetes بشكل متكرر، وتوفر التكامل مع شبكات الخدمة وسجلات الحاويات.
  • وحدة تحكم HAProxy Ingress: صُممت وحدة التحكم HAProxy Ingress على موازن الأحمال HAProxy الذي يتوافق مع المعايير القياسية في المجال، وتوفر وحدة التحكم HAProxy Ingress أداءً قويًا لسيناريوهات حركة المرور العالية. تتيح وحدة التحكم هذه خوارزميات متقدمة لموازنة الأحمال وإحصائيات مفصلة وتحكم دقيق في حركة المرور.
  • Istio Gateway: كجزء من منصة الشبكة الخدمية الشاملة Istio، توفِّر بوابة Istio إمكانات متقدمة لإدارة حركة المرور، والأمان، وميزات قابلية الملاحظة. تدعم بوابة Istio Gateway أيضًا قدرات متطورة، مثل تقسيم حركة المرور وحقن الأخطاء والتتبُّع الموزع.
  • حلول مزود السحابة: يقدم كبار مزودي السحابة وحدات تحكم Ingress المحسّنة التي تتكامل بعمق مع منصاتهم. توفر وحدة التحكم في موازن الأحمال AWS Load Balancer، وGoogle Cloud Load Balancer ووحدة تحكم Azure Application Gateway Ingress وIBM Cloud Application Load Balancer تكاملاً سلساً مع الخدمات السحابة الأصلية، والتوسع المؤتمت والفوترة المبسطة.
  • وحدات التحكم القائمة على Envoy: توفر وحدات تحكم Ingress المبنية على وكيل Envoy، بما في ذلك Ambassador وEmissary-Ingress، إدارة عالية الأداء لحركة المرور مع ميزات قابلية الملاحظة المتقدمة. غالبًا ما تتضمن هذه الحلول مصادقة مدمجة وتقييدًا للسرعة ووظيفة بوابة API، مما يجعلها مناسبة للمؤسسات التي تبني استراتيجيات إدارة واجهة برمجة تطبيقات شاملة.
حلول ذات صلة
IBM Red Hat OpenShift

Red Hat OpenShift on IBM Cloud هي منصة حاويات OpenShift (OCP) المُدارة بالكامل.

استكشف Red Hat OpenShift
حلول الحاويات

تنفذ حلول الحاويات أعباء عمل الحاويات وتوسع نطاقها مع ميزات الأمان والابتكار مفتوحة المصدر والنشر السريع.

استكشف الحاويات
خدمات الاستشارات السحابية 

أطلق العنان للقدرات الجديدة وحفِّز مرونة الأعمال من خلال خدمات الاستشارات السحابية من IBM. اكتشف كيفية المشاركة في إنشاء الحلول وتسريع التحول الرقمي وتحسين الأداء من خلال إستراتيجيات السحابة الهجينة والشراكات مع الخبراء.

الخدمات السحابية
اتخِذ الخطوة التالية

ابدأ باستخدام منصة Red Hat OpenShift المدارة بالكامل أو استكشف مرونة نظام IBM Cloud Kubernetes. تمكَّن من تسريع عملية التطوير والنشر لديك من خلال حلول قابلة للتوسع وآمنة ومصممة لتلبية احتياجاتك.

استكشف Red Hat OpenShift استكشف Kubernetes