تحميل مخزن الكائن الثنائي كبير الحجم باستخدام بروتوكول 3.0 لنظام ملفات الشبكة (NFS)
توفر هذه المقالة إرشادات حول كيفية تحميل حاوية في Azure Blob Storage من جهاز Azure ظاهري (VM) يستند إلى Linux أو نظام Linux يعمل محلياً باستخدام بروتوكول 3.0 لنظام ملفات الشبكة (NFS). لمعرفة المزيد حول دعم بروتوكول NFS 3.0 في مخزن البيانات الثنائية الكبيرة، راجع دعم بروتوكول 3.0 لنظام ملفات الشبكة (NFS) لـ Azure Blob Storage.
الخطوة 1: إنشاء شبكة Azure ظاهرية
يجب تضمين حساب التخزين الخاص بك داخل شبكة ظاهرية. تمكّن الشبكة الظاهرية العملاء من الاتصال بأمان بحساب التخزين الخاص بك. لمعرفة المزيد حول شبكة Azure الظاهرية، وكيفية إنشاء شبكة ظاهرية، راجع وثائق الشبكة الظاهرية.
ملاحظة
يمكن للعملاء في نفس الشبكة الظاهرية تحميل حاويات في حسابك. يمكنك أيضاً تحميل حاوية من عميل يعمل في شبكة محلية، ولكن سيتعين عليك أولاً توصيل شبكتك المحلية بشبكتك الظاهرية. راجع اتصالات الشبكة المدعومة.
الخطوة 2: تكوين أمان الشبكة
حالياً، الطريقة الوحيدة لتأمين البيانات في حساب التخزين الخاص بك هي باستخدام شبكة ظاهرية وإعدادات أمان الشبكة الأخرى. أي أدوات أخرى تستخدم لتأمين البيانات، بما في ذلك تخويل مفتاح الحساب وأمان Microsoft Azure Active Directory (Azure AD) وقوائم التحكم بالوصول (ACLs)، غير مدعومة حتى الآن في الحسابات التي تم تمكين دعم بروتوكول NFS 3.0 عليها.
لتأمين البيانات في حسابك، راجع هذه التوصيات: توصيات أمان الشبكة لمخزن الكائن الثنائي كبير الحجم.
الخطوة 3: إنشاء حساب تخزين وتكوينه
لتحميل حاوية باستخدام NFS 3.0، يجب إنشاء حساب تخزين. لا يمكنك تمكين الحسابات الحالية.
بروتوكول NFS 3.0 مدعوم لحسابات التخزين v2 القياسية للأغراض العامة ولحسابات تخزين الكائن الثنائي كبير الحجم ذات الكتلة المتميزة. للمزيد من المعلومات عن حسابات التخزين، راجع نظرة عامة على حساب التخزين.
لتكوين الحساب، اختر القيم التالية:
| الإعداد | أداء فائق | أداء قياسي |
|---|---|---|
| الموقع | جميع المناطق المتوفرة | جميع المناطق المتوفرة |
| الأداء | متميزة | قياسي |
| نوع الحساب | BlockBlobStorage | V2 للأغراض العامة |
| النسخ المتماثل | التخزين المتكرر محلياً (LRS)، التخزين المتكرر في المنطقة (ZRS) | التخزين المتكرر محلياً (LRS)، التخزين المتكرر في المنطقة (ZRS) |
| أسلوب الاتصال | نقطة النهاية العامة (الشبكات المحددة) أو نقطة النهاية الخاصة | نقطة النهاية العامة (الشبكات المحددة) أو نقطة النهاية الخاصة |
| مساحة الاسم الهرمية | تم التمكين | تم التمكين |
| NFS V3 | تم التمكين | تم التمكين |
يمكنك قبول القيم الافتراضية لجميع الإعدادات الأخرى.
الخطوة رقم 4: إنشاء حاوية
قم بإنشاء حاوية في حساب التخزين الخاص بك باستخدام أي من هذه الأدوات أو مجموعات SDK:
| الأدوات | SDK |
|---|---|
| مدخل Microsoft Azure | .NET |
| AzCopy | Java |
| PowerShell | Python |
| Azure CLI | JavaScript |
| تطبيقات REST |
ملاحظة
بشكل افتراضي، يكون خيار"root squash" لحاوية جديدة هو "No Root Squash". ولكن يمكنك تغيير ذلك إلى "Root Squash" أو "All Squash". للحصول على معلومات حول خيارات "squash" هذه، راجع وثائق نظام التشغيل.
تعرض الصورة التالية خيارات "squash" كما تظهر في مدخل Microsoft Azure.

