توفير وحدة تخزين بروتوكول مزدوج في خدمة Azure Kubernetes
يصف هذا القسم كيفية عرض وحدة تخزين بروتوكول مزدوج لملفات Azure NetApp بشكل ثابت إلى Kubernetes. يتم توفير إرشادات لكل من بروتوكولات SMB وNFS. يمكنك عرض نفس وحدة التخزين عبر SMB لعقد عامل Windows وعبر NFS إلى عقد عامل Linux.
قم بإنشاء ملف باسم pv-nfs.yaml وانسخه في YAML التالي. تأكد من تطابق الخادم مع عنوان IP الإخراج من الخطوة السابقة، والمسار يطابق الإخراج من creationToken أعلى. يجب أن تتطابق السعة أيضا مع حجم وحدة التخزين من الخطوة 2.
إنشاء وحدة التخزين الثابتة باستخدام kubectl apply الأمر :
kubectl apply -f pv-nfs.yaml
تحقق من أن حالة وحدة التخزين الثابتة متوفرة باستخدام kubectl describe الأمر :
kubectl describe pv pv-nfs
إنشاء مطالبة وحدة تخزين ثابتة ل NFS
قم بإنشاء ملف باسم pvc-nfs.yaml وانسخه في YAML التالي. ينشئ هذا البيان PVC باسم pvc-nfs لتخزين 100Gi ووضع الوصول، ويطابق ReadWriteMany PV الذي قمت بإنشائه.
تحقق من أن pod قيد التشغيل باستخدام kubectl apply الأمر :
kubectl describe pod nginx-nfs
تحقق من تحميل وحدة التخزين الخاصة بك على الجراب باستخدام kubectl exec للاتصال بالجراب، ثم استخدم df -h للتحقق مما إذا كان يتم تحميل وحدة التخزين.
kubectl exec -it nginx-nfs -- sh
/ # df -h
Filesystem Size Used Avail Use% Mounted on
...
10.0.0.4:/myfilepath2 100T 384K 100T 1% /mnt/azure
...
إنشاء سر باستخدام بيانات اعتماد المجال
إنشاء سر على نظام مجموعة AKS للوصول إلى خادم AD باستخدام kubectl create secret الأمر . سيتم استخدام هذا السر بواسطة وحدة التخزين الثابتة Kubernetes للوصول إلى وحدة تخزين Azure NetApp Files SMB. استخدم الأمر التالي لإنشاء السر، واستبدال USERNAME باسم المستخدم الخاص بك، PASSWORD وكلمة المرور الخاصة بك، واسم DOMAIN_NAME مجال Active Directory الخاص بك.
قم بإنشاء ملف باسم pv-smb.yaml وانسخه في YAML التالي. إذا لزم الأمر، استبدل myvolname ب creationToken واستبدل ANF-1be3.contoso.com\myvolname بقيمة smbServerFqdn من الخطوة السابقة. تأكد من تضمين بيانات اعتماد AD السرية إلى جانب مساحة الاسم حيث توجد التي قمت بإنشائها في خطوة سابقة.
apiVersion: v1
kind: PersistentVolume
metadata:
name: anf-pv-smb
spec:
storageClassName: ""
capacity:
storage: 100Gi
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
mountOptions:
- dir_mode=0777
- file_mode=0777
- vers=3.0
csi:
driver: smb.csi.k8s.io
readOnly: false
volumeHandle: myvolname # make sure it's a unique name in the cluster
volumeAttributes:
source: \\ANF-1be3.contoso.com\myvolname
nodeStageSecretRef:
name: smbcreds
namespace: default
إنشاء وحدة التخزين الثابتة باستخدام kubectl apply الأمر :
kubectl apply -f pv-smb.yaml
تحقق من أن حالة وحدة التخزين الثابتة متوفرة باستخدام kubectl describe الأمر :
إنشاء مطالبة وحدة التخزين الدائمة باستخدام kubectl apply الأمر :
kubectl apply -f pvc-smb.yaml
تحقق من أن حالة مطالبة وحدة التخزين الثابتة مرتبطةkubectl describe باستخدام الأمر :
kubectl describe pvc anf-pvc-smb
تحميل داخل جراب باستخدام SMB
قم بإنشاء ملف باسم iis-smb.yaml وانسخه في YAML التالي. سيتم استخدام هذا الملف لإنشاء خدمات معلومات الإنترنت pod لتحميل وحدة التخزين إلى المسار /inetpub/wwwroot.
تحقق من تحميل وحدة التخزين الخاصة بك على pod باستخدام الأمر kubectl exec للاتصال بالجراب. ثم استخدم dir الأمر في الدليل الصحيح للتحقق مما إذا كان يتم تحميل وحدة التخزين والحجم يطابق حجم وحدة التخزين التي قمت بتوفيرها.
kubectl exec -it iis-pod –- cmd.exe
إخراج الأمر يشبه المثال التالي:
Microsoft Windows [Version 10.0.20348.1668]
(c) Microsoft Corporation. All rights reserved.
C:\>cd /inetpub/wwwroot
C:\inetpub\wwwroot>dir
Volume in drive C has no label.
Volume Serial Number is 86BB-AA55
Directory of C:\inetpub\wwwroot
05/04/2023 08:15 PM <DIR> .
05/04/2023 08:15 PM <DIR> ..
0 File(s) 0 bytes
2 Dir(s) 107,373,838,336 bytes free
الخطوات التالية
يدعم Astra Trident العديد من الميزات مع Azure NetApp Files. لمزيد من المعلومات، راجع: