Aracılığıyla paylaş


Azure Arc özellikli Open Service Mesh

Open Service Mesh (OSM), kullanıcıların son derece dinamik mikro hizmet ortamları için tekdüzen olarak yönetmesine, güvenliğini sağlamasına ve kullanıma hazır gözlemlenebilirlik özelliklerine sahip olmasına olanak tanıyan basit, genişletilebilir, Buluta Özel bir hizmet ağıdır.

OSM, Kubernetes'te Envoy tabanlı bir denetim düzlemi çalıştırır, SMI API'leri ile yapılandırılabilir ve uygulamanızın her örneğinin yanına sepet kapsayıcısı olarak bir Envoy proxy'si eklenerek çalışır. Open Service Mesh tarafından etkinleştirilen hizmet ağı senaryoları hakkında daha fazla bilgi edinin.

Azure Arc özellikli OSM'nin tüm bileşenleri kullanılabilirlik alanlarına dağıtılarak alanlar arası yedekli hale gelir.

Yükleme seçenekleri ve gereksinimleri

Azure Arc özellikli Open Service Mesh, Azure portalı, Azure CLI, ARM şablonu veya yerleşik bir Azure ilkesi aracılığıyla dağıtılabilir.

Önkoşullar

  • Küme uzantıları için burada listelenen tüm ortak önkoşullara uyduğunuzdan emin olun.
  • CLI uzantısı sürümünü >kullanma az k8s-extension = v1.0.4

Geçerli destek sınırlamaları

  • Azure Arc bağlantılı Kubernetes kümesinde yalnızca bir Open Service Mesh örneği dağıtılabilir.
  • Arc özellikli Open Service Mesh'in en son yayınlanan iki ikincil sürümü için destek sağlanır. En son sürümü burada bulabilirsiniz. Desteklenen sürüm sürümleri notlarla eklenir. Ara sürümlerle ilişkili etiketleri yoksayın.
  • Şu anda aşağıdaki Kubernetes dağıtımları desteklenmektedir:
    • AKS (Azure Kubernetes Service) Altyapısı
    • Azure Stack HCI'de AKS kümeleri
    • Azure Arc tarafından etkinleştirilen AKS
    • Küme API'si Azure
    • Google Kubernetes Engine
    • Kurallı Kubernetes Dağıtımı
    • Rancher Kubernetes Engine
    • OpenShift Kubernetes Dağıtımı
    • Amazon Elastic Kubernetes Service
    • VMware Tanzu Kubernetes Grid
  • Azure Arc özellikli Open Service Mesh ile Azure İzleyici tümleştirmesi sınırlı destekle önizleme aşamasında kullanılabilir.

Azure portalını kullanarak temel yükleme

Azure portalını kullanarak dağıtım yapmak için Arc'a bağlı bir kümeniz olduğunda kümenin Open Service Mesh bölümüne gidin.

Arc özellikli Kubernetes kümesi ayarları altında bulunan Service Mesh'i açın

Uzantının en son sürümünü dağıtmak için Uzantıyı yükle düğmesini seçin.

Alternatif olarak, burada yakalanan CLI deneyimini kullanabilirsiniz. Büyük ölçekte ekleme için ARM şablonu ve Azure İlkesi kullanarak dağıtım hakkında daha fazla bilgi edinin.

Azure CLI kullanarak temel yükleme

Aşağıdaki adımlarda, Azure Arc'a bağlı desteklenen bir Kubernetes dağıtımına sahip bir kümeniz olduğu varsayılır. KUBECONFIG ortam değişkeninizin Arc özellikli Kubernetes kümesinin kubeconfig'ine işaret olduğundan emin olun.

Ortam değişkenlerini ayarlayın:

export CLUSTER_NAME=<arc-cluster-name>
export RESOURCE_GROUP=<resource-group-name>

OpenShift kümesi kullanıyorsanız OpenShift yükleme adımlarına atlayın.

Uzantıyı oluşturun:

Not

OSM'nin belirli bir sürümünü sabitlemek için komutuna --version x.y.z bayrağını create ekleyin. Bunun değerini auto-upgrade-minor-version false olarak ayarlayacağını unutmayın.

az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm

