Azure Arc özellikli Kubernetes kümeleri için platform sorunlarını giderme
Bu belgede Azure Arc özellikli Kubernetes bağlantısı, izinleri ve aracılarıyla ilgili sorunlar için sorun giderme kılavuzları sağlanır. Ayrıca Azure Arc özellikli Kubernetes veya Azure Kubernetes Service (AKS) kümelerinde kullanılabilen Azure GitOps için sorun giderme kılavuzları sağlar.
GitOps (Flux v2), Azure İzleyici Container Analizler, Open Service Mesh gibi uzantılarla ilgili sorunları giderme konusunda yardım için bkz. Azure Arc özellikli Kubernetes kümeleri için uzantı sorunlarını giderme.
Azure CLI
veya az k8s-configuration
CLI komutlarını kullanmadan az connectedk8s
önce, Azure CLI'nin doğru Azure aboneliğiyle çalışacak şekilde ayarlandığından emin olun.
az account set --subscription 'subscriptionId'
az account show
Azure Arc aracıları
Azure Arc özellikli Kubernetes için tüm aracılar ad alanında azure-arc
pod olarak dağıtılır. Tüm podlar çalışıyor ve sistem durumu denetimlerini geçiriyor olmalıdır.
İlk olarak Azure Arc Helm Grafiği sürümünü doğrulayın:
$ helm --namespace default status azure-arc
NAME: azure-arc
LAST DEPLOYED: Fri Apr 3 11:13:10 2020
NAMESPACE: default
STATUS: deployed
REVISION: 5
TEST SUITE: None
Helm Grafiği sürümü bulunamaz veya eksikse kümeyi Azure Arc'a yeniden bağlamayı deneyin.
Helm Grafiği sürümü ile mevcutsa STATUS: deployed
kullanarak kubectl
aracıların durumunu denetleyin:
$ kubectl -n azure-arc get deployments,pods
NAME READY UP-TO-DATE AVAILABLE AGE
deployment.apps/cluster-metadata-operator 1/1 1 1 3d19h
deployment.apps/clusterconnect-agent 1/1 1 1 3d19h
deployment.apps/clusteridentityoperator 1/1 1 1 3d19h
deployment.apps/config-agent 1/1 1 1 3d19h
deployment.apps/controller-manager 1/1 1 1 3d19h
deployment.apps/extension-events-collector 1/1 1 1 3d19h
deployment.apps/extension-manager 1/1 1 1 3d19h
deployment.apps/flux-logs-agent 1/1 1 1 3d19h
deployment.apps/kube-aad-proxy 1/1 1 1 3d19h
deployment.apps/metrics-agent 1/1 1 1 3d19h
deployment.apps/resource-sync-agent 1/1 1 1 3d19h
NAME READY STATUS RESTARTS AGE
pod/cluster-metadata-operator-74747b975-9phtz 2/2 Running 0 3d19h
pod/clusterconnect-agent-cf4c7849c-88fmf 3/3 Running 0 3d19h
pod/clusteridentityoperator-79bdfd945f-pt2rv 2/2 Running 0 3d19h
pod/config-agent-67bcb94b7c-d67t8 1/2 Running 0 3d19h
pod/controller-manager-559dd48b64-v6rmk 2/2 Running 0 3d19h
pod/extension-events-collector-85f4fbff69-55zmt 2/2 Running 0 3d19h
pod/extension-manager-7c7668446b-69gps 3/3 Running 0 3d19h
pod/flux-logs-agent-fc7c6c959-vgqvm 1/1 Running 0 3d19h
pod/kube-aad-proxy-84d668c44b-j457m 2/2 Running 0 3d19h
pod/metrics-agent-58fb8554df-5ll67 2/2 Running 0 3d19h
pod/resource-sync-agent-dbf5db848-c9lg8 2/2 Running 0 3d19h
Tüm podlar sütunun READY
altında veya 2/2
altında 3/3
olarak Running
gösterilmelidirSTATUS
. Günlükleri getirin ve veya CrashLoopBackOff
döndüren Error
podları açıklayın. Herhangi bir pod durumunda takılırsa küme düğümlerinde Pending
yeterli kaynak olmayabilir. Kümenizin ölçeğini artırmak, bu podların duruma geçişini Running
sağlayabilir.
Kaynak sağlama başarısız oldu/Hizmet zaman aşımı hatası
Bu hataları görürseniz Azure Arc özellikli Kubernetes hizmetinin durumunu etkileyen etkin olaylar olup olmadığını görmek için Azure durumunu denetleyin. Bu durumda, hizmet olayı çözümlenene kadar bekleyin, ardından mevcut bağlı küme kaynağını sildikten sonra yeniden eklemeyi deneyin. Hizmet olayı yoksa ve ekleme sırasında sorunlarla karşılaşmaya devam ederseniz, sorunu inceleyebilmemiz için bir destek bileti açın.
Fazla kullanım talepleri hatası
Fazla kullanım talebi alırsanız hizmet sorumlunuzun 200'den fazla Microsoft Entra grubunun parçası olmadığından emin olun. Bu durumda, 200'den fazla grubun üyesi olmayan başka bir hizmet sorumlusu oluşturup kullanmanız veya bazı gruplarından özgün hizmet sorumlusunu kaldırıp yeniden denemeniz gerekir.
Giden trafik için uç noktaya https://<region>.obo.arc.azure.com:8084/
izin vermeden bir giden ara sunucu ortamı yapılandırdıysanız da fazla kullanım talebi oluşabilir.
Bunların hiçbiri geçerli değilse sorunu inceleyebilmemiz için bir destek isteği açın.
Kubernetes kümelerini Azure Arc'a bağlarken karşılaşılan sorunlar
Kümeleri Azure Arc'a Bağlan için Azure aboneliğine ve cluster-admin
hedef kümeye erişim gerekir. Kümeye ulaşamıyorsanız veya izinleriniz yetersizse, kümeyi Azure Arc'a bağlama başarısız olur. Bir kümeye bağlanmak için tüm önkoşulları karşıladığınızdan emin olun.
Bahşiş
Bağlantı sorunlarını gidermeye yönelik görsel bir kılavuz için bkz . Arc özellikli Kubernetes kümeleri için bağlantı sorunlarını tanılama.
DNS çözümleme sorunları
Kümenizdeki DNS çözümlemesiyle ilgili sorunları çözme konusunda yardım için DNS Çözümlemesinde Hata Ayıklama'ya gidin.
Giden ağ bağlantısı sorunları
Kümeden giden ağ bağlantısıyla ilgili sorunlar farklı nedenlerle ortaya çıkabilir. İlk olarak tüm ağ gereksinimlerinin karşılandığından emin olun.
Bağlantı sorunlarıyla karşılaşırsanız ve kümeniz giden ara sunucunun arkasındaysa, kümenizi eklerken ara sunucu parametrelerini geçtiğinizden ve ara sunucunun doğru yapılandırıldığından emin olun. Daha fazla bilgi için bkz. giden ara sunucu kullanarak Bağlan.
Aşağıdakine benzer bir hata görebilirsiniz:
An exception has occurred while trying to execute the cluster diagnostic checks in the cluster. Exception: Unable to pull cluster-diagnostic-checks helm chart from the registry 'mcr.microsoft.com/azurearck8s/helmchart/stable/clusterdiagnosticchecks:0.1.2': Error: failed to do request: Head "https://mcr.microsoft.com/v2/azurearck8s/helmchart/stable/clusterdiagnosticchecks/manifests/0.1.2": dial tcp xx.xx.xx.219:443: i/o timeout
Bu hata, uç nokta engellendiğinde https://k8connecthelm.azureedge.net
oluşur. Ağınızın bu uç noktaya bağlantıya izin verdiğinden ve diğer tüm ağ gereksinimlerini karşıladığından emin olun.
MSI sertifikası alınamıyor
MSI sertifikasını alma sorunları genellikle ağ sorunlarından kaynaklanıyor. Tüm ağ gereksinimlerinin karşılandığından emin olun ve yeniden deneyin.
Yetersiz küme izinleri
Sağlanan kubeconfig dosyasının Azure Arc aracılarını yüklemek için yeterli izinleri yoksa, Azure CLI komutu bir hata döndürür: Error: list: failed to list: secrets is forbidden: User "myuser" cannot list resource "secrets" in API group "" at the cluster scope
Bu sorunu çözmek için kümeyi Azure Arc'a bağlayan kullanıcının rolünün cluster-admin
atandığından emin olun.
OpenShift kümesi Azure Arc'a bağlanamadı
OpenShift kümesini Azure Arc'a bağlarken zaman aşımına uysa ve başarısız oluyorsa az connectedk8s connect
:
OpenShift kümesinin sürüm önkoşullarını karşıladığından emin olun: 4.5.41+ veya 4.6.35+ veya 4.7.18+.
komutunu çalıştırmadan
az connectedk8s connnect
önce kümede şu komutu çalıştırın:oc adm policy add-scc-to-user privileged system:serviceaccount:azure-arc:azure-arc-kube-aad-proxy-sa
Yükleme zaman aşımları
Kubernetes kümesinin Azure Arc özellikli Kubernetes'e Bağlan için kümeye Azure Arc aracılarının yüklenmesi gerekir. Küme yavaş bir İnternet bağlantısı üzerinden çalışıyorsa, aracılar için kapsayıcı görüntüsü çekme işlemi Azure CLI zaman aşımlarından daha uzun sürebilir.
Helm zaman aşımı hatası
hatasını Unable to install helm release: Error: UPGRADE Failed: time out waiting for the condition
görebilirsiniz. Bu sorunu gidermek için aşağıdaki adımları deneyin:
Şu komutu çalıştırın:
kubectl get pods -n azure-arc
veya podlarının
config-agent
gösterilip gösterilmediğiniclusterconnect-agent
crashloopbackoff
veya tüm kapsayıcıların çalışıp çalışmadığını denetleyin:NAME READY STATUS RESTARTS AGE cluster-metadata-operator-664bc5f4d-chgkl 2/2 Running 0 4m14s clusterconnect-agent-7cb8b565c7-wklsh 2/3 CrashLoopBackOff 0 1m15s clusteridentityoperator-76d645d8bf-5qx5c 2/2 Running 0 4m15s config-agent-65d5df564f-lffqm 1/2 CrashLoopBackOff 0 1m14s
azure-identity-certificate
yoksa, sistem tarafından atanan yönetilen kimlik yüklenmemiştir.kubectl get secret -n azure-arc -o yaml | grep name:
name: azure-identity-certificate
Bu sorunu çözmek için komutunu çalıştırıp yeniden yükleyerek Arc dağıtımını silmeyi
az connectedk8s delete
deneyin. Sorun devam ederse, ara sunucu ayarlarınızla ilgili bir sorun olabilir. Bu durumda, kümenizi ara sunucu aracılığıyla Arc'a bağlamak için kümenizi ara sunucu aracılığıyla Azure Arc'a bağlamayı deneyin. Ayrıca tüm ağ önkoşullarının karşılandığını doğrulayın.clusterconnect-agent
veconfig-agent
podları çalışıyorsa ancakkube-aad-proxy
pod eksikse pod güvenlik ilkelerinizi denetleyin. Bu pod, yönetici izinlerine sahip olmayan ancak konak yolunu bağlamak için izin gerektiren hizmet hesabını kullanırazure-arc-kube-aad-proxy-sa
.kube-aad-proxy
Pod durumunda takılı kalırsaContainerCreating
kube-aad-proxy sertifikasının kümeye indirilip indirilmediğini denetleyin.kubectl get secret -n azure-arc -o yaml | grep name:
name: kube-aad-proxy-certificate
Sertifika eksikse, dağıtımı silin ve küme için farklı bir ad kullanarak yeniden eklemeyi deneyin. Sorun devam ederse bir destek isteği açın.
CryptoHash modülü hatası
Kubernetes kümelerini Azure Arc platformuna eklemeye çalışırken, yerel ortam (örneğin, istemci konsolunuz) aşağıdaki hata iletisini döndürebilir:
Cannot load native module 'Crypto.Hash._MD5'
Bazen, uzantılar eklenirken ve k8s-configuration
Azure CLI veya Azure PowerShell aracılığıyla bağımlı modüller connectedk8s
başarıyla indirilemez. Bu sorunu çözmek için uzantıları el ile kaldırın ve yerel ortama ekleyin.
Uzantıları kaldırmak için şunu kullanın:
az extension remove --name connectedk8s
az extension remove --name k8s-configuration
Uzantıları eklemek için şunu kullanın:
az extension add --name connectedk8s
az extension add --name k8s-configuration
Küme bağlantısı sorunları
Kümeniz giden ara sunucunun veya güvenlik duvarının arkasındaysa, özellikle Küme Bağlan özelliği için gerekli olan için *.servicebus.windows.net
websocket bağlantılarının etkinleştirildiğini doğrulayın. Ayrıca, küme bağlantısı kullanırken sorun yaşıyorsanız Azure CLI uzantısının connectedk8s
en son sürümünü kullandığınızdan emin olun.
clusterconnect-agent
ve kube-aad-proxy
podları eksikse kümede küme bağlanma özelliği devre dışı bırakılmış olabilir. Bu durumda kümeyle az connectedk8s proxy
oturum oluşturulamaz ve okuma sırasında bir hata görebilirsiniz Cannot connect to the hybrid connection because no agent is connected in the target arc resource.
Bu hatayı düzeltmek için kümenizde küme bağlantısı özelliğini etkinleştirin:
az connectedk8s enable-features --features cluster-connect -n $CLUSTER_NAME -g $RESOURCE_GROUP
Daha fazla bilgi için bkz . Azure Arc özellikli Kubernetes kümelerine güvenli bir şekilde bağlanmak için küme bağlantısını kullanma.
Hizmet sorumlusunu kullanarak özel konumları etkinleştirme
Kümenizi Azure Arc'a bağlarken veya mevcut bir kümede özel konumları etkinleştirirken aşağıdaki uyarıyı görebilirsiniz:
Unable to fetch oid of 'custom-locations' app. Proceeding without enabling the feature. Insufficient privileges to complete the operation.
Azure'da oturum açmak için bir hizmet sorumlusu kullandığınızda ve hizmet sorumlusu gerekli izinlere sahip olmadığında bu uyarı oluşur. Bu hatayı önlemek için şu adımları izleyin:
Kullanıcı hesabınızı kullanarak Azure CLI'da oturum açın. Azure Arc hizmeti tarafından kullanılan Microsoft Entra uygulamasının Nesne Kimliğini alın:
az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query objectId -o tsv
Hizmet sorumlusunu kullanarak Azure CLI'da oturum açın. Kümede
<objectId>
özel konumları etkinleştirmek için önceki adımdaki değeri kullanın:- Kümeyi Arc'a bağlarken özel konumları etkinleştirmek için
az connectedk8s connect -n <cluster-name> -g <resource-group-name> --custom-locations-oid <objectId>
- Mevcut Azure Arc özellikli Kubernetes kümesinde özel konumları etkinleştirmek için
az connectedk8s enable-features -n <cluster-name> -g <resource-group-name> --custom-locations-oid <objectId> --features cluster-connect custom-locations
- Kümeyi Arc'a bağlarken özel konumları etkinleştirmek için
Sonraki adımlar
- Bağlantı sorunlarını tanılama hakkında görsel bir kılavuz alın.
- Küme uzantılarıyla ilgili sorun giderme ipuçlarını görüntüleyin.