إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
في هذا البرنامج التعليمي، ستتعلم كيفية تكوين وحدة تخزين الحافة المشتركة المحلية. يوفر نوع وحدة التخزين هذا تخزين read-write-many، محليا إلى مجموعة Kubernetes الخاصة بك. يظل نوع التخزين المشترك هذا مستقلا عن البنية التحتية السحابية، مما يجعله مثاليا لمساحة التسويد والتخزين المؤقت والبيانات الثابتة محليا غير المناسبة للوجهات السحابية. كما أنها وجهة جيدة للبيانات التي يتم العمل عليها أو تغييرها أو معالجتها على الحافة.
يغطي البرنامج التعليمي المهام التالية:
- إنشاء وحدة تخزين حافة مشتركة محلية PVC
- إنشاء مثال على التوزيع
- اتصل بالكبسولة الخاصة بك
- كتابة نموذج ملف
المتطلبات الأساسية
- يفترض البرنامج التعليمي أن لديك بالفعل مجموعة Kubernetes ممكنة ل Arc. لتوصيل مجموعة Kubernetes موجودة ب Azure Arc، راجع توصيل مجموعة Kubernetes موجودة ب Azure Arc.
- يجب أن تكون قد قمت بالفعل بتثبيت ملحق Azure Container Storage. إذا لم تقم بذلك، فراجع تثبيت وحدات تخزين الحافة.
إنشاء وحدة تخزين حافة مشتركة محلية PVC
ينشئ هذا القسم مطالبة وحدة تخزين ثابتة، أو PVC، لوحدة التخزين المشتركة المحلية. يمكنك تحديد مقدار المساحة التي تريد توفيرها لهذا المجلد.
إنشاء ملف باسم localSharedPVC.yaml بالمحتويات التالية. قم بتعديل metadata.name القيمة باسم لمطالبة وحدة التخزين الثابتة. ثم ، في السطر 8 ، حدد مساحة الاسم التي تطابق الجراب المستهلك المقصود. تتم الإشارة إلى metadata.name القيمة في السطر الأخير في deploymentExample.yaml الخطوة التالية. تحدد المعلمة spec.resources.requests.storage حجم الحجم الثابت. تبلغ سهابها 2 غيغابايت في هذا المثال، ولكن يمكن تعديلها لتناسب احتياجاتك:
إشعار
استخدم الأحرف الصغيرة والشرطات فقط. لمزيد من المعلومات، راجع وثائق تسمية كائن Kubernetes.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
### Create a name for your PVC ###
name: <create-a-pvc-name-here>
### Use a namespace that matches your intended consuming pod, or "default" ###
namespace: <intended-consuming-pod-or-default-here>
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
storageClassName: unbacked-sc
بعد ذلك، قم بتشغيل هذا الأمر لتطبيق ملف YAML وإنشاء PVC:
kubectl apply -f "localSharedPVC.yaml"
إنشاء مثال على النشر أو استخدام النشر الخاص بك
إذا كان لديك بالفعل تطبيق للنشر ضده ، فيمكنك استخدامه هنا. من أجل البساطة وللبدء ، نقوم بتضمين مثال على النشر هنا. لإنشاء توزيع باستخدام مثال التكوين الخاص بنا، قم بإنشاء ملف باسم deploymentExample.yaml بالمحتويات التالية. إضافة قيم ل containers.name و volumes.persistentVolumeClaim.claimName. تحدد المعلمة spec.replicas عدد جراب النسخ المتماثلة المراد إنشاؤها. إنه 2 في هذا المثال ، ولكن يمكن تعديله ليناسب احتياجاتك:
إشعار
استخدم الأحرف الصغيرة والشرطات فقط. لمزيد من المعلومات، راجع وثائق تسمية كائن Kubernetes.
apiVersion: apps/v1
kind: Deployment
metadata:
name: localsharededgevol-deployment ### This will need to be unique for every volume you choose to create
spec:
replicas: 2
selector:
matchLabels:
name: wyvern-testclientdeployment
template:
metadata:
name: wyvern-testclientdeployment
labels:
name: wyvern-testclientdeployment
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- wyvern-testclientdeployment
topologyKey: kubernetes.io/hostname
containers:
### Specify the container in which to launch the busy box. ###
- name: <create-a-container-name-here>
image: 'mcr.microsoft.com/mirror/docker/library/busybox:1.35'
command:
- "/bin/sh"
- "-c"
- "dd if=/dev/urandom of=/data/acsalocalsharedtestfile count=16 bs=1M && while true; do ls /data &>/dev/null || break; sleep 1; done"
volumeMounts:
### This name must match the following volumes::name attribute ###
- name: wyvern-volume
### This mountPath is where the PVC will be attached to the pod's filesystem ###
mountPath: /data
volumes:
### User-defined name that is used to link the volumeMounts. This name must match volumeMounts::name as previously specified. ###
- name: wyvern-volume
persistentVolumeClaim:
### This claimName must refer to your PVC metadata::name from lsevPVC.yaml.
claimName: <your-pvc-metadata-name-from-line-5-of-pvc-yaml>
بعد ذلك، قم بتشغيل هذا الأمر لتطبيق ملف YAML وإنشاء التوزيع:
kubectl apply -f "deploymentExample.yaml"
اتصل بالكبسولة الخاصة بك
اركض kubectl get pods للعثور على اسم الكبسولة. انسخ هذا الاسم، كما هو مطلوب في الخطوة التالية.
إشعار
لأنه spec::replicas من deploymentExample.yaml تم تحديده على أنه 2، يظهر جرابن باستخدام kubectl get pods. يمكنك استخدام أي من اسمي الكبسولة للخطوة التالية.
قم بتشغيل الأمر التالي واستبدل POD_NAME_HERE بالقيمة المنسوخة من الخطوة السابقة:
kubectl exec -it POD_NAME_HERE -- sh
قم بتغيير الدلائل إلى مسار التحميل /data ، كما هو محدد في deploymentExample.yaml.
كتابة مثال على ملف
الآن بعد أن أصبحت متصلا بالجرابة وفي مسار التحميل ، تظهر أي ملفات تكتبها هنا في وحدة التخزين الخاصة بك.
على سبيل المثال ، قم بإنشاء ملف باسم file1.txt واكتب إليه باستخدام echo "Hello World" > file1.txt.
يمكنك الآن أن ترى أن الملف الذي كتبته موجود في الدليل.
الخطوات التالية
بعد إكمال هذه الخطوات، ابدأ في مراقبة التوزيع باستخدام Azure Monitor وKubernetes Monitoring، أو مراقبة الجهات الخارجية باستخدام Prometheus وGrafana.