Bu örneğe benzer bir çıktı görmeniz gerekir. Gerçek OSM helm grafiğinin kümeye dağıtılma süresi 3-5 dakika sürebilir. Bu dağıtım gerçekleşene kadar , installState olarak kalır Pending.

{
  "autoUpgradeMinorVersion": true,
  "configurationSettings": {},
  "creationTime": "2021-04-29T17:50:11.4116524+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.openservicemesh",
  "id": "/subscriptions/<subscription-id>/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Kubernetes/connectedClusters/$CLUSTER_NAME/providers/Microsoft.KubernetesConfiguration/extensions/osm",
  "identity": null,
  "installState": "Pending",
  "lastModifiedTime": "2021-04-29T17:50:11.4116525+00:00",
  "lastStatusTime": null,
  "location": null,
  "name": "osm",
  "releaseTrain": "stable",
  "resourceGroup": "$RESOURCE_GROUP",
  "scope": {
    "cluster": {
      "releaseNamespace": "arc-osm-system"
    },
    "namespace": null
  },
  "statuses": [],
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "x.y.z"
}

Ardından yüklemenizi doğrulayın.

Özel yüklemeler

Aşağıdaki bölümlerde Azure Arc özellikli OSM'nin belirli özel yüklemeleri açıklanmaktadır. Özel yüklemeler, JSON dosyasında OSM değerlerini ayarlayarak CLI komutuna k8s-extension create geçirmeyi gerektirir.

OpenShift kümesine OSM yükleme

  1. Aşağıdaki içeriği kopyalayın ve bir JSON dosyasına kaydedin. Zaten bir yapılandırma ayarları dosyası oluşturduysanız, önceki değişikliklerinizi korumak için mevcut dosyaya aşağıdaki satırı ekleyin.

    {
        "osm.osm.enablePrivilegedInitContainer": "true"
    }
    
  2. OSM'yi özel değerlerle yükleyin.

  3. Ağ içindeki uygulamalar için her hizmet hesabına ayrıcalıklı güvenlik bağlamı kısıtlaması ekleyin.

    oc adm policy add-scc-to-user privileged -z <service account name> -n <service account namespace>
    

Gerçek OSM helm grafiğinin kümeye dağıtılma süresi 3-5 dakika sürebilir. Bu dağıtım gerçekleşene kadar , installState olarak kalır Pending.

Ayrıcalıklı başlatma kapsayıcısı ayarının varsayılana geri dönmediğinden emin olmak için yapılandırma ayarını sonraki az k8s-extension create tüm komutlara geçirin"osm.osm.enablePrivilegedInitContainer" : "true".

Yüklemede Yüksek Kullanılabilirlik özelliklerini etkinleştirme

OSM'nin kontrol düzlemi bileşenleri, Yüksek Kullanılabilirlik ve Hataya Dayanıklılık göz önünde bulundurularak oluşturulur. Bu bölümde, yükleme sırasında Yatay Pod Otomatik Ölçeklendirme (HPA) ve Pod Kesinti Bütçesi'nin (PDB) nasıl etkinleştirileceği açıklanmaktadır. OSM'de Yüksek Kullanılabilirlik'in tasarım konuları hakkında daha fazla bilgi edinin.

Yatay Pod Otomatik Ölçeklendirme (HPA)

HPA, kullanıcı tarafından tanımlanan ortalama hedef CPU kullanımı (%) ve ortalama hedef bellek kullanımı (%) temelinde denetim düzlemi podlarının ölçeğini otomatik olarak artırır veya azaltır. HPA'yı etkinleştirmek ve yükleme sırasında OSM denetim düzlemi podlarında geçerli değerleri ayarlamak için, burada gösterildiği gibi mevcut JSON ayarları dosyanızı oluşturun veya ekleyin ve HPA'yı etkinleştirmek istediğiniz her denetim düzlemi podunun (osmController, injector) anahtar/değer çiftlerini yineleyin.

{
  "osm.osm.<control_plane_pod>.autoScale.enable" : "true",
  "osm.osm.<control_plane_pod>.autoScale.minReplicas" : "<allowed values: 1-10>",
  "osm.osm.<control_plane_pod>.autoScale.maxReplicas" : "<allowed values: 1-10>",
  "osm.osm.<control_plane_pod>.autoScale.cpu.targetAverageUtilization" : "<allowed values 0-100>",
  "osm.osm.<control_plane_pod>.autoScale.memory.targetAverageUtilization" : "<allowed values 0-100>"
}

