لقد غيرت DevOps بشكل كبير الطريقة التي يقوم بها مهندسو ومطورو البرمجيات بتطوير ونشر التطبيقات. واحدة من التقنيات في قلب هذه الثورة هي Kubernetes.
دعنا نستكشف كيف يمكنك تثبيت مثيل محلي لـ Kubernetes على Ubuntu باستخدام MicroK8s (MicroKates). مع هذا الإعداد في مكانه ، يمكنك بسهولة استضافة تطبيقات الحاوية بطريقة آمنة وموثوقة وقابلة للتطوير بدرجة كبيرة.
لماذا نستخدم MicroK8s؟
Kubernetes عبارة عن نظام أساسي مفتوح المصدر يساعد في تبسيط عمليات DevOps من خلال أتمتة النشر والتوسع وإدارة التطبيقات المعبأة في حاويات. يُعرف Kubernetes أيضًا باسم K8s ، وهو الاسم المشتق من حساب الأحرف الثمانية بينهما ك و س في اسم Kubernetes. فكر في MicroK8s كمثال Micro Kubernetes.
تستخدم معظم البيئات السحابية العامة والخاصة التي تعمل بنظام التشغيل Ubuntu Charmed Kubernetes لإدارة التطبيقات المعبأة في حاويات. ومع ذلك ، فإن التحدي الذي يواجه Charmed Kubernetes هو أنه يحتاج إلى موارد كبيرة ويتطلب مستوى جيدًا من المعرفة لتكوينه بشكل صحيح.
هنا يأتي دور MicroK8s. MicroK8s عبارة عن برنامج Kubernetes صغير وخفيف الوزن يمكن تشغيله على جهاز كمبيوتر للمطور أو جهاز إنترنت الأشياء أو على الأجهزة المتطورة محليًا دون الحاجة إلى جهاز افتراضي. MicroK8s عبارة عن منصة مشتركة ويمكن تشغيلها على كل من معماريات Intel و ARM.
تمنحك MicroK8s واحدة من أفضل الطرق للتعرف على Kubernetes ، بأقل قدر من الاحتكاك. إنها Kubernetes معتمدة من قبل Cloud Native Computing Foundation (CNCF) ، والتي تضمن ذلك تطبيقات Kubernetes متوافقة وقابلة للتشغيل المتبادل وفقًا للصناعة المحددة المعايير.
الخطوة 1: تثبيت MicroK8s على أوبونتو
يمكنك بسهولة تثبيت MicroK8s على أوبونتو باستخدام الأمر المفاجئ.
تحميل sudo snap install microk8s --classic
بدلاً من ذلك ، يمكنك تثبيت MicroK8s من واجهة المستخدم الرسومية باستخدام Ubuntu Software Center. ببساطة ابحث عن microk8s ثم انقر فوق تثبيت زر.
الخطوة 2: تكوين جدار الحماية الخاص بك لـ MicroK8s
لضمان الاتصال السلس بين البودات ومع الإنترنت ، يجب تمكين الاتصالات الواردة والصادرة على واجهة شبكة الحاوية لجدار الحماية الخاص بك.
الكبسولة هي أصغر وحدة حوسبة قابلة للنشر في Kubernetes ؛ يمكن أن تكون مجموعة واحدة أو مجموعة من الحاويات ذات موارد تخزين وشبكة مشتركة ، إلخ.
sudo ufw تسمح بالدخول على cni0 && sudo ufw تسمح للخروج على cni0
بعد ذلك ، قم بتشغيل الأمر التالي:
sudo ufw الافتراضي السماح الموجه
يتعلم أكثركيفية تكوين جدار حماية Ubuntu باستخدام UFW
الخطوة 3: إضافة المستخدم الخاص بك إلى مجموعة MicroK8s
في الوقت الحالي ، سيتعين عليك استخدام ملف سودو الأمر لتشغيل معظم أوامر MicroK8s. في حين أن هذا إجراء أمني جيد على خادم الإنتاج ، فقد لا يكون ضروريًا على جهاز التطوير.
أضف المستخدم الخاص بك إلى مجموعة MicroK8s لتجنب استخدام sudo.
sudo usermod -aG microk8s دولار USER
أيضًا ، اجعل المستخدم الحالي مالكًا لملف ~ / .kube الدليل.
sudo chown -f -R $ USER ~ / .kube
لكي تصبح التغييرات سارية المفعول ، أعد تحميل مجموعات المستخدمين عن طريق تشغيل الأمر التالي:
newgrp microk8s
يتعلم أكثر: كيفية إدارة مجموعات المستخدمين على نظام Linux
الخطوة 4: تمكين الإضافات الهامة
بشكل افتراضي ، تحتوي MicroK8s على الحد الأدنى لتحقيق الحد الأدنى من البصمة على أجهزة الحافة وأجهزة إنترنت الأشياء. ومع ذلك ، يمكنك تثبيت بعض الإضافات المهمة لإدارة خدمات MicroK8s. قم بتمكين الوظائف الإضافية لنظام أسماء النطاقات ولوحة المعلومات والتخزين بامتداد microk8s يأمر.
تقوم microk8s بتمكين تخزين لوحة أجهزة القياس في نظام أسماء النطاقات
قد تكون الوظيفة الإضافية لـ DNS مطلوبة من قبل خدمات أخرى ، لذلك يوصى بتمكينها دائمًا.
تمنحك الوظيفة الإضافية للوحة القيادة نظرة عامة رسومية للخدمات في MicroK8s ؛ يمكنك أيضًا استخدامه لإدارة الخدمات.
يمكنك عرض قائمة بالوظائف الإضافية MicroK8s المتوفرة عن طريق تشغيل الأمر:
حالة microk8s
الخطوة 5: عرض لوحة معلومات MicroK8s
الآن بعد أن قمت بتمكين الوظيفة الإضافية للوحة القيادة ، يمكنك الوصول بسهولة إلى لوحة معلومات MicroK8s من متصفح الويب الخاص بك.
أولاً ، أنت بحاجة إلى عنوان IP الخاص بلوحة القيادة. يمكنك الحصول عليه عن طريق تشغيل الأمر:
microk8s kubectl الحصول على جميع مساحات الأسماء
من إخراج الأمر أعلاه ، ستلاحظ أن ملف لوحة القيادة kubernetes الخدمة تعمل على عنوان IP 10.152.183.35 وتستمع على منفذ TCP 443. لاحظ أن عنوان IP هذا قد يكون مختلفًا عن العنوان الذي تستخدمه خدمة لوحة المعلومات لأنه يتم إنشاؤه عشوائيًا.
في المستعرض الخاص بك ، انتقل إلى عنوان IP المدرج. في هذه الحالة ، سيكون https://10.152.183.35:443. تأكد من الإشارة إلى عنوان URL الصحيح.
لأغراض أمنية ، ستطلب منك لوحة معلومات Kubernetes تفاصيل المصادقة لتسجيل الدخول. يمكنك الوصول إلى الرمز المميز الافتراضي للوحة القيادة عن طريق تشغيل الأمر التالي. ثم انسخ ملف kubernetes.io/service-account-token قدمه والصقه في إدخال الرمز المميز.
الرمز المميز = $ (microk8s kubectl -n kube-system احصل على السر | grep الافتراضي رمز | قطع -d "" -f1)
وصف microk8s kubectl -n kube-system رمز $ السري
تقدم لك لوحة القيادة نظرة عامة على أحمال عمل MicroK8s والخدمات والتكوين والمجموعات وما إلى ذلك.
الخطوة 6: إنشاء خدمة باستخدام MicroK8s
لرؤية MicroK8s قيد التشغيل ، دعنا ننشئ نشر خدمة ميكروبوت يحتوي على جرابين. قم بإنشاء الكبسولة باستخدام ملف kubectl يأمر:
microk8s kubectl إنشاء ميكروبوت للنشر - صورة = dontrebootme / ميكروبوت: v1
قم بتوسيع حجرة الميكروبوت باستخدام الأمر أدناه.
microk8s kubectl scale للنشر - النسخ المتماثلة = 2
قم بإنشاء خدمة من أجل الكشف عن نشر microbot.
microk8s kubectl يعرض ميكروبوت النشر - النوع = NodePort - المنفذ = 80 - الاسم = خدمة الميكروبوت
لقد نشرنا الآن حاضنين ميكروبوت تحت الاسم الخدمة / خدمة الميكروبوت. يمكنك عرض تفاصيل خدمة microbot والخدمات الأخرى عن طريق تشغيل الأمر التالي:
microk8s kubectl الحصول على جميع مساحات الأسماء
ستلاحظ أن خدمة microbot تعمل على NodePort ، وبالتالي ، يمكنك الوصول إليها عبر المتصفح على جهاز الكمبيوتر الخاص بك. في هذه الحالة ، يتم تشغيل الخدمة على المنفذ الذي تم إنشاؤه عشوائيًا 30353.
في المستعرض الخاص بك ، انتقل إلى URL http://localhost: 30353, أين 30353 هو رقم المنفذ المدرج في الإخراج أعلاه. تأكد من أنك تستخدم رقم المنفذ الصحيح.
Kubernetes مقابل. عامل ميناء: أي واحد يجب أن تختار؟
نظر هذا الدليل في كيفية تثبيت حد أدنى من مساحة Kubernetes محليًا على جهاز الكمبيوتر أو جهاز الحافة. Kubernetes هو جزء من سير عمل العديد من المطورين ويستخدم على نطاق واسع لنشر تطبيقات حاويات كبيرة الحجم في الإنتاج.
يستخدم Kubernetes لإدارة أو تنظيم مجموعة من الحاويات ، على سبيل المثال حاويات رصيف ، بكل سهولة. من ناحية أخرى ، يستخدم Standalone Docker بشكل أساسي لإدارة الحاويات الفردية. يعتمد اختيار استخدام Docker أو Kubernetes على كفاءات فريقك وحجم البرنامج المطلوب نشره في الإنتاج.
اختيار نظام الحاويات هو اختيار مباشر بين نظامين. هل يجب عليك اختيار Kubernetes أو Docker؟
اقرأ التالي
- لينكس
- أوبونتو
- تطوير التطبيقات
تقوم Mwiza بتطوير البرامج حسب المهنة وتكتب على نطاق واسع على Linux والبرمجة الأمامية. تشمل بعض اهتماماته التاريخ والاقتصاد والسياسة والهندسة المعمارية للمؤسسات.
اشترك في نشرتنا الإخبارية
انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!
انقر هنا للاشتراك