محتويات الدورة

Kubernetes / الأساسي: الكائنات وحدود التنفيذ / الدرس 5

الإعداد وSecrets وهوية الحمل

افصل الإعداد غير السري ومراجع الاعتماد وهوية الحمل وافهم تحديث المستهلكين.

وقت القراءة التقريبي: 3 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • اشرح النموذج والافتراضات والحدود المتعلقة بموضوع «الإعداد وSecrets وهوية الحمل».
  • فسر المثالين وميز النية المعلنة من الدليل المثبت.
  • شخص الإخفاقات وعلل قرارات الاستعادة المشروحة دون تنفيذ عمليات عنقود.

تصنيف المدخل قبل تخزينه

تحمل ConfigMaps إعدادا غير سري وتحتاج Secrets الحساسة ضوابط وصول وتخزين إضافية. لا يتحقق أيهما من مخطط التطبيق تلقائيا. يختلف نمط العرض وكلمة المرور وهوية ServiceAccount. ضع المطلوب بكل حد وتحقق قبل الجاهزية. لا تحفظ اعتمادا بالتسميات أو annotations للفحص، ولا يفرض اسم خاص السرية أو يعزل النطاق وحده الوصول والمستهلكين.

فهم الترميز والحماية

يستخدم المثال stringData بقيمة اصطناعية عامة لشرح المخطط. Base64 ترميز لا تشفير. تعتمد الحماية على الإذن وتشفير التخزين عند ضبطه والنقل والتدقيق والبيئة. قد تكشف القراءة الأسرار ويمنح إنشاء Pod وصولا عبر التركيب. لا تطبع كائنا حقيقيا لتشخيص مرجع؛ افحص البيانات الآمنة وأسماء المفاتيح والمراجع والأحداث بإذن. لا يخزن المثال أويرسل وليس اعتمادا صالحا.

yaml Secret توضيحية ببيانات اصطناعية عامة
apiVersion: v1
kind: Secret
metadata:
  name: synthetic-training-value
  namespace: training
type: Opaque
stringData:
  DEMO_VALUE: public-lab-value-not-a-credential

النص عام عمدا ولا يصلح اعتمادا. شرح المخطط ليس تشفيرا أو تسليما آمنا ولا ينشئ الكائن.

اختيار الحقن ومعنى التحديث

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

yaml سجل تبني اعتماد اصطناعي
approved_version: lab-secret-3
store_reference: lab-secret-3
consumer_a_active_version: lab-secret-3
consumer_b_active_version: lab-secret-2
conclusion: source-updated-but-adoption-incomplete

لم يثبت تحديث B. يحوي السجل تسميات خيالية فقط ولا يكشف أو يقارن قيما.

استخدام هوية الخدمة بحدود

توفر ServiceAccount هوية للواجهة وقد تتكامل بهوية خارجية حسب المنصة، ولا تبرر cluster-admin. فضّل إذنا ضيقا واعتمادا مسقطا قصيرا حيث يدعم. راجع ضرورة التركيب التلقائي إذا لم يحتج الحمل الواجهة. وضح المصدر والجمهور والمستهلك. يوثق الرمز الهوية وتقرر السياسة الأفعال، ولربط السحابة افتراضات مزود مستقلة لا تضبطها الأمثلة.

التدوير بخطة استعادة للمستهلك

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

الأخطاء الشائعة وإصلاحها

يُعد Base64 تشفيرا

لماذا يحدث؟
اختلط الترميز بالسرية.
كيف تصلحه؟
طبق الإذن وحماية التخزين الموثقة.
كيف تتجنب تكراره؟
راجع مسار الاعتماد والسجلات.

يغير التدوير الكائن لا العملية

لماذا يحدث؟
افتُرض سلوك الحقن والتحديث.
كيف تصلحه؟
اتبع عقد إعادة التحميل أو الاستبدال.
كيف تتجنب تكراره؟
تحقق من التبني دون قيم.

يتلقى التطبيق سلطة واجهة واسعة

لماذا يحدث؟
اقترنت الهوية بأدوار واسعة.
كيف تصلحه؟
امنح الأفعال والنطاق اللازمين فقط.
كيف تتجنب تكراره؟
راجع الوصول غير المباشر بإنشاء الأحمال.

اختبر فهمك

1. يتغير إعداد بيئي من ConfigMap. هل تتلقى العملية الحالية الجديد تلقائيا؟

اعرض الحل المشروح

لا؛ تنشأ البيئة عند البدء. استخدم الاستبدال أو التحميل المراجع وافحص الإصدار الفعال. لا تستنتج التبني من resourceVersion أو نجاح التحديث وحده.

2. لماذا قد يكشف إنشاء Pods الأسرار دون قراءة مباشرة؟

اعرض الحل المشروح

قد يركب الحمل اعتمادات بنطاقه ما لم تمنع سياسة إضافية. قيم الإنشاء والهوية والتركيب والقبول معا؛ فالقراءة المباشرة لا تصف كل طرق البيانات.

أهم ما تعلمته

  • تحمل ConfigMaps إعدادا غير سري وتحتاج Secrets الحساسة ضوابط وصول وتخزين إضافية.
  • تثبت القيم البيئية للعملية ولا يعيد تحديث المرجع كتابتها.
  • نسق الاستبدال مع المالك وافحص التبني دون القيم.

المراجع الرسمية