Şimdi OSM'yi özel değerlerle yükleyin.

Pod Kesintisi Bütçesi (PDB)

Planlı kesintiler sırasında kesintileri önlemek için, kontrol düzlemi podları osm-controller ve osm-injector her denetim düzlemi uygulamasına her zaman en az bir pod karşılık gelen bir PDB'ye sahip olun.

PDB'yi etkinleştirmek için, istenen her denetim düzlemi poduosmController (, injector) için aşağıdaki şekilde mevcut JSON ayarları dosyanızı oluşturun veya ekleyin:

{
  "osm.osm.<control_plane_pod>.enablePodDisruptionBudget" : "true"
}

Şimdi OSM'yi özel değerlerle yükleyin.

Sertifika yönetimi için cert-manager ile OSM yükleme

cert-manager , Kubernetes'te özel anahtarları depolamaya gerek kalmadan OSM'ye imzalı sertifikalar vermek için kullanılabilen bir sağlayıcıdır. Daha fazla bilgi edinmek için OSM'nin cert-manager belgelerine ve tanıtımına bakın.

Not

OSM GitHub belgelerinde sağlanan komutları dikkatle kullanın. Komutlarda doğru ad alanını kullandığınızdan emin olun veya bayrağıyla --osm-namespace arc-osm-systembelirtin.

OSM'yi sertifika sağlayıcısı olarak cert-manager ile yüklemek için mevcut JSON ayarları dosyanızı certificateProvider.kind oluşturun veya burada gösterildiği gibi cert-manager olarak ayarlanan değeri ekleyin. OSM belgelerinde belirtilen varsayılan cert-manager değerlerinden değiştirmek için, sonraki certmanager.issuer satırları da ekleyin ve güncelleştirin.

{
  "osm.osm.certificateProvider.kind" : "cert-manager",
  "osm.osm.certmanager.issuerName" : "<issuer name>",
  "osm.osm.certmanager.issuerKind" : "<issuer kind>",
  "osm.osm.certmanager.issuerGroup" : "<issuer group>"
}

Şimdi OSM'yi özel değerlerle yükleyin.

Giriş için Contour ile OSM yükleme

OSM, giriş kullanarak mesh hizmetlerini harici olarak kullanıma sunmak için birden çok seçenek sağlar. OSM, mesh dışında yüklü giriş denetleyicisiyle çalışan ve mesh'e katılmak için bir sertifika ile sağlanan Contour'u kullanabilir. Daha fazla bilgi edinmek için OSM giriş belgelerine ve tanıtımına bakın.

Not

OSM GitHub belgelerinde sağlanan komutları dikkatle kullanın. Komutlarda doğru ad alanını kullandığınızdan emin olun veya bayrağıyla --osm-namespace arc-osm-systembelirtin. OSM yüklemesi sırasında Konturu yapılandırmak için gerekli değerleri ayarlamak için JSON ayarları dosyanıza aşağıdakileri ekleyin:

{
  "osm.osm.osmNamespace" : "arc-osm-system",
  "osm.contour.enabled" : "true",
  "osm.contour.configInline.tls.envoy-client-certificate.name" : "osm-contour-envoy-client-cert", 
  "osm.contour.configInline.tls.envoy-client-certificate.namespace" : "arc-osm-system"
}

OSM yüklemesi sırasında değerleri ayarlama

OSM yüklemesi sırasında ayarlanması gereken tüm değerlerin tek bir JSON dosyasına kaydedilmesi ve Azure CLI yükleme komutu aracılığıyla geçirilmesi gerekir.

Özel yükleme bölümlerinde açıklandığı gibi geçerli değerlere sahip bir JSON dosyası oluşturduktan sonra, dosya yolunu ortam değişkeni olarak ayarlayın:

export SETTINGS_FILE=<json-file-path>

az k8s-extension create komutunu çalıştırarak OSM uzantısını oluşturun ve şu bayrağı kullanarak --configuration-settings-file ayarlar dosyasını geçirin:

az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm --configuration-settings-file $SETTINGS_FILE

ARM şablonunu kullanarak Azure Arc özellikli OSM'yi yükleme

Kümenizi Azure Arc'a bağladıktan sonra ve değerlerini güncelleştirerek <cluster-name> <osm-arc-version> aşağıdaki biçime sahip bir JSON dosyası oluşturun:

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "ConnectedClusterName": {
            "defaultValue": "<cluster-name>",
            "type": "String",
            "metadata": {
                "description": "The Connected Cluster name."
            }
        },
        "ExtensionInstanceName": {
            "defaultValue": "osm",
            "type": "String",
            "metadata": {
                "description": "The extension instance name."
            }
        },
        "ExtensionVersion": {
            "defaultValue": "<osm-arc-version>",
            "type": "String",
            "metadata": {
                "description": "The extension type version."
            }
        },
        "ExtensionType": {
            "defaultValue": "Microsoft.openservicemesh",
            "type": "String",
            "metadata": {
                "description": "The extension type."
            }
        },
        "ReleaseTrain": {
            "defaultValue": "Stable",
            "type": "String",
            "metadata": {
                "description": "The release train."
            }
        }
    },
    "functions": [],
    "resources": [
        {
            "type": "Microsoft.KubernetesConfiguration/extensions",
            "apiVersion": "2020-07-01-preview",
            "name": "[parameters('ExtensionInstanceName')]",
            "properties": {
                "extensionType": "[parameters('ExtensionType')]",
                "releaseTrain": "[parameters('ReleaseTrain')]",
                "version": "[parameters('ExtensionVersion')]"
            },
            "scope": "[concat('Microsoft.Kubernetes/connectedClusters/', parameters('ConnectedClusterName'))]"
        }
    ]
}

Ortam değişkenlerini ayarlayın:

export TEMPLATE_FILE_NAME=<template-file-path>
export DEPLOYMENT_NAME=<desired-deployment-name>

OSM uzantısını yüklemek için şu komutu çalıştırın:

az deployment group create --name $DEPLOYMENT_NAME --resource-group $RESOURCE_GROUP --template-file $TEMPLATE_FILE_NAME

Artık OSM kaynaklarını görüntüleyebilmeniz ve kümenizdeki OSM uzantısını kullanabilmeniz gerekir.

Yerleşik ilkeyi kullanarak Azure Arc özellikli OSM'yi yükleme

Azure portalında Kubernetes kategorisi altında yerleşik bir ilke bulunur: Azure Arc özellikli Kubernetes kümelerinde Open Service Mesh uzantısı yüklü olmalıdır. Bu ilke bir abonelik veya kaynak grubu kapsamında atanabilir.

Bu ilkenin varsayılan eylemi, yoksa Dağıt'tır. Ancak, atama sırasında parametreleri değiştirerek uzantı yüklemeleri için kümeleri denetlemeyi seçebilirsiniz. Ayrıca, yüklemek istediğiniz sürümü (v1.0.0-1 veya üzeri) parametre olarak belirtmeniz de istenir.

Yüklemeyi doğrulama

Aşağıdaki komutu çalıştırın.

az k8s-extension show --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --name osm

Şuna benzer bir JSON çıkışı görmeniz gerekir:

{
  "autoUpgradeMinorVersion": true,
  "configurationSettings": {},
  "creationTime": "2021-04-29T19:22:00.7649729+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.openservicemesh",
  "id": "/subscriptions/<subscription-id>/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Kubernetes/connectedClusters/$CLUSTER_NAME/providers/Microsoft.KubernetesConfiguration/extensions/osm",
  "identity": null,
  "installState": "Installed",
  "lastModifiedTime": "2021-04-29T19:22:00.7649731+00:00",
  "lastStatusTime": "2021-04-29T19:23:27.642+00:00",
  "location": null,
  "name": "osm",
  "releaseTrain": "stable",
  "resourceGroup": "$RESOURCE_GROUP",
  "scope": {
    "cluster": {
      "releaseNamespace": "arc-osm-system"
    },
    "namespace": null
  },
  "statuses": [],
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "x.y.z"
}

Kümenizdeki Open Service Mesh (OSM) uzantısı bileşenlerinin dağıtımını doğrulamak ve sorunlarını gidermek için kullanabileceğiniz diğer komutlar için sorun giderme kılavuzumuza bakın

OSM denetleyicisi yapılandırması

OSM, bir MeshConfig kaynağını osm-mesh-config ad alanında arc-osm-system denetim düzleminin bir parçası olarak dağıtır. Bu MeshConfig'in amacı, mesh sahibine/operatörüne bazı mesh yapılandırmalarını ihtiyaçlarına göre güncelleştirme olanağı sağlamaktır. Varsayılan değerleri görüntülemek için aşağıdaki komutu kullanın.

kubectl describe meshconfig osm-mesh-config -n arc-osm-system

Çıktıda varsayılan değerler gösterilir:

  Certificate:
    Cert Key Bit Size:               2048
    Service Cert Validity Duration:  24h
  Feature Flags:
    Enable Async Proxy Service Mapping:  false
    Enable Egress Policy:                true
    Enable Envoy Active Health Checks:   false
    Enable Ingress Backend Policy:       true
    Enable Multicluster Mode:            false
    Enable Retry Policy:                 false
    Enable Snapshot Cache Mode:          false
    Enable WASM Stats:                   true
  Observability:
    Enable Debug Server:  false
    Osm Log Level:        info
    Tracing:
      Enable:  false
  Sidecar:
    Config Resync Interval:            0s
    Enable Privileged Init Container:  false
    Log Level:                         error
    Resources:
  Traffic:
    Enable Egress:                          false
    Enable Permissive Traffic Policy Mode:  true
    Inbound External Authorization:
      Enable:              false
      Failure Mode Allow:  false
      Stat Prefix:         inboundExtAuthz
      Timeout:             1s
    Inbound Port Exclusion List:
    Outbound IP Range Exclusion List:
    Outbound Port Exclusion List:

Daha fazla bilgi için bkz . Config API başvurusu. değerinin spec.traffic.enablePermissiveTrafficPolicyMode olarak ayarlandığına truedikkat edin. OSM izin verilen trafik ilkesi modundayken, SMI trafik ilkesi zorlaması atlanır. Bu modda OSM, hizmet ağı kapsamındaki hizmetleri otomatik olarak bulur ve bu hizmetlerle iletişim kurabilmek için her Bir Envoy proxy sepetteki trafik ilkesi kurallarını programlar.

osm-mesh-configkümenin Open Service Mesh bölümünde Yapılandırmayı düzenle'yi seçerek Azure portalında da görüntülenebilir.

Open Service Mesh bölümünün en üstünde bulunan Yapılandırmayı düzenle düğmesi

OSM denetleyicisi yapılandırmasında değişiklik yapma

Not

MeshConfig'deki osm-mesh-config değerler yükseltmeler arasında kalıcıdır.

osm-mesh-config için değişiklikler komutu kullanılarak kubectl patch yapılabilir. Aşağıdaki örnekte izinli trafik ilkesi modu false olarak değiştirilmiştir.

kubectl patch meshconfig osm-mesh-config -n arc-osm-system -p '{"spec":{"traffic":{"enablePermissiveTrafficPolicyMode":false}}}' --type=merge

Yanlış bir değer kullanılırsa MeshConfig CRD'sinde yapılan doğrulamalar, değerin neden geçersiz olduğunu açıklayan bir hata iletisiyle değişikliği engeller. Örneğin, bu komut boole olmayan bir değere düzeltme eki uygulamamız enableEgress durumunda ne olacağını gösterir:

kubectl patch meshconfig osm-mesh-config -n arc-osm-system -p '{"spec":{"traffic":{"enableEgress":"no"}}}'  --type=merge
# Validations on the CRD will deny this change
The MeshConfig "osm-mesh-config" is invalid: spec.traffic.enableEgress: Invalid value: "string": spec.traffic.enableEgress in body must be of type boolean: "string"

Alternatif olarak, Azure portalında düzenlemek osm-mesh-config için kümenin Open Service Mesh bölümünde Yapılandırmayı düzenle'yi seçin.

Service Mesh'i Aç bölümündeki Yapılandırmayı düzenle düğmesi

Azure Arc özellikli OSM kullanma

OSM özelliklerini kullanmaya başlamak için önce uygulama ad alanlarını hizmet ağına eklemeniz gerekir. OSM GitHub yayınları sayfasından OSM CLI'yi indirin. Ad alanları ağa eklendikten sonra, istenen OSM özelliğini elde etmek için SMI ilkelerini yapılandırabilirsiniz.