الخطوة 5: تحميل الحاوية
أنشئ دليلاً على نظام Linux الخاص بك، ثم قم بتحميل الحاوية في حساب التخزين.
على نظام Linux الخاص بك، أنشئ دليلاً:
mkdir -p /nfsdataقم بتركيب الحاوية باستخدام أحد الأساليب التالية. في الأسلوبين، استبدل العنصر النائبة
<storage-account-name>باسم حساب التخزين الخاص بك، واستبدل<container-name>باسم الحاوية الخاصة بك.لتحميل المشاركة تلقائياً عند إعادة التشغيل:
أنشئ إدخالاً في الملف /etc/fstab بإضافة السطر التالي:
<storage-account-name>.blob.core.windows.net:/<storage-account-name>/<container-name> /nfsdata nfs defaults,sec=sys,vers=3,nolock,proto=tcp,nofail 0 0قم بتشغيل الأمر التالي لمعالجة إدخالات /etc/fstab على الفور ومحاولة تحميل المسار السابق:
mount /nfsdata
بالنسبة إلى التحميل المؤقت الذي لا يستمر عبر عمليات إعادة التشغيل، قم بتشغيل الأمر التالي:
mount -o sec=sys,vers=3,nolock,proto=tcp <storage-account-name>.blob.core.windows.net:/<storage-account-name>/<container-name> /nfsdata
حل الأخطاء الشائعة
| خطأ | السبب/الحل |
|---|---|
Access denied by server while mounting |
تأكد من أن عميلك يعمل داخل شبكة فرعية مدعومة. راجع مواقع الشبكة المدعومة. |
No such file or directory |
تأكد من كتابة أمر التحميل ومعلماته بدلاً من النسخ واللصق مباشرة في المحطة الطرفية. إذا نسخت وألصقت أي جزء من هذا الأمر في المحطة الطرفية من تطبيق آخر، فقد تتسبب الأحرف المخفية في المعلومات المُلصقة في ظهور هذا الخطأ. قد يظهر هذا الخطأ أيضاً إذا لم يتم تمكين الحساب لـ NFS 3.0. |
Permission denied |
الوضع الافتراضي لحاوية NFS 3.0 المُنشأة حديثاً هو 0750. لا يمكن للمستخدمين غير الجذر الوصول إلى وحدة التخزين. إذا كان الوصول من المستخدمين غير الجذر مطلوباً، فيجب على المستخدمين الجذر تغيير الوضع إلى 0755. عينة الأمر: sudo chmod 0755 /nfsdata |
EINVAL ("Invalid argument") |
يمكن أن يظهر هذا الخطأ عند محاولة عميل القيام بما يلي: |
EROFS ("Read-only file system") |
يمكن أن يظهر هذا الخطأ عند محاولة عميل القيام بما يلي: |
NFS3ERR_IO/EIO ("Input/output error") |
يمكن أن يظهر هذا الخطأ عندما يحاول عميل قراءة أو كتابة أو تعيين سمات على كائنات ثنائية كبيرة الحجم مُخزنة في طبقة تخزين الأرشيف. |
خطأ OperationNotSupportedOnSymLink |
يمكن إرجاع هذا الخطأ أثناء عملية الكتابة عبر Blob Storage أو واجهة برمجة تطبيقات Azure Data Lake Storage Gen2. لا يسمح باستخدام واجهات برمجة التطبيقات هذه لكتابة أو حذف الارتباطات الرمزية التي تم إنشاؤها باستخدام NFS 3.0. تأكد من استخدام نقطة نهاية NFS 3.0 للعمل مع الارتباطات الرمزية. |
mount: /nfsdata: bad option; |
قم بتثبيت برنامج مساعد NFS باستخدام sudo apt install nfs-common. |