أفضل ممارسات Kubernetes. Kubernetes صفر ترقية مجموعة التوقف

أفضل ممارسات Kubernetes. إنشاء
أفضل الممارسات Kubernetes حاويات صغيرة . منظمة Kubernetes مع
مساحة اسم أفضل ممارسات Kubernetes . اختبار الجدوى Kubernetes مع اختبارات الاستعداد والحيوية
أفضل الممارسات Kubernetes . تحديد الاستعلامات وحدود الموارد
أفضل ممارسات Kubernetes. الإنهاء الصحيح
لتعطيل أفضل ممارسات Kubernetes. تعيين الخدمات الخارجية

يعرف الجميع مدى جودة إبقاء تطبيقاتك محدثة. يمكن لـ Kubernetes و Docker تسهيل عملية الترقية ، لذا يمكنك إنشاء حاوية جديدة مع تبعيات محدثة ونشرها بسهولة. بالإضافة إلى تحديث تبعيات التطبيق ، تقوم Kubernetes بتحديث الميزات وسياسات الأمان باستمرار.
وبالتالي ، يجب أن تكون العقد الأساسية والبنية التحتية Kubernetes محدثة. في هذه السلسلة ، سوف نتعلم كيف يمكن لـ Google Kubernetes Engine ترقية مجموعة Kubernetes بسهولة.

لذلك ، عند تحديث مجموعة ، تحتاج إلى تحديث المعالجات والعقد ، ويجب تحديث المعالجات أولاً. دعونا نرى كيفية تحديث كلا العنصرين باستخدام محرك Google Kubernetes. يقوم هذا النظام تلقائيًا بتحديث المعالج عند إصداره لإصدارات النقاط. ومع ذلك ، كقاعدة ، لن يتم تحديثه إلى الإصدار الجديد ، على سبيل المثال ، 1.7-1.8 ، تلقائيًا. عندما تكون مستعدًا للترقية إلى الإصدار الجديد ، يمكنك ببساطة النقر فوق الارتباط ترقية الترقية الموجود في وحدة تحكم GKE ، وبعد ذلك سيظهر مربع حوار على الشاشة. يحتوي على تحذير من أن تغيير الإصدار الرئيسي قد يستغرق عدة دقائق ، لا يمكنك خلالها تحرير هذه المجموعة ، بينما أثناء ترقية المعالج ستستمر عمليات النشر والخدمات في العمل بشكل طبيعي. ومع ذلك ، لن تعمل البنية التحتية بالكامل التي تحتاج إلى Kubernetes API.



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

دعونا نرى كيف يمكنك حل هذه المشكلة عن طريق تحديث المعالج بدون توقف.



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

سيتم إنشاء العُقد والمعالجات تلقائيًا في ثلاث مناطق ، وستحتوي المعالجات على عناوين IP متوازنة. سيؤدي ذلك إلى إبقاء واجهة برمجة تطبيقات Kubernetes تعمل بسلاسة أثناء الترقية.

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

أسهل طريقة لتحديث عقد Kubernetes هي استخدام التحديث المتداول ، وهي آلية التحديث الافتراضية التي تستخدمها GKE لتحديث عقدك. يعمل على النحو التالي.



يتم إيقاف تشغيل العقد من النسخة القديمة واحدة تلو الأخرى بحيث تتوقف جميع الوحدات عن العمل فيها. ثم يتم حذف هذه العقد ، وبدلاً من ذلك ، تظهر العقد الجديدة من إصدار Kubernetes المحدث واحدًا تلو الآخر. بعد أن تبدأ عقدة واحدة في العمل ، تستمر الأخرى في عملية التحديث ، ويستمر هذا حتى يتم تحديث جميع العقد. يمكنك السماح لـ GKE بإدارة هذه العملية نيابة عنك عن طريق تشغيل التحديث التلقائي للعقد في تجمع العُقد عن طريق تحديد ممكّن.



إذا لم تقم بذلك ، ستنبهك لوحة معلومات GKE عند توفر تحديث جديد. في هذه الحالة ، لإجراء التحديث ، تحتاج إلى النقر فوق ارتباط تحديثات العقدة التلقائية واتباع التعليمات.



في الوقت نفسه ، من المهم جدًا التأكد من أن حاضناتك يتم التحكم فيها باستخدام مجموعة النسخ المتماثلة أو مجموعة حالة أو شيء مشابه. ثم لن يتم إعادة هيكلة المواقد المستقلة.

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

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



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



لإنشاء تجمع جديد للعقد يسمى pool-two ، تحتاج إلى استخدام الأمر المناسب ، وإعداده بنفس الطريقة تمامًا مثل الأمر الخاص بالتجمع القديم.



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

إذا تحققت من عدد العقد مرة أخرى ، فستعثر على ثلاث عقد جديدة باسم التجمع الثاني ، ومع ذلك ، ستظل القرون على العقد القديمة.



دعنا ننقلها إلى تجمع عقدة جديد ، وننقل عقدة واحدة في كل مرة في وضع التدحرج. للقيام بذلك ، استخدم الأمر الطوقي لكل عقدة قديمة لحمايتها ومنع تكوين مداخن جديدة فيها.



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



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



يتيح لك محرك Google Kubernetes الحفاظ على مجموعة Kubernetes الخاصة بك محدثة ببضع نقرات فقط. أوصي بشدة باستخدام مجموعات GKE الإقليمية لمعالجات التوفر العالية وتحديثات العقدة التلقائية لضمان التحديثات الصحيحة والخالية من المشاكل.

إذا كنت بحاجة إلى تحكم إضافي في عملية تحديث العقدة ، فيمكنك تزويدها بمساعدة المجمعات ، دون التخلي عن مزايا النظام الأساسي للإدارة الذي توفره GKE.

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

يتبع قريبا جدا ...


القليل من الدعاية :)


أشكركم على البقاء معنا. هل تحب مقالاتنا؟ هل تريد رؤية مواد أكثر إثارة للاهتمام؟ ادعمنا عن طريق تقديم طلب أو التوصية لأصدقائك ، VPS السحابي للمطورين من $ 4.99 ، وهو نظير فريد من نوعه لخوادم مستوى الدخول التي اخترعناها لك: الحقيقة الكاملة عن VPS (KVM) E5-2697 v3 (6 نوى) 10GB DDR4 480GB SSD 1Gbps من $ 19 أو كيفية تقسيم الخادم؟ (تتوفر الخيارات مع RAID1 و RAID10 ، حتى 24 مركزًا و 40 جيجابايت DDR4).

Dell R730xd أرخص مرتين في مركز بيانات Equinix Tier IV في أمستردام؟ فقط لدينا 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV من 199 دولارًا في هولندا!Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - من 99 دولارًا! اقرأ عن كيفية بناء مبنى البنية التحتية الفئة c باستخدام خوادم Dell R730xd E5-2650 v4 بتكلفة 9000 يورو مقابل سنت واحد؟

All Articles