Ad alanlarını hizmet ağına ekleme

Aşağıdaki komutu çalıştırarak mesh'e ad alanları ekleyin:

osm namespace add <namespace_name>

Ad alanları, kümenin Open Service Mesh bölümünde +Ekle seçeneği seçilerek Azure portalından eklenebilir.

Open Service Mesh bölümünün en üstünde bulunan +Ekle düğmesi

Hizmetleri ekleme hakkında daha fazla bilgi için Open Service Mesh belgelerine bakın.

Service Mesh Arabirimi (SMI) ilkeleriyle OSM'yi yapılandırma

Örnek bir uygulamayla başlayabilir veya SMI ilkelerini denemek için test ortamınızı kullanabilirsiniz.

Not

Örnek uygulamalar kullanıyorsanız, sürümlerinin kümenizde yüklü olan OSM uzantısının sürümüyle eşleştiğinden emin olun. Örneğin, OSM uzantısının v1.0.0 sürümünü kullanıyorsanız, OSM yukarı akış deposunun release-v1.0 dalındaki kitapçı bildirimini kullanın.

Kendi Jaeger, Prometheus ve Grafana örneklerinizi yapılandırma

OSM uzantısı Jaeger, Prometheus, Grafana ve Flagger gibi eklentileri yüklemez. Bunun yerine OSM'yi bu araçların çalışan örnekleriyle tümleştirebilirsiniz. Kendi örneklerinizle tümleştirmek için aşağıdaki belgelere bakın:

Not

OSM GitHub belgelerinde sağlanan komutları dikkatle kullanın. içinde değişiklik yaparken doğru ad alanı adını arc-osm-system kullandığınızdan osm-mesh-configemin olun.

Azure İzleyici ve Applications Insights kullanarak uygulama izleme (önizleme)

Hem Azure İzleyici hem de Azure Uygulaması lication Insights, bulut ve şirket içi ortamlarınızdan telemetri verilerini toplamak, analiz etmek ve üzerinde işlem gerçekleştirmek için kapsamlı bir çözüm sunarak uygulamalarınızın ve hizmetlerinizin kullanılabilirliğini ve performansını en üst düzeye çıkarmanıza yardımcı olur. Azure Arc özellikli Open Service Mesh, bu Azure hizmetlerinin her ikisinde de derin tümleştirmelere sahiptir. Bu tümleştirme, OSM ölçümleri tarafından sağlanan kritik KPI'leri görüntülemek ve yanıtlamak için sorunsuz bir Azure deneyimi sağlar.

Önemli

Azure Arc özellikli Kubernetes önizleme özellikleri self servis ve kabul temelinde kullanılabilir. Önizlemeler "olduğu gibi" ve "kullanılabilir" olarak sağlanır ve hizmet düzeyi sözleşmelerinin ve sınırlı garantinin dışında tutulur. Azure Arc özellikli Kubernetes önizlemeleri, müşteri desteği kapsamındadır.

Azure İzleyici'nin uygulama ölçümlerini toplamak için Prometheus uç noktalarını kazımasına izin vermek için bu adımları izleyin.

  1. İzlenmek istediğiniz uygulama ad alanlarının ağa ekli olduğundan emin olmak için buradaki yönergeleri izleyin.

  2. Uygulama ad alanları için Prometheus uç noktalarını kullanıma sunma.

    osm metrics enable --namespace <namespace1>
    osm metrics enable --namespace <namespace2>
    
  3. Burada sağlanan yönergeleri kullanarak Azure İzleyici uzantısını yükleyin.

  4. Ad alanında Azure İzleyici'nin kube-system ad alanlarınızı izlemesini sağlayan bir Configmap oluşturun. Örneğin, ve <namespace2>izlemek <namespace1> için aşağıdakilerle bir container-azm-ms-osmconfig.yaml oluşturun:

    kind: ConfigMap
    apiVersion: v1
    data:
      schema-version: v1
      config-version: ver1
      osm-metric-collection-configuration: |-
        # OSM metric collection settings
        [osm_metric_collection_configuration]
          [osm_metric_collection_configuration.settings]
              # Namespaces to monitor
              monitor_namespaces = ["<namespace1>", "<namespace2>"]
    metadata:
      name: container-azm-ms-osmconfig
      namespace: kube-system
    
  5. Aşağıdaki kubectl komutunu çalıştırın

    kubectl apply -f container-azm-ms-osmconfig.yaml
    

Ölçümlerin Log Analytics'te gösterilmesi 15 dakika kadar sürebilir. InsightsMetrics tablosunu sorgulamayı deneyebilirsiniz.

InsightsMetrics
| where Name contains "envoy"
| extend t=parse_json(Tags)
| where t.app == "namespace1"
  1. Bu bağlantıyı kullanarak Arc bağlantılı Kubernetes kümenize erişin.
  2. Azure İzleyici'ye gidin ve OSM çalışma kitabına erişmek için Raporlar sekmesine gidin.
  3. Hizmetlerinizin kapsamını daraltmak için zaman aralığı ve ad alanını seçin.

OSM çalışma kitabı

İstekler sekmesi

İstekler sekmesi, OSM'de hizmete hizmet aracılığıyla gönderilen tüm http isteklerinin özetini gösterir.

  • Kılavuzda hizmeti seçerek tüm hizmetleri görüntüleyebilirsiniz.
  • Toplam istekleri, istek hata oranını ve P90 gecikme süresini görüntüleyebilirsiniz.
  • Hedefte detaya gidebilir ve FARKLı yüzdebirlik dilimlerde HTTP hata/başarı kodu, başarı oranı, pod kaynağı kullanımı ve gecikme süreleri eğilimlerini görüntüleyebilirsiniz.

Bağlantılar sekmesi

Bağlantılar sekmesi, Open Service Mesh'teki hizmetleriniz arasındaki tüm bağlantıların özetini gösterir.

  • Giden bağlantılar: Kaynak ve hedef hizmetler arasındaki toplam bağlantı sayısı.
  • Giden etkin bağlantılar: Seçilen zaman aralığındaki kaynak ve hedef arasındaki etkin bağlantıların son sayısı.
  • Giden başarısız bağlantılar: Kaynak ve hedef hizmet arasındaki başarısız bağlantıların toplam sayısı.

OSM'nin belirli bir sürümüne yükseltme

Yükseltmeler sırasında kontrol düzleminde bazı kapalı kalma süreleri olabilir. Veri düzlemi yalnızca CRD yükseltmeleri sırasında etkilenir.

Desteklenen yükseltmeler

OSM uzantısı ikincil ve ana sürümler arasında el ile yükseltilebilir. Ancak, otomatik yükseltme (etkinse) yalnızca ikincil sürümlerde çalışır.

Belirli bir OSM sürümüne el ile yükseltme

Aşağıdaki komut OSM-Arc uzantısını belirli bir sürüme yükseltmektedir:

az k8s-extension update --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --release-train stable --name osm --version x.y.z

Otomatik yükseltmeleri etkinleştirme

Otomatik yükseltmeler varsayılan olarak etkinleştirilmediyse, bunları etkinleştirmek için aşağıdaki komut çalıştırılabilir. geçerli değeri--auto-upgrade-minor-version, Yüklemeyi doğrula adımında az k8s-extension show ayrıntılı olarak açıklandığı gibi komutu çalıştırılarak doğrulanabilir.

az k8s-extension update --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --release-train stable --name osm --auto-upgrade-minor-version true

Azure Arc özellikli OSM'yi kaldırma

Aşağıdaki komutu kullanın:

az k8s-extension delete --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --name osm -y

Uzantı örneğinin silindiğini doğrulayın:

az k8s-extension list --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP

Bu çıkış OSM içermemelidir. Kümenizde başka uzantı yüklü değilse, bu yalnızca boş bir dizidir.

Komutunu kullanarak az k8s-extension OSM uzantısını sildiğinizde ad arc-osm-system alanı kaldırılmaz ve ad alanı içindeki gerçek kaynakların (web kancası yapılandırmasını ve osm denetleyici podunu kapatma gibi) silinmesi yaklaşık 10 dakika sürer.

Not

Arc tarafından yönetilen OSM bileşenlerini kaldırmak için az k8s-extension CLI kullanın. Kaldırmak için OSM CLI kullanılması Arc tarafından desteklenmez ve istenmeyen davranışlara neden olabilir.

Sonraki adımlar