Kubernetes 1.18 کی ریلیز، الگ تھلگ کنٹینرز کے جھرمٹ کے انتظام کے لیے ایک نظام

شائع ہوا کنٹینر آرکیسٹریشن پلیٹ فارم کی رہائی کبرنیٹس 1.18، جو آپ کو مجموعی طور پر الگ تھلگ کنٹینرز کے جھرمٹ کا انتظام کرنے کی اجازت دیتا ہے اور کنٹینرز میں چلنے والی ایپلیکیشنز کو تعینات کرنے، برقرار رکھنے اور اسکیلنگ کرنے کا طریقہ کار فراہم کرتا ہے۔ یہ پروجیکٹ اصل میں گوگل نے بنایا تھا، لیکن پھر اسے لینکس فاؤنڈیشن کے زیر نگرانی ایک آزاد سائٹ پر منتقل کر دیا گیا۔ پلیٹ فارم کو کمیونٹی کے ذریعہ تیار کردہ ایک عالمگیر حل کے طور پر پوزیشن میں رکھا گیا ہے، جو انفرادی نظاموں سے منسلک نہیں ہے اور کسی بھی کلاؤڈ ماحول میں کسی بھی ایپلیکیشن کے ساتھ کام کرنے کے قابل ہے۔ Kubernetes کوڈ Go اور میں لکھا گیا ہے۔ نے بانٹا اپاچی 2.0 کے تحت لائسنس یافتہ۔

بنیادی ڈھانچے کی تعیناتی اور انتظام کے لیے افعال فراہم کرتا ہے، جیسے DNS ڈیٹا بیس کی بحالی، لوڈ بیلنسنگ،
کلسٹر نوڈس کے درمیان کنٹینرز کی تقسیم (کنٹینر کی منتقلی بوجھ اور سروس کی ضروریات میں تبدیلیوں پر منحصر ہے)، درخواست کی سطح پر صحت کی جانچ پڑتال، اکاؤنٹ کا انتظام، چلتے ہوئے کلسٹر کی اپ ڈیٹ اور متحرک اسکیلنگ، اسے روکے بغیر۔ یہ ممکن ہے کہ کنٹینرز کے گروپس کو ایک ساتھ اپ ڈیٹ کرنے اور انڈو کرنے والے آپریشنز کے ساتھ پورے گروپ کے لیے، نیز وسائل کی تقسیم کے ساتھ حصوں میں کلسٹر کی منطقی تقسیم ممکن ہے۔ ایپلی کیشنز کی متحرک منتقلی کے لیے سپورٹ موجود ہے، ڈیٹا سٹوریج کے لیے جس میں مقامی اسٹوریج اور نیٹ ورک سٹوریج سسٹم دونوں استعمال کیے جا سکتے ہیں۔

