إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
يُقدم Kubernetes نظاماً أساسياً موزعاً للتطبيقات المعبأة في حاويات. يمكنك إنشاء ونشر التطبيقات والخدمات الخاصة بك في مجموعة Kubernetes والسماح للمجموعة بإدارة التوفر والاتصال.
في هذا البرنامج التعليمي، يمكنك نشر نموذج تطبيق في مجموعة Kubernetes. ستتعلم كيفية:
- تحديث ملف بيان Kubernetes.
- تشغيل تطبيق في Kubernetes.
- اختبار التطبيق.
تلميح
باستخدام AKS، يمكنك استخدام الأساليب التالية لإدارة التكوين:
GitOps: تمكين إعلانات حالة نظام المجموعة لتطبيقها تلقائيا على نظام المجموعة. لمعرفة كيفية استخدام GitOps لنشر تطبيق مع مجموعة AKS، راجع المتطلبات الأساسية لمجموعات خدمة Azure Kubernetes في البرنامج التعليمي GitOps مع Flux v2 .
DevOps: يمكنك من إنشاء واختبار ونشر مع التكامل المستمر (CI) والتسليم المستمر (CD). للاطلاع على أمثلة حول كيفية استخدام DevOps لنشر تطبيق مع نظام مجموعة AKS، راجع الإنشاء والتوزيع إلى AKS باستخدام Azure Pipelines أو GitHub Actions للنشر في Kubernetes.
قبل البدء
في البرامج التعليمية السابقة، قمت بحزم تطبيق في صورة حاوية، وتحميل الصورة إلى Azure Container Registry، وإنشاء مجموعة Kubernetes. لإكمال هذا البرنامج التعليمي، تحتاج إلى ملف بيان Kubernetes الذي تم aks-store-quickstart.yaml إنشاؤه مسبقا. تم تنزيل هذا الملف في التعليمات البرمجية المصدر للتطبيق من البرنامج التعليمي 1 - إعداد التطبيق ل AKS.
يتطلب هذا البرنامج التعليمي الإصدار 2.0.53 من Azure CLI أو أحدث. تحقق من الإصدار الخاص بك باستخدام az --version. للتثبيت أو الترقية، يُرجى الرجوع إلى تثبيت Azure CLI.
تحديث ملف البيان
في هذه البرامج التعليمية، يخزن مثيل Azure Container Registry (ACR) صور الحاوية لنموذج التطبيق. لنشر التطبيق، يجب تحديث أسماء الصور في ملف بيان Kubernetes لتضمين اسم خادم تسجيل الدخول إلى ACR.
احصل على عنوان خادم تسجيل الدخول باستخدام
az acr listالأمر والاستعلام لخادم تسجيل الدخول.az acr list --resource-group myResourceGroup --query "[].{acrLoginServer:loginServer}" --output tableتأكد من أنك في دليل aks-store-demo المستنسخ، ثم افتح
aks-store-quickstart.yamlملف البيان باستخدام محرر نص.قم بتحديث الخاصية
imageللحاويات عن طريق استبدال ghcr.io/azure-samples باسم خادم تسجيل الدخول ACR الخاص بك.containers: ... - name: order-service image: <acrName>.azurecr.io/aks-store-demo/order-service:latest ... - name: product-service image: <acrName>.azurecr.io/aks-store-demo/product-service:latest ... - name: store-front image: <acrName>.azurecr.io/aks-store-demo/store-front:latest ...احفظ الملف وأغلقه.
شغّل التطبيق
نشر التطبيق باستخدام
kubectl applyالأمر الذي يوزع ملف البيان وينشئ كائنات Kubernetes المعرفة.kubectl apply -f aks-store-quickstart.yamlيظهر المثال التالي للناتج الموارد التي تم إنشاؤها بنجاح في مجموعة AKS:
statefulset.apps/rabbitmq created configmap/rabbitmq-enabled-plugins created service/rabbitmq created deployment.apps/order-service created service/order-service created deployment.apps/product-service created service/product-service created deployment.apps/store-front created service/store-front createdتحقق من نجاح النشر عن طريق عرض pods باستخدام
kubectl get podsالأمر .kubectl get pods
اختبر التطبيق
عند تشغيل التطبيق، تعرض خدمة Kubernetes واجهة التطبيق الأمامية للإنترنت. قد تستغرق هذه العملية بضع دقائق حتى تكتمل.
سطر الأوامر
راقب التقدم باستخدام الأمر
kubectl get service مع الوسيطة--watch.kubectl get service store-front --watchفي البداية،
EXTERNAL-IPيظهر للخدمةstore-frontعلى النحو<pending>التالي:store-front LoadBalancer 10.0.34.242 <pending> 80:30676/TCP 5sEXTERNAL-IPعندما يتغير العنوان من<pending>إلى عنوان IP عام، استخدمCTRL-Cلإيقافkubectlعملية المراقبة.يوضح المثال التالي إخراج لعنوان IP عام صالحاً تم تعيينه للخدمة:
store-front LoadBalancer 10.0.34.242 52.179.23.131 80:30676/TCP 67sاعرض التطبيق أثناء العمل عن طريق فتح مستعرض ويب والانتقال إلى عنوان IP الخارجي للخدمة الخاصة بك:
http://<external-ip>.
إذا لم يتم تحميل التطبيق، فقد تكون مشكلة تخويل في سجل الصور. لعرض حالة الحاويات الخاصة بك، استخدم kubectl get pods الأمر. إذا لم تتمكن من سحب صور الحاوية، فشاهد المصادقة باستخدام Azure Container Registry من Azure Kubernetes Service.
مدخل Azure
انتقل إلى مدخل Microsoft Azure للعثور على معلومات النشر الخاصة بك.
انتقل إلى مورد نظام مجموعة AKS الخاص بك.
من قائمة الخدمة، ضمن موارد Kubernetes، حدد الخدمات والدخول.
انسخ عنوان IP الخارجي الموضح في عمود
store-frontالخدمة.الصق عنوان IP في المستعرض لزيارة صفحة المتجر.
تنظيف الموارد
نظرا لأنك تحققت من صحة وظيفة التطبيق، يمكنك الآن إزالة نظام المجموعة من التطبيق. سننشر التطبيق مرة أخرى في البرنامج التعليمي التالي.
قم بإيقاف وإزالة مثيلات الحاوية والموارد باستخدام
kubectl deleteالأمر .kubectl delete -f aks-store-quickstart.yamlتحقق من إزالة جميع pods التطبيق باستخدام
kubectl get podsالأمر .kubectl get pods
الخطوات التالية
في هذا البرنامج التعليمي، قمت بنشر نموذج تطبيق Azure إلى مجموعة Kubernetes في AKS. لقد تعرفت على كيفية:
- تحديث ملف بيان Kubernetes.
- تشغيل تطبيق في Kubernetes.
- اختبار التطبيق.
في البرنامج التعليمي التالي، ستتعلم كيفية استخدام خدمات PaaS لأحمال العمل ذات الحالة في Kubernetes.