إصدار Kubernetes 1.18 ، نظام إدارة مجموعة الحاويات المعزولة

نشرت إطلاق منصة تنسيق الحاويات Kubernetes 1.18 تحديث، والذي يسمح لك بإدارة مجموعة من الحاويات المعزولة ككل ويوفر آليات لنشر وصيانة وتوسيع نطاق التطبيقات التي تعمل في الحاويات. تم إنشاء المشروع في الأصل بواسطة Google، ثم تم نقله بعد ذلك إلى موقع مستقل تشرف عليه مؤسسة Linux. يتم وضع النظام الأساسي كحل عالمي تم تطويره بواسطة المجتمع، وغير مرتبط بأنظمة فردية وقادر على العمل مع أي تطبيقات في أي بيئة سحابية. كود Kubernetes مكتوب بلغة Go و وزعت من خلال مرخص بموجب Apache 2.0.

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

يتضمن إصدار Kubernetes 1.18 38 تغييرًا وتحسينًا، تم نقل 15 منها إلى الحالة المستقرة و11 إلى الحالة التجريبية. تم اقتراح 12 تغييرًا جديدًا في حالة ألفا. عند إعداد الإصدار الجديد، تم بذل جهود متساوية لتحسين الوظائف المختلفة وتحقيق الاستقرار في القدرات التجريبية، بالإضافة إلى إضافة تطورات جديدة. التغييرات الرئيسية:

  • كوبيكتل
    • أضيفت بواسطة إصدار ألفا من أمر "kubectl debug"، والذي يسمح لك بتبسيط تصحيح الأخطاء في القرون عن طريق تشغيل حاويات سريعة الزوال باستخدام أدوات تصحيح الأخطاء.
    • أعلن مستقرة الأمر "kubectl diff"، الذي يسمح لك برؤية ما سيتغير في المجموعة إذا قمت بتطبيق البيان.
    • إزالة جميع المولدات الخاصة بأمر "kubectl run"، باستثناء المولد الخاص بتشغيل جراب واحد.
    • تغير علامة "--dry-run"، اعتمادًا على قيمته (العميل والخادم ولا شيء)، يتم تنفيذ التنفيذ التجريبي للأمر من جانب العميل أو الخادم.
    • كود كوبيكتل أبرز إلى مستودع منفصل. سمح ذلك بفصل kubectl عن تبعيات kubernetes الداخلية وجعل من السهل استيراد التعليمات البرمجية إلى مشاريع الطرف الثالث.
  • دخول
    • بدأت تغيير مجموعة واجهة برمجة التطبيقات للدخول إلى Network.v1beta1.
    • مضاف حقول جديدة:
      • pathType، والذي يسمح لك بتحديد كيفية مقارنة المسار في الطلب
      • يعد IngressClassName بديلاً للتعليق التوضيحي kubernetes.io/ingress.class، والذي تم الإعلان عن إهماله. يحدد هذا الحقل اسم الكائن الخاص InressClass
    • وأضاف كائن IngressClass، الذي يشير إلى اسم وحدة التحكم في الدخول ومعلماته الإضافية وعلامة استخدامه افتراضيًا
  • العطاء
    • تمت الإضافة الحقل AppProtocol، والذي يمكنك من خلاله تحديد البروتوكول الذي يستخدمه التطبيق
    • مترجم في حالة تجريبية ويتم تمكينه افتراضيًا EndpointSlicesAPI، وهو بديل أكثر وظيفية لنقاط النهاية العادية.
  • Сеть
  • الأقراص الدائمة. تم إعلان استقرار الوظيفة التالية:
  • تكوين التطبيق
    • إلى ConfigMap والكائنات السرية وأضاف حقل جديد "غير قابل للتغيير". يؤدي تعيين قيمة الحقل إلى صحيح إلى منع تعديل الكائن.
  • مخطط
    • أضيفت بواسطة القدرة على إنشاء ملفات تعريف إضافية لجدولة kube. إذا كان من الضروري في السابق تشغيل برامج جدولة منفصلة إضافية لتنفيذ خوارزميات توزيع البودات غير القياسية، فمن الممكن الآن إنشاء مجموعات إضافية من الإعدادات للمجدول القياسي وتحديد اسمه في نفس حقل البود ".spec.schedulerName". الحالة - ألفا.
    • الإخلاء على أساس العيب أعلن مستقرة
  • تدريج
    • أضيفت بواسطة تظهر القدرة على التحديد في HPA درجة العدوانية عند تغيير عدد القرون قيد التشغيل، أي أنه عندما يزيد الحمل، قم بتشغيل N مرات أكثر من المثيلات مرة واحدة.
  • kubelet
    • مدير الطوبولوجيا تلقى حالة بيتا. تتيح هذه الميزة تخصيص NUMA، مما يتجنب تدهور الأداء على الأنظمة متعددة المقابس.
    • حالة بيتا وصلتني وظيفة PodOverhead، والتي تسمح لك بتحديد مقدار الموارد الإضافية المطلوبة لتشغيل الكبسولة في RuntimeClass.
    • موسع دعم HugePages، في حالة ألفا، تمت إضافة العزل على مستوى الحاوية ودعم أحجام الصفحات الضخمة المتعددة.
    • تم الحذف نقطة النهاية للمقاييس /metrics/resource/v1alpha1، يتم استخدام /metrics/resource بدلاً من ذلك
  • API
    • أخيراً تمت إزالة القدرة على استخدام تطبيقات مجموعة API القديمة/v1beta1 والإضافات/v1beta1.
    • تطبيق جانب الخادم تمت الترقية إلى حالة beta2. ينقل هذا التحسين معالجة الكائنات من kubectl إلى خادم API. يدعي مؤلفو التحسين أن هذا سيصلح العديد من الأخطاء الموجودة التي لا يمكن تصحيحها في الوضع الحالي. وأضافوا أيضًا قسمًا ".metadata.managedFields"، حيث يقترحون تخزين سجل تغييرات الكائنات، مع الإشارة إلى من ومتى وما الذي تغير بالضبط.
    • أعلن واجهة برمجة التطبيقات الخاصة بـCertificationSigningRequest مستقرة.
  • دعم منصة ويندوز.

المصدر: opennet.ru

إضافة تعليق