Kubernetes 1.18 کی ریلیز میں 38 تبدیلیاں اور بہتری شامل ہیں، جن میں سے 15 کو مستحکم حالت میں اور 11 کو بیٹا اسٹیٹس پر منتقل کر دیا گیا ہے۔ الفا سٹیٹس میں 12 نئی تبدیلیاں تجویز کی گئی ہیں۔ نیا ورژن تیار کرتے وقت، مساوی کوششوں کا مقصد مختلف فعالیتوں کو بہتر بنانا اور تجرباتی صلاحیتوں کو مستحکم کرنا، نیز نئی پیشرفت کو شامل کرنا تھا۔ اہم تبدیلیاں:

  • کیوبیکٹل
    • شامل کیا گیا۔ "kubectl debug" کمانڈ کا ایک الفا ورژن، جو آپ کو ڈیبگنگ ٹولز کے ساتھ عارضی کنٹینرز شروع کرکے پوڈز میں ڈیبگنگ کو آسان بنانے کی اجازت دیتا ہے۔
    • مستحکم قرار دیا گیا۔ "kubectl diff" کمانڈ، جو آپ کو یہ دیکھنے کی اجازت دیتی ہے کہ اگر آپ مینی فیسٹ کو لاگو کرتے ہیں تو کلسٹر میں کیا تبدیلی آئے گی۔
    • ہٹا دیا گیا۔ "kubectl run" کمانڈ کے تمام جنریٹرز، سوائے ایک پوڈ کو چلانے کے لیے جنریٹر کے۔
    • بدل گیا۔ پرچم "-dry-run"، اس کی قیمت (کلائنٹ، سرور اور کوئی نہیں) پر منحصر ہے، کمانڈ کا ٹرائل ایگزیکیوشن کلائنٹ یا سرور سائیڈ پر کیا جاتا ہے۔
    • kubectl کوڈ روشنی ڈالی ایک علیحدہ ذخیرہ میں۔ اس نے kubectl کو اندرونی kubernetes انحصار سے الگ کرنے کی اجازت دی اور تیسرے فریق کے منصوبوں میں کوڈ درآمد کرنا آسان بنا دیا۔
  • لاگ ان
    • شروع کر دیا انگریس کے لیے API گروپ کو networking.v1beta1 میں تبدیل کرنا۔
    • شامل کیا گیا۔ نئے فیلڈز:
      • pathType، جو آپ کو یہ بتانے کی اجازت دیتا ہے کہ درخواست میں راستے کا موازنہ کیسے کیا جائے گا۔
      • IngressClassName kubernetes.io/ingress.class تشریح کا متبادل ہے، جسے فرسودہ قرار دیا گیا ہے۔ یہ فیلڈ خاص آبجیکٹ InressClass کا نام بتاتا ہے۔
    • شامل کیا گیا۔ ایک IngressClass آبجیکٹ، جو ingress کنٹرولر کے نام، اس کے اضافی پیرامیٹرز اور اسے بطور ڈیفالٹ استعمال کرنے کی نشانی کی نشاندہی کرتا ہے۔
  • سروس
    • شامل AppProtocol فیلڈ، جس میں آپ یہ بتا سکتے ہیں کہ ایپلی کیشن کون سا پروٹوکول استعمال کرتی ہے۔
    • ترجمہ شدہ بیٹا اسٹیٹس میں اور ڈیفالٹ EndpointSlicesAPI کے ذریعے فعال، جو کہ ریگولر اینڈ پوائنٹس کے لیے زیادہ فعال متبادل ہے۔
  • Сеть
    • معاونت IPv6 کو بیٹا سٹیٹس میں منتقل کر دیا گیا ہے۔
  • مستقل ڈسکیں۔ درج ذیل فعالیت کو مستحکم قرار دیا گیا ہے۔
  • درخواست کی ترتیب
    • ConfigMap اور خفیہ اشیاء کے لیے شامل کیا نیا فیلڈ "غیر متغیر"۔ فیلڈ ویلیو کو سچ پر سیٹ کرنا آبجیکٹ میں ترمیم کو روکتا ہے۔
  • شیڈولر
    • شامل کیا گیا۔ kube-scheduler کے لیے اضافی پروفائلز بنانے کی صلاحیت۔ اگر پہلے غیر معیاری پوڈ ڈسٹری بیوشن الگورتھم کو لاگو کرنے کے لیے اضافی علیحدہ شیڈیولرز شروع کرنا ضروری تھا، تو اب معیاری شیڈیولر کے لیے سیٹنگز کے اضافی سیٹ بنانا اور اسی پوڈ فیلڈ ".spec.schedulerName" میں اس کا نام بتانا ممکن ہے۔ حیثیت - الفا
    • داغ پر مبنی بے دخلی۔ مستحکم قرار دیا گیا۔
  • اسکیلنگ
    • شامل کیا گیا۔ HPA میں وضاحت کرنے کی صلاحیت جارحیت کی ڈگری کو ظاہر کرتی ہے جب چلتے ہوئے پوڈز کی تعداد میں تبدیلی آتی ہے، یعنی جب بوجھ بڑھتا ہے، ایک بار میں N گنا زیادہ مثالیں شروع کریں۔
  • کوبیلیٹ
    • ٹوپولوجی مینیجر بیٹا کی حیثیت حاصل کی. یہ خصوصیت NUMA مختص کرنے کے قابل بناتی ہے، جو ملٹی ساکٹ سسٹمز پر کارکردگی میں کمی کو روکتی ہے۔
    • بیٹا اسٹیٹس ملا PodOverhead فنکشن، جو آپ کو RuntimeClass میں پوڈ کو چلانے کے لیے درکار وسائل کی اضافی مقدار کی وضاحت کرنے کی اجازت دیتا ہے۔
    • توسیع شدہ ہیو پیجز کے لیے سپورٹ، الفا اسٹیٹس میں کنٹینر لیول آئسولیشن اور متعدد ہیج پیجز سائزز کے لیے سپورٹ شامل کیا گیا۔
    • حذف کر دیا گیا۔ اس کے بجائے میٹرکس /میٹرکس/ریسورس/v1alpha1، /metrics/resource کے لیے اینڈ پوائنٹ استعمال کیا جاتا ہے
  • API
    • آخر میں فرسودہ API گروپ ایپس/v1beta1 اور extensions/v1beta1 استعمال کرنے کی اہلیت کو ہٹا دیا۔
    • سرور سائیڈ اپلائی کریں۔ beta2 اسٹیٹس میں اپ گریڈ کیا گیا۔ یہ بہتری آبجیکٹ ہیرا پھیری کو kubectl سے API سرور میں لے جاتی ہے۔ بہتری کے مصنفین کا دعویٰ ہے کہ اس سے بہت سی موجودہ غلطیاں دور ہو جائیں گی جنہیں موجودہ حالات میں درست نہیں کیا جا سکتا۔ انہوں نے ایک سیکشن ".metadata.managedFields" بھی شامل کیا، جس میں وہ آبجیکٹ کی تبدیلیوں کی تاریخ کو ذخیرہ کرنے کی تجویز پیش کرتے ہیں، جس سے یہ ظاہر ہوتا ہے کہ کون، کب اور بالکل کیا تبدیل ہوا ہے۔
    • اعلان کیا۔ مستحکم CertificateSigningRequest API۔
  • ونڈوز پلیٹ فارم سپورٹ۔

ماخذ: opennet.ru

نیا تبصرہ شامل کریں