‫بالنسبة إلى مجموعتك الأولى ، ربما حتى مجموعاتك القليلة
‫الأولى ، لن تضطر إلى القلق كثيرًا بشأن هذا المفهوم
‫الخاص بمساحات الأسماء والسياقات.
‫لكن ، هذا شيء يجب أن تكون على دراية بوجوده
‫في حال احتجت إلى استخدامه.
‫مساحات الأسماء هي في الأساس مجموعات افتراضية ، أو
‫عروض افتراضية ، داخل مجموعة واحدة.
‫لا يقوم بتصفية عرض الأمر فقط بحيث ترى أشياء معينة فقط
‫عند كتابة الأوامر ، ولكن أيضًا ، باستخدام
‫المكونات الإضافية المناسبة لسياسة الشبكة ، يمكنه
‫التحكم في الشبكة.
‫هذا يختلف قليلاً عن Swarm حيث Swarm ، خارج
‫الصندوق ، ستنشئ شبكات تراكب مختلفة وكان كل
‫شيء خاصًا بشكل أساسي.
‫في Kubernetes ، تعتمد الشبكات والتحكم في التطبيقات
‫وخصوصيتها وما يمكنهم رؤيته والوصول إليه
‫وما يتم التحكم فيه فعليًا على المكون الإضافي للشبكة.
‫لا ترتبط Namespaces نفسها بمساحات Docker ، والتي
‫ربما تكون قد سمعت عنها ، والتي تعد جزءًا من
‫نظام Linux الفرعي ، وهذا نوع من كيفية عمل
‫الحاويات. هذا لا علاقة له بذلك.
‫هذا ببساطة يقول Kubernetes ، قد يكون لديك الكثير
‫من الأشياء التي تحدث في مجموعتك ، وسأمنحك الفرصة
‫لإنشاء مجموعات صغيرة حيث يمكنك تعيين
‫مساحة الاسم مع سياق وهذا هو عرضك من خلال
‫تغيير السياق الخاص بك.
‫يمكنك تغيير ما تراه.
‫ثم مساحة الاسم عبارة عن شرائح مختلفة
‫لتصفية الأوامر ، بالإضافة إلى إمكانية
‫الشبكات. على نظامي هنا على سطح المكتب
‫الخاص بي ، أرى ببساطة kubectl يحصل على مساحات أسماء
‫ويظهر لي هذا الأمر 4. هذا نوع من غير المألوف
‫، المعيار الذي ستراه.
‫الافتراضي هو ما كنت تعمل معه حتى الآن.
‫هذا مخصص لمساحة الاسم الافتراضية
‫لتطبيقاتك. الشيء الوحيد الذي يظهر لك حقًا
‫عند حصولك على kubectl على كل شيء
‫هو نقطة نهاية Kubernetes API نفسها ، أليس كذلك.
‫حتى نبدأ في إضافة التطبيقات ، لم نتمكن من
‫رؤية أي شيء هناك. هناك تقنيًا كل هذه الأشياء
‫تعمل في الخلفية ، صحيح. هذا ما يحصل عليه kubectl - جميع
‫مساحات الأسماء.
‫يمكنك رؤية جميع حاويات واجهة برمجة التطبيقات
‫وما لا يعمل داخل Kubernetes نفسه باستخدام
‫هذا الأمر. إذا نظرت إلى جميع مساحات الأسماء دفعة واحدة
‫، فسأحصل على كل شيء بما في ذلك عناصر النظام.
‫هذه طريقة عرض لما سيبدو عليه الميني كيوب
‫الذي يضع كل شيء في كبسولاته الخاصة لتشغيل الكتلة
‫نفسها.
‫هناك الكثير يحدث هناك.
‫الإدراك هو أنه عندما تستخدم Kubernetes
‫بشكل طبيعي ، يركز سطر الأوامر على مساحة الاسم الافتراضية
‫، افتراضيًا.
‫سترى فقط تطبيقاتك هناك حقًا ، بخلاف نقطة نهاية
‫واجهة برمجة التطبيقات.
‫هذا شيء جيد ، صحيح. إنه يخفي تعقيد ما يحدث
‫في الخلفية عن أمرك اليومية ، لأنك
‫لا تحتاج حقًا إلى رؤية تلك الأشياء
‫إلا إذا كنت بحاجة إلى ترقيتها ، أو تغييرها ، أو إذا كانت
‫لديك مشكلة. يلعب السياق دورًا في تعيين
‫طريقة العرض الخاصة بك عند تشغيل الأوامر.
‫يقوم kubectl بالكثير من الأشياء ، أليس كذلك.
‫يمكنه الاتصال بمجموعات مختلفة.
‫يمكنه تغيير المصادقة ، أو المستخدم ، الذي
‫تستخدمه للتحدث إلى الكتلة ، التي لم نتحدث
‫عنها ، أو مساحة الاسم.
‫إذن ، هناك هذه الأجزاء الثلاثة ، حقًا ، من السياق.
‫هذا هو الكتلة أو المصادقة أو المستخدم ، ثم
‫مساحة الاسم التي تريد رؤيتها.
‫كل ما يتم تحديده ، افتراضيًا
‫، في ملف داخل ملف. دليل kube للدليل الرئيسي
‫الخاص بك.
‫يوجد ملف هناك يسمى config ، وسيكون
‫في الأساس ملف YAML لجميع هذه الأجزاء الثلاثة.
‫يمكن أن يكون لديك عدة إدخالات هناك ، ويمكنك
‫تعديلها كيفما تشاء.
‫يمكن أن يكون لديك مجموعة من المجموعات المختلفة وطالما
‫أن لديك الشهادات للتحدث معهم ، والمصادقة الصحيحة
‫، يمكنك وضع كل هذه الأشياء في هذا الملف ، وهو شيء تريد
‫الاحتفاظ به سراً. إنه ليس شيئًا تريد
‫حقًا مشاركته لأنه يحتوي عادةً على مفاتيح
‫المصادقة الخاصة بك للتحدث إلى
‫مجموعة. إذا كنت تستخدم الأمر
‫kubectl config مع الأمر الفرعي get contexts ، فهذا جمع
‫، يمكنك أن ترى بشكل أساسي إخراج
‫هذا الملف. بدلاً من التخلص منه بشكل
‫خام ، يمكنك في الواقع رؤية قائمة صغيرة
‫لطيفة بما يحتويه بداخله.
‫في حالتي ، لديّ Docker Desktop القياسي على
‫جهازي المحلي. هذا الإدخال موجود مرتين للإصدارات
‫القليلة الأخيرة من Docker Desktop لأنهم قاموا بتغيير الاسم لذا
‫فهم نوعًا ما يحتفظون بهما من أجل التوافق.
‫ثم لدي minikube محلي ومثيل بعيد
‫من micro K8s يعملان على خادم
‫Ubuntu.
‫لذا ، يمكنك أن تتخيل أنه إذا كنت أدير الكثير
‫من الخوادم الأخرى ، فأنا لا أرغب دائمًا بالضرورة في الدخول
‫إلى تلك الأجهزة. أريد حقًا الجلوس على جهازي المحلي والتحدث إلى
‫واجهة برمجة التطبيقات البعيدة.
‫يمكنك استخدام الأمر kubectl config مع أي من
‫خيارات المجموعة. أنت بالتأكيد تريد التحقق
‫من المساعدة هناك. ولكن ، هناك خيارات محددة لتعيين الإعدادات
‫الافتراضية لكل واحد من هذه الخيارات ، لذلك من المحتمل
‫أن تقوم بتغيير المستخدم للحصول على مصادقة مختلفة.
‫لذلك
‫، ربما لديك حقوق الله بدلاً من مجرد مجموعة فرعية من الأوامر التي يمكن تشغيل
‫Kubernetes. أو ربما ستغير المجموعة
‫التي تتحدث إليها.
‫هناك أيضًا مكونات إضافية لسطر الأوامر إذا
‫نظرت حولك على Google للسماح
‫لك برؤية السياق الذي تستخدمه في غلافك.
‫يكون هذا مفيدًا عندما ينتهي بك الأمر بإدارة مجموعة كاملة
‫من المجموعات المختلفة. تريد أن تعرف ، أي
‫واحد أتحدث إليه الآن؟ يمكنك بالفعل إعداد ذلك ،
‫نوعًا ما مثل كيف سيخبرك الحصول على المطالبات بالفرع
‫الذي أنت فيه. ستخبرك هذه ، في موجهك ، بالسياق
‫الذي لديك.