إطلاق منصة تنسيق الحاويات تتيح هذه التقنية الإدارة المتكاملة لمجموعة من الحاويات المعزولة، وتوفر آليات لنشر التطبيقات التي تعمل داخل الحاويات وصيانتها وتوسيع نطاقها. وقد أنشأت جوجل هذا المشروع في الأصل، ثم نُقل لاحقًا إلى منصة مستقلة تشرف عليها المنظمة. 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، وهو بديل أكثر وظيفية لنقاط النهاية العادية.
- Сеть
- تم نقل IPv6 إلى حالة النسخة التجريبية.
- الأقراص الدائمة. تم إعلان استقرار الوظيفة التالية:
- تكوين التطبيق
- إلى 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 مستقرة.
- دعم المنصة Windows.
- يتزايد الدعم باستمرار Windows تمت إضافة إصدارات تجريبية (ألفا) من Node.js.
- تم نقل الدعم إلى حالة مستقرة
- يتزايد الدعم باستمرار Windows تمت إضافة إصدارات تجريبية (ألفا) من Node.js.
المصدر: opennet.ru
