برامج تشغيل واجهة تخزين الحاويات (CSI) على Azure Kubernetes Service (AKS)

واجهة تخزين الحاويات (CSI) هي معيار عرض كتلة عشوائية وأنظمة لتخزين ملفات أحمال العمل موضوعة بحاويات على Kubernetes. من خلال اعتماد واستخدام CSI، يمكن Azure Kubernetes Service (AKS) كتابة المكونات الإضافية ونشرها وتكريرها لفضح أنظمة التخزين الجديدة أو تحسينها في Kubernetes دون الحاجة إلى لمس رمز Kubernetes الأساسي وانتظار دورات الإصدار الخاصة به.

يسمح لك دعم برنامج تشغيل الجهاز للتخزين لـ CSI على AKS أن تستخدم بشكل أصلي:

  • أقراص Azureيمكن استخدامها لإنشاء مورد Kubernetes DataDisk. يمكن للأقراص استخدام تخزين Azure Premium، مدعومًا بأقراص SSD عالية الأداء، أو التخزين القياسي، مدعومًا بأقراص HDD العادية أو محركات أقراص SSD القياسية. بالنسبة لمعظم أحمال العمل الإنتاجية والخاصة بالتطوير، استخدم تخزين Premium. يتم تحميل أقراص Azure كـ ReadWriteOnce وهي متاحة فقط لعقدة واحدة في AKS. بالنسبة لوحدات التخزين التي يمكن الوصول إليها بواسطة عقد متعددة في وقت واحد، استخدم ملفات Azure.
  • يمكن استخدامملفات Azure لإدخال مشاركة SMB 3.0/3.1 مدعومة بحساب تخزين Azure إلى وحدات الجراب. باستخدام ملفات Azure، يمكنك مشاركة البيانات عبر عقد ووحدات الجراب متعددة. يمكن لـ ملفات Azure أن تستخدم تخزين Azure Standard المدعوم بأقراص HDD العادية أو تخزين Azure Premium مدعوماً بأقراص SSD عالية الأداء.
  • Azure Blob storage يمكن استخدامها لتحميل تخزين Blob (أو تخزين الكائن) كنظام ملفات في حاوية أو جراب. يمكّن استخدام تخزين Blob مجموعتك من دعم التطبيقات التي تعمل مع مجموعات بيانات كبيرة غير منظمة مثل بيانات ملف السجل أو الصور أو المستندات و HPC وغيرها. بالإضافة إلى ذلك، إذا كنت استيعاب البيانات في تخزين Azure Data Lake، فيمكنك تحميلها مباشرة واستخدامها في AKS دون تكوين نظام ملفات مؤقت آخر.

هام

بدءا من الإصدار 1.26 من Kubernetes، يتم إهمال أنواع وحدات التخزين الثابتة داخل الشجرة kubernetes.io/azure-disk kubernetes.io/azure-file ولن يتم دعمها بعد ذلك. لم يتم التخطيط لإزالة برامج التشغيل هذه بعد إيقافها، ولكن يجب الترحيل إلى برامج تشغيل CSI المقابلة disk.csi.azure.com file.csi.azure.com. لمراجعة خيارات الترحيل لفئات التخزين الخاصة بك وترقية نظام المجموعة لاستخدام أقراص Azure وبرامج تشغيل Azure Files CSI، راجع الترحيل من برامج تشغيل داخل الشجرة إلى برامج تشغيل CSI.

تشير برامج التشغيل في الشجرة إلى برامج تشغيل التخزين التي هي جزء من تعليمة برمجية لـ Kubernetes أساسية مقابل برامج تشغيل CSI، وهي مكونات إضافية.

إشعار

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

المتطلبات الأساسية

  • تحتاج إلى تثبيت الإصدار 2.42 من Azure CLI أو إصدار أحدث وتكوينه. قم بتشغيل az --version للعثور على الإصدار. إذا كنت بحاجة إلى التثبيت أو الترقية، فراجع تثبيت Azure CLI.
  • إذا تم تثبيت برنامج تشغيل تخزين CSI مفتوح المصدر على نظام المجموعة، قم بإلغاء تثبيته قبل تمكين برنامج تشغيل CSI لتخزين Azure.
  • لفرض نهج Azure لتعريف نهج AKS يجب أن تستخدم مجموعات Kubernetes برنامج تشغيل واجهة تخزين الحاوية (CSI) StorageClass، يجب تمكين الوظيفة الإضافية لنهج Azure على أنظمة المجموعات الجديدة والحالية. بالنسبة إلى نظام مجموعة موجود، راجع نهج Learn Azure ل Kubernetes لتمكينه.

سيناريوهات تشفير القرص المدعومة

تدعم برامج تشغيل تخزين CSI السيناريوهات التالية:

تمكين برامج تشغيل تخزين CSI على نظام مجموعة موجودة

لتمكين برامج تشغيل تخزين CSI على نظام مجموعة جديد، قم بتضمين إحدى المعلمات التالية اعتمادا على نظام التخزين:

az aks update --name myAKSCluster --resource-group myResourceGroup --enable-disk-driver --enable-file-driver --enable-blob-driver --enable-snapshot-controller

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

"storageProfile": {
    "blobCsiDriver": {
      "enabled": true
    },

تعطيل برامج تشغيل تخزين CSI على نظام مجموعة جديد أو موجود

لتعطيل برامج تشغيل تخزين CSI على نظام مجموعة جديد، قم بتضمين إحدى المعلمات التالية اعتمادا على نظام التخزين:

az aks create \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --disable-disk-driver \
    --disable-file-driver \
    --disable-blob-driver \
    --disable-snapshot-controller \
    --generate-ssh-keys

لتعطيل برامج تشغيل تخزين CSI على نظام مجموعة موجود، استخدم إحدى المعلمات المذكورة سابقا اعتمادا على نظام التخزين:

az aks update \
    --name myAKSCluster \
    --resource-group myResourceGroup \
    --disable-disk-driver \
    --disable-file-driver \
    --disable-blob-driver \
    --disable-snapshot-controller 

ترحيل فئات التخزين المخصصة في الشجرة إلى CSI

إذا قمت بإنشاء فئات تخزين برنامج تشغيل داخل الشجرة، فستستمر فئات التخزين هذه في العمل منذ تشغيل ترحيل CSI بعد ترقية نظام المجموعة إلى 1.21.x. إذا كنت تريد استخدام ميزات CSI، فستحتاج إلى إجراء الترحيل.

لمراجعة خيارات الترحيل لفئات التخزين الخاصة بك وترقية نظام المجموعة لاستخدام أقراص Azure وبرامج تشغيل Azure Files CSI، راجع الترحيل من برامج تشغيل داخل الشجرة إلى برامج تشغيل CSI.

الخطوات التالية