تثبيت الوظيفة الإضافية Open Service Mesh (OSM) باستخدام Azure CLI

توضح هذه المقالة كيفية تثبيت الوظيفة الإضافية Open Service Mesh (OSM) على نظام مجموعة Azure Kubernetes Service (AKS). تقوم الوظيفة الإضافية OSM بتثبيت شبكة OSM على مجموعتك. شبكة OSM هي شبكة خدمة توفر إدارة نسبة استخدام الشبكة وإنفاذ النهج وجمع بيانات تتبع الاستخدام لتطبيقاتك. لمزيد من المعلومات حول شبكة OSM، راجع Open Service Mesh.

إشعار

مع إيقاف شبكة الخدمة المفتوحة (OSM) من قبل Cloud Native Computing Foundation (CNCF)، نوصي بتحديد تكوينات OSM الخاصة بك وترحيلها إلى تكوين Istio مكافئ. للحصول على معلومات حول الترحيل من OSM إلى Istio، راجع إرشادات الترحيل لتكوينات شبكة الخدمة المفتوحة (OSM) إلى Istio.

هام

استنادا إلى إصدار Kubernetes الذي تعمل به مجموعتك، تقوم الوظيفة الإضافية OSM بتثبيت إصدار مختلف من OSM.

إصدار Kubernetes إصدار OSM مثبت
1.24.0 أو أحدث 1.2.5
بين 1.23.5 و1.24.0 1.1.3
أقل من 1.23.5 1.0.0

قد لا تتوفر الإصدارات القديمة من OSM للتنصيب أو تكون مدعومة بنشاط إذا وصل إصدار AKS المقابل إلى نهاية العمر الافتراضي. يمكنك التحقق من تقويم إصدار AKS Kubernetes للحصول على معلومات حول نوافذ دعم إصدار AKS.

المتطلبات الأساسية

تثبيت المكون الإضافي OSM على مقطع التخزين الخاص بك

  1. إذا لم يكن لديك واحدة بالفعل، فبادر بإنشاء مجموعة موارد Azure باستخدام az group create الأمر .

    az group create --name myResourceGroup --location eastus
    
  2. قم بإنشاء نظام مجموعة AKS جديد مع تثبيت الوظيفة الإضافية OSM باستخدام az aks create الأمر وتحديد open-service-mesh للمعلمة --enable-addons .

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --enable-addons open-service-mesh \
        --generate-ssh-keys        
    

هام

لا يمكنك تمكين المكون الإضافي OSM على مقطع تخزين موجود إذا كانت شبكة OSM موجودة بالفعل على مقطع التخزين الخاص بك. قم بإلغاء تثبيت أي شبكات OSM موجودة على مقطع التخزين الخاص بك قبل تمكين المكون الإضافي OSM.

عند التثبيت على مجموعات موجودة، استخدم az aks enable-addons الأمر . تعرض التعليمات البرمجية التالية مثالاً.

az aks enable-addons \
 --resource-group myResourceGroup \
 --name myAKSCluster \
 --addons open-service-mesh

الحصول على بيانات اعتماد لمجموعتك

  • احصل على بيانات الاعتماد لنظام مجموعة AKS باستخدام az aks get-credentials الأمر .

    az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
    

تحقق من تثبيت الوظيفة الإضافية OSM على نظام المجموعة

  • تحقق من تثبيت الوظيفة الإضافية OSM على نظام المجموعة باستخدام az aks show الأمر مع وحدد 'addonProfiles.openServiceMesh.enabled' للمعلمة --query . في الإخراج، ضمن addonProfiles، enabled يجب أن تظهر القيمة ك true ل openServiceMesh.

    az aks show --resource-group myResourceGroup --name myAKSCluster  --query 'addonProfiles.openServiceMesh.enabled'
    

تحقق من تشغيل شبكة OSM على نظام المجموعة

  1. تحقق من إصدار شبكة OSM التي تعمل على نظام المجموعة الخاصة بك وحالتها وتكوينها باستخدام kubectl get deployment الأمر وعرض إصدار الصورة لتوزيع وحدة تحكم osm.

    kubectl get deployment -n kube-system osm-controller -o=jsonpath='{$.spec.template.spec.containers[:1].image}'
    

    يظهر إخراج المثال التالي إصدار 0.11.1 من شبكة OSM:

    mcr.microsoft.com/oss/openservicemesh/osm-controller:v0.11.1
    
  2. تحقق من حالة مكونات OSM التي تعمل على نظام المجموعة باستخدام الأوامر التالية kubectl لإظهار حالة app.kubernetes.io/name=openservicemesh.io عمليات النشر والقرون والخدمات.

    kubectl get deployments -n kube-system --selector app.kubernetes.io/name=openservicemesh.io
    kubectl get pods -n kube-system --selector app.kubernetes.io/name=openservicemesh.io
    kubectl get services -n kube-system --selector app.kubernetes.io/name=openservicemesh.io
    

    هام

    في حال كانت أي جرابات لها حالة أخرى غير Running، مثل Pending، فقد لا يحتوي مقطع التخزين الخاص بك على موارد كافية لتشغيل OSM. راجع ضبط حجم مقطع التخزين الخاص بك، مثل عدد العقد ووحدة حفظ المخزون للجهاز الظاهري، قبل الاستمرار في استخدام OSM على مقطع التخزين الخاص بك.

  3. تحقق من تكوين شبكة OSM باستخدام kubectl get meshconfig الأمر .

    kubectl get meshconfig osm-mesh-config -n kube-system -o yaml
    

    يبين إخراج المثال التالي تكوين شبكة OSM:

    apiVersion: config.openservicemesh.io/v1alpha1
    kind: MeshConfig
    metadata:
      creationTimestamp: "0000-00-00A00:00:00A"
      generation: 1
      name: osm-mesh-config
      namespace: kube-system
      resourceVersion: "2494"
      uid: 6c4d67f3-c241-4aeb-bf4f-b029b08faa31
    spec:
      certificate:
        serviceCertValidityDuration: 24h
      featureFlags:
        enableEgressPolicy: true
        enableMulticlusterMode: false
        enableWASMStats: true
      observability:
        enableDebugServer: true
        osmLogLevel: info
        tracing:
          address: jaeger.osm-system.svc.cluster.local
          enable: false
          endpoint: /api/v2/spans
          port: 9411
      sidecar:
        configResyncInterval: 0s
        enablePrivilegedInitContainer: false
        envoyImage: mcr.microsoft.com/oss/envoyproxy/envoy:v1.18.3
        initContainerImage: mcr.microsoft.com/oss/openservicemesh/init:v0.9.1
        logLevel: error
        maxDataPlaneConnections: 0
        resources: {}
      traffic:
        enableEgress: true
        enablePermissiveTrafficPolicyMode: true
        inboundExternalAuthorization:
          enable: false
          failureModeAllow: false
          statPrefix: inboundExtAuthz
          timeout: 1s
        useHTTPSIngress: false
    

    يظهر enablePermissiveTrafficPolicyMode: trueإخراج المثال ، مما يعني أن OSM قد تم تمكين وضع نهج نسبة استخدام الشبكة المتساهل. وعند تمكين هذا الوضع في شبكة OSM:

    • يتم تجاوز فرض نهج نسبة استخدام الشبكة SMI.
    • في هذا الوضع، تكتشف OSM تلقائيا الخدمات التي تشكل جزءا من شبكة الخدمة.
    • تقوم OSM بإنشاء قواعد نهج نسبة استخدام الشبكة على كل وكيل جانبي لـ Envoy ليكون قادرا على التواصل مع هذه الخدمات.

حذف نظام المجموعة

  • عندما لم تعد بحاجة إلى نظام المجموعة، يمكنك حذفه باستخدام az group delete الأمر ، الذي يزيل مجموعة الموارد، نظام المجموعة، وجميع الموارد ذات الصلة.

    az group delete --name myResourceGroup --yes --no-wait
    

إشعار

بدلاً من ذلك، يمكنك إلغاء تثبيت المكون الإضافي "شبكة الخدمة المفتوحة" والموارد ذات الصلة من نظام مجموعتك. للمزيد من المعلومات، راجع إلغاء تثبيت المكون الإضافي Open Service Mesh من مقطع تخزين AKS الخاص بك.

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

توضح لك هذه المقالة كيفية تثبيت الوظيفة الإضافية OSM على نظام مجموعة AKS والتحقق من تثبيتها وتشغيلها. عند تثبيت المكون الإضافي "شبكة الخدمة المفتوحة" على نظام مجموعتك، يمكنك نشر نموذج تطبيق أو إلحاق تطبيق موجود للعمل مع شبكة الخدمة المفتوحة لديك.