مشاركة عبر


البرنامج التعليمي - إنشاء نظام مجموعة Azure Kubernetes Service (AKS)

يُقدم Kubernetes نظاماً أساسياً موزعاً للتطبيقات المعبأة في حاويات. باستخدام Azure Kubernetes Service (AKS)، يمكنك إنشاء مجموعة Kubernetes جاهزة للإنتاج بسرعة.

في هذا البرنامج التعليمي، يمكنك نشر مجموعة Kubernetes في AKS. ‏‫ستتعلم كيفية:

  • نشر مجموعة AKS التي يمكنها المصادقة على سجل حاويات Azure (ACR).
  • تثبيت Kubernetes CLI، kubectl.
  • تكوين kubectl للاتصال بمجموعة AKS الخاصة بك.

قبل البدء

في البرامج التعليمية السابقة، قمت بإنشاء صورة حاوية وتحميلها إلى مثيل ACR. ابدأ بالبرنامج التعليمي 1 - إعداد التطبيق ل AKS للمتابعة.

  • إذا كنت تستخدم Azure CLI، يتطلب هذا البرنامج التعليمي تشغيل الإصدار 2.35.0 من Azure CLI أو أحدث. تحقق من الإصدار الخاص بك باستخدام az --version. للتثبيت أو الترقية، يُرجى الرجوع إلى تثبيت Azure CLI.
  • إذا كنت تستخدم Azure PowerShell، يتطلب هذا البرنامج التعليمي تشغيل الإصدار 5.9.0 من Azure PowerShell أو أحدث. تحقق من الإصدار الخاص بك باستخدام Get-InstalledModule -Name Az. للترقية أو التثبيت، راجع تثبيت Azure PowerShell.
  • إذا كنت تستخدم Azure Developer CLI، يتطلب هذا البرنامج التعليمي تشغيل الإصدار 1.5.1 من Azure Developer CLI أو أحدث. تحقق من الإصدار الخاص بك باستخدام azd version. للترقية أو التثبيت، راجع تثبيت Azure Developer CLI.

إنشاء نظام مجموعة Kubernetes

يمكن لمجموعات AKS استخدام التحكم في الوصول المستند إلى الدور Kubernetes (Kubernetes RBAC)، والذي يسمح لك بتحديد الوصول إلى الموارد استنادا إلى الأدوار المعينة للمستخدمين. إذا تم تعيين أدوار متعددة للمستخدم، يتم دمج الأذونات. يمكن تحديد نطاق الأذونات إما لمساحة اسم واحدة أو عبر المجموعة بأكملها.

لمعرفة المزيد حول AKS وKubernetes RBAC، راجع التحكم في الوصول إلى موارد نظام المجموعة باستخدام هويات Kubernetes RBAC وMicrosoft Entra في AKS.

يتطلب هذا البرنامج التعليمي الإصدار 2.35.0 من Azure CLI أو أحدث. تحقق من الإصدار الخاص بك باستخدام az --version. للتثبيت أو الترقية، يُرجى الرجوع إلى تثبيت Azure CLI. إذا كنت تستخدم بيئة Bash في Azure Cloud Shell، فإن أحدث إصدار مثبت بالفعل.

تثبيت Kubernetes CLI

يمكنك استخدام Kubernetes CLI، kubectl، للاتصال بمجموعة Kubernetes الخاصة بك. في حال كنت تستخدم Azure Cloud Shell، يكون kubectl مثبتاً بالفعل. إذا كنت تقوم بتشغيل الأوامر محليا، يمكنك استخدام Azure CLI أو Azure PowerShell لتثبيت kubectl.

  • تثبيت kubectl محليا باستخدام az aks install-cli الأمر .

    az aks install-cli
    

إنشاء نظام مجموعة AKS

يمكن لمجموعات AKS استخدام التحكم في الوصول المستند إلى الدور Kubernetes (Kubernetes RBAC)، والذي يسمح لك بتحديد الوصول إلى الموارد استنادا إلى الأدوار المعينة للمستخدمين. يتم دمج الأذونات عند تعيين أدوار متعددة للمستخدمين. يمكن تحديد نطاق الأذونات إما لمساحة اسم واحدة أو عبر المجموعة بأكملها. لمزيد من المعلومات، راجع التحكم في الوصول إلى موارد نظام المجموعة باستخدام Kubernetes RBAC ومعرف Microsoft Entra في AKS.

للحصول على معلومات حول حدود موارد AKS وتوافر المنطقة، راجع الحصص النسبية وقيود حجم الجهاز الظاهري وتوافر المنطقة في AKS.

هام

ينشئ هذا البرنامج التعليمي مجموعة من ثلاث عقد. لضمان عمل نظام المجموعة بشكل موثوق، يجب تشغيل عقدتين على الأقل. مطلوب ما لا يقل عن ثلاث عقد لاستخدام Azure Container Storage. إذا تلقيت رسالة خطأ عند محاولة إنشاء نظام المجموعة، فقد تحتاج إلى طلب زيادة الحصة النسبية لاشتراك Azure أو تجربة منطقة Azure مختلفة. بدلا من ذلك، يمكنك حذف معلمة حجم العقدة VM لاستخدام حجم الجهاز الظاهري الافتراضي.

للسماح لمجموعة AKS بالتفاعل مع موارد Azure الأخرى، يقوم النظام الأساسي Azure تلقائيا بإنشاء هوية نظام المجموعة. في هذا المثال، يتم منح هوية نظام المجموعة الحق في سحب الصور من مثيل ACR الذي أنشأته في البرنامج التعليمي السابق. لتنفيذ الأمر بنجاح، يجب أن يكون لديك مالك أو مسؤول حساب Azure دور في اشتراك Azure.

  • إنشاء نظام مجموعة AKS باستخدام az aks create الأمر . في المثال التالي، سيُنشأ نظام مجموعة يُسمَّى myAKSCluster في مجموعة موارد باسم myResourceGroup. تم إنشاء مجموعة الموارد هذه في البرنامج التعليمي السابق في منطقة westus2. سنواصل استخدام متغير البيئة، $ACRNAME، الذي قمنا بتعيينه في البرنامج التعليمي السابق . إذا لم يكن لديك مجموعة متغيرات البيئة هذه، فقم بتعيينها الآن إلى نفس القيمة التي استخدمتها سابقا.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 3 \
        --node-vm-size standard_l8s_v3 \
        --generate-ssh-keys \
        --attach-acr $ACRNAME
    

    إشعار

    إذا قمت بالفعل بإنشاء مفاتيح SSH، فقد تواجه خطأ مشابها linuxProfile.ssh.publicKeys.keyData is invalid. للمتابعة، أعد محاولة الأمر بدون المعلمة --generate-ssh-keys .

لتجنب الحاجة إلى دور "Owner" أو مسؤول حساب Azure، يمكنك أيضاً تكوين مسؤول خدمة يدوياً لسحب الصور من ACR. لمزيد من المعلومات، راجع مصادقة ACR مع مسؤول الخدمة أو المصادقة من Kubernetes بأمر سري للسحب. يمكنك استخدام هوية مُدارة بدلاً من مسؤول الخدمة لتسهيل الإدارة.

الاتصال بالمجموعة باستخدام kubectl

  1. قم بتكوين kubectl للاتصال بنظام مجموعة Kubernetes باستخدام أمر az aks get-credentials. يحصل المثال التالي على بيانات اعتماد لمجموعة AKS المسماة myAKSCluster في myResourceGroup.

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    
  2. تحقق من الاتصال بالمجموعة باستخدام kubectl get nodes الأمر الذي يقوم بإرجاع قائمة عقد نظام المجموعة.

    kubectl get nodes
    

    يظهر إخراج المثال التالي قائمة بعقد نظام المجموعة:

    NAME                                STATUS   ROLES   AGE   VERSION
    aks-nodepool1-19366578-vmss000000   Ready    agent   47h   v1.30.9
    aks-nodepool1-19366578-vmss000001   Ready    agent   47h   v1.30.9
    aks-nodepool1-19366578-vmss000002   Ready    agent   47h   v1.30.9
    

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

في هذا البرنامج التعليمي، قمت بنشر مجموعة Kubernetes في AKS وتكوينها kubectl للاتصال بالمجموعة. لقد تعرفت على كيفية:

  • نشر مجموعة AKS التي يمكنها المصادقة على ACR.
  • تثبيت Kubernetes CLI، kubectl.
  • تكوين kubectl للاتصال بمجموعة AKS الخاصة بك.

في البرنامج التعليمي التالي، ستتعلم كيفية نشر Azure Container Storage على مجموعتك وإنشاء وحدة تخزين عامة سريعة الزوال. إذا كنت تستخدم Azure Developer CLI، أو إذا لم تتمكن من استخدام نوع جهاز ظاهري محسن للتخزين بسبب مشكلات الحصة النسبية، فانتقل مباشرة إلى البرنامج التعليمي Deploy containerized application.

توزيع تخزين حاويات Azure