Aracılığıyla paylaş


Başarısız durumdaki kümeler veya düğümler Azure Kubernetes Service sorunlarını giderme

Bu makalede, başarısız duruma giren bir Microsoft Azure Kubernetes Service (AKS) kümesi veya düğümüyle ilgili sorunları giderme işlemi açıklanır.

Yaygın nedenler

Başarısız bir kümenin veya düğüm havuzunun yaygın nedenleri şunlardır:

Neden Başvuru
Özel Betik Uzantısı (CSE) sanal makinesi (VM) uzantısı sağlama hatası CSE hatalarının neden olduğu düğüm hazır değil hatalarıyla ilgili sorunları giderme
Anahtar Azure kaynakları kullanılamıyor
Bölgesel/bölgesel kapasite olmadığından VM ayırma hatası
Çekirdek kotası aşıldığından vm ayırma hatası Kota değeri artırıldı hatası
Müşteri tarafından uygulanan kısıtlamalar
İş yükü sorunları

Küme/düğümün başarısız olmasına neden olan yaygın hatalarda temel sorun giderme

Aşağıdaki tabloda, küme veya düğümün başarısız duruma girmesine neden olabilecek bazı yaygın hatalar, açıklamaları ve bu hataları çözmek için temel sorun giderme yöntemleri özetlenmiştir.

Error Açıklama Sorun giderme yöntemi
OutboundConnFailVMExtensionError Bu hata, giden bağlantı olmaması nedeniyle VM uzantısının yüklenemediği veya güncelleştirilemediği anlamına geliyor. VM veya VM ölçek kümesinin ağ güvenlik grubu (NSG) kurallarını ve güvenlik duvarı ayarlarını denetleyin. VM veya VM ölçek kümesinin şu uç noktalara erişebildiğinden emin olun: https://aka.ms/aks/outbound, https://aka.ms/aks/ssh, https://aka.ms/aks/agentve https://aka.ms/aks/containerinsights.
Boşaltma hatası Bu hata, yükseltme işleminden önce düğümün boşaltılamadığını gösterir. kubectl komutlarını kullanarak düğümdeki pod durumunu ve olaylarını denetleyin: kubectl get pods --all-namespaces -o wide ve kubectl describe pod <pod-name> -n <namespace>. Sonlandırılmış veya bilinmeyen bir durumda ya da olaylardaki hata veya uyarılarla takılmış podları arayın. Podları zorla silmeniz veya düğümdeki kubelet hizmetini yeniden başlatmanız gerekebilir.
SubscriptionNotRegistered hatası Bu hata, aboneliğin AKS kaynak sağlayıcısını kullanacak şekilde kaydedilmediğini gösterir. komutunu kullanarak az provider register --namespace Microsoft.ContainerService aboneliği kaydedin.
RequestDisallowedByPolicy hatası Bu hata, işlemin aboneliğe veya kaynak grubuna uygulanan bir ilke tarafından engellendiğini gösterir. İlke ayrıntılarını ve ilke atama kapsamlarını gözden geçirin. İşleme izin vermek için ilkeyi değiştirmeniz veya dışlamanız gerekebilir.
QuotaExceeded hatası Bu hata, işlemin bir kaynak türü veya bölge için kota sınırını aştığını gösterir. Azure portal, Azure CLI veya Azure PowerShell kullanarak kaynak türü veya bölge için geçerli kota kullanımını ve kota sınırını denetleyin. Kullanılmayan bazı kaynakları silmeniz veya kota artışı istemeniz gerekebilir.
PublicIPCountLimitReached hatası Bu hata, işlemin bir abonelikte veya bölgede oluşturulabilecek genel IP adresi sayısı üst sınırına ulaştığını gösterir. Azure portal, Azure CLI veya Azure PowerShell kullanarak abonelik veya bölge için geçerli genel IP adresi kullanımını ve sınırını denetleyin. Kullanılmayan bazı genel IP adreslerini silmeniz veya genel IP adresi sınırında artış istemeniz gerekebilir.
OverconstrainedAllocationRequest hatası Bu hata, işlemin istenen VM boyutunu bir bölgede ayıradığını gösterir. Azure portal, Azure CLI veya Azure PowerShell kullanarak bölgedeki VM boyutunun kullanılabilirliğini denetleyin. Farklı bir VM boyutu veya farklı bir bölge seçmeniz gerekebilir.
ReadOnlyDisabledSubscription hatası Bu hata, aboneliğin şu anda devre dışı bırakıldığını ve salt okunur olarak ayarlandığını gösterir. Faturalama sorunları, süresi dolan kredi veya ilke ihlalleri nedeniyle abonelik askıya alınmış olabileceğinden abonelik izinlerini gözden geçirin ve ayarlayın.

Küme/düğümün başarısız olmasına neden olan diğer olası sorunlarda temel sorun giderme

Bu tabloda, küme veya düğümün başarısız duruma girmesine neden olabilecek diğer olası sorunlar, bunların açıklamaları ve bu sorunları düzeltmeye yönelik çözümler açıklanmaktadır.

Sorun Açıklama Çözüm
Alt ağ boyutu çok küçük Alt ağda gerekli sayıda düğüm için yeterli alan olmadığından işlem kümeyi oluşturamıyor veya güncelleştiremiyor. düğüm havuzunu silin ve Azure portal, Azure CLI veya Azure PowerShell kullanarak daha büyük bir alt ağ boyutuna sahip yeni bir havuz oluşturun.
Sanal ağ engellendi Güvenlik duvarı veya özel Etki Alanı Adı Sistemi (DNS) ayarı düğümlerden giden bağlantıları engellediğinden işlem küme API sunucusu veya Kubernetes denetim düzlemi ile birleştiremiyor. Düğümün güvenlik duvarı üzerindeki trafiğine izin verin ve Azure portal, Azure CLI veya Azure PowerShell kullanarak Azure'a DNS çözümlemesini ayarlayın.
PDB sorunları PDB bir veya daha fazla podun kaldırılmasını durdurduğu için işlem kümeyi güncelleştiremiyor. PDB, belirli bir süre boyunca kaç pod'un gönüllü olarak sonlandırılabileceğini sınırlayan bir kaynaktır. PDB'yi geçici olarak kaldırın, kümeyi uzlaştırın ve kubectl komut satırı aracını kullanarak PDB'yi yeniden ekleyin.
Altyapı sorunları Azure'daki kaynakları yöneten Azure Resource Manager (ARM) hizmetiyle ilgili bir iç sorun nedeniyle işlem kümeyi güncelleştiremiyor. Azure CLI veya Azure PowerShell kullanarak her düğüm havuzu için bir aracı havuzu mutabakatı ve yönetilen küme için bir mutabakat yapın.
API sunucusu hataları Bir kesinti veya hata nedeniyle işlem küme API sunucusuna veya Kubernetes denetim düzlemine ulaşamıyor. Bunu AKS destek ekibine bildirin ve ilgili günlükleri ve tanılama bilgilerini sağlayın. Azure portal, Azure CLI veya Azure PowerShell kullanarak günlükleri ve tanılama bilgilerini alabilirsiniz.

Not

  • Önceki tabloda bahsedilen işlem, müşteri tarafından tetiklenen herhangi bir güncelleştirme (PUT) işlemini ifade eder.
  • Kubernetes'te bir denetleyici içinde bir bileşen vardır. Küme durumu ve Kubelet için kapsayıcıları çalıştırma veya bulut sağlayıcısı için yük dengeleyiciler gibi olası dış durumlar da dahil olmak üzere dünyanın gerçek durumunu güvence altına alır. Nesnede belirtilen istenen durumla hizalanır. Bu hizalama işlemi denetleyicinin önemli bir işlevidir. AKS için bu bileşen, AKS kümesinin durumunun istenen yapılandırmayla hizalanmasını sağlar. El ile tetikleme için komutunu çalıştırın az resource update --ids <AKS cluster id>. KOMUTUNU çalıştırarak az aks show -n <cluster name> -g <cluster resource group> -o json --query idAKS küme kimliğini alabilirsiniz. Gerçek ve istenen durumlar arasında farklar varsa, bu tutarsızlıkları düzeltmek için gerekli eylemleri gerçekleştirin.

Sağlama Durumu Denetimi

Küme durumunu denetlemek için Sağlama Durumu Denetimi'ni seçin. Ardından kümenin ve aracı havuzunun sağlama durumu gösterilir.

'Sağlama Durumu Denetimi' seçeneğini gösteren ekran görüntüsü.

Senaryo 1: Küme başarısız durumda

Bu sorunu çözmek için hataya neden olan işlemi alın ve hatayı çözün. Başarısız bir kümeye neden olabilecek iki yaygın işlem hatası şunlardır:

  • Küme oluşturulamadı
  • Küme yükseltmesi başarısız oldu

Yakın zamanda oluşturulan veya yükseltilen bir küme başarısız durumdaysa, hatayı gidermek için aşağıdaki yöntemleri kullanın:

Azure portal kullanarak başarısız bir kümenin etkinlik günlüğünü görüntüleme

başarısız bir kümenin etkinlik günlüklerini Azure portal görüntülemek için şu adımları izleyin:

  1. Azure portal Kaynak grupları sayfasına gidin ve kümenizi içeren kaynak grubunu seçin.

  2. Genel Bakış sayfasında, kaynak listesinden küme adını seçin.

  3. Küme sayfasında, soldaki menüden Etkinlik günlüğü'nü seçin.

  4. Etkinlik günlüğü sayfasında, olayları Durum, Zaman Aralığı, Tarafından başlatılan Olay ve Olay kategorisine göre filtreleyebilirsiniz. Örneğin, durum açılan listesinden Başarısız'ı seçerek yalnızca başarısız olayları görebilirsiniz.

    'Etkinlik günlüğü' sayfasında olayların nasıl filtrelendiğini gösteren ekran görüntüsü.

  5. Bir olayın ayrıntılarını denetlemek için listeden olay adını seçin. Olay özeti, özellikler ve JSON verilerini içeren yeni bir bölme açılır. JSON verilerini dosya olarak da indirebilirsiniz.

  6. Olayla ilişkili hata kodunu ve iletiyi denetlemek için, olay özetindeki Durum bölümüne kadar aşağı kaydırın. Hata bilgilerini özellikler ve JSON verileri bölümlerinde de bulabilirsiniz.

Azure CLI kullanarak başarısız bir kümenin etkinlik günlüğünü görüntüleme

Başarısız bir kümenin etkinlik günlüğünü görüntülemek için Azure CLI kullanmayı tercih ediyorsanız şu adımları izleyin:

  1. Makinenize Azure CLI yükleyin ve Azure hesabınızla oturum açın.

  2. komutunu kullanarak az group list aboneliğinizdeki kaynak gruplarını listeleyin ve kümenizi içeren kaynak grubunun adını bulun.

  3. parametresiyle --resource-group komutunu kullanarak az resource list kaynak grubundaki kaynakları listeleyin ve kümenin adını bulun.

  4. ve --resource parametreleriyle komutunu kullanarak kümenin az monitor activity-log list--resource-group etkinlik günlüğünü listeleyin. Olayları farklı ölçütlere göre filtrelemek için , --start-time--end-time, , --callerve --filter parametrelerini de kullanabilirsiniz--status. Örneğin, yalnızca başarısız olayları görmek için kullanabilirsiniz --status Failed .

  5. , ve --event-id parametreleriyle --resource--resource-groupkomutunu kullanarak az monitor activity-log show belirli bir olayın ayrıntılarını gösterin. Olay kimliğini önceki komutun çıktısından bulabilirsiniz. Çıkış olay özetini, özellikleri ve JSON verilerini içerir. Çıkış biçimini değiştirmek için parametresini de kullanabilirsiniz --output .

  6. Olayla ilişkili hata kodunu ve iletiyi görmek için komut çıkışında alanını arayın statusMessage . Hata bilgilerini özellikler ve JSON verileri bölümlerinde de bulabilirsiniz.

    JSON verilerini gösteren ekran görüntüsü.

Başarısız bir küme için AKS Tanılama ve Sorunları Çözme özelliğini kullanma

Azure portal AKS küme kaynağınıza gidin ve sol menüden Sorunları tanıla ve çöz'e tıklayın. Tanılama denetimlerini çalıştırmak ve önerilen çözümleri almak için seçebileceğiniz kategorilerin ve senaryoların listesini görürsünüz.

Azure CLI'de, küme düğümlerinizden tanılama verileri toplamak için ve --resource-group parametreleriyle komutunu --name kullanınaz aks collect. Verilerin karşıya yüklendiği bir Azure Depolama hesabı belirtmek için ve --sas-token parametrelerini de kullanabilirsiniz--storage-account. Çıktı, sonuçları ve önerilen eylemleri görüntüleyebileceğiniz Sorunları Tanıla ve Çöz dikey penceresinin bağlantısını içerir.

Sorunları Tanıla ve Çöz dikey penceresinde, kategori olarak Küme Sorunları'nı seçebilirsiniz. Herhangi bir sorun algılanırsa, bunları düzeltmek için izleyebileceğiniz olası çözümlerin bir listesini görürsünüz.

'Sorunları Tanıla ve Çöz' portalında olası çözümleri gösteren ekran görüntüsü.

Senaryo 2: Düğüm başarısız durumda

Nadir durumlarda, bir Azure Disk ayırma işlemi kısmen başarısız olabilir ve bu da düğüm VM'sini başarısız durumda bırakır.

Bu sorunu çözmek için aşağıdaki yöntemlerden birini kullanarak VM durumunu el ile güncelleştirin:

  • Kullanılabilirlik kümesini temel alan bir küme için aşağıdaki az vm update komutunu çalıştırın:

    az vm update --resource-group <resource-group-name> --name <vm-name>
    
  • VM ölçek kümesini temel alan bir küme için aşağıdaki az vmss update-instances komutunu çalıştırın:

    az vmss update-instances --resource-group <resource-group-name> --name <scale-set-name> --instance-id <vm-or-scale-set-id>
    

Senaryo 3: Düğüm havuzu başarısız durumda

Düğüm havuzunu destekleyen VM ölçek kümesi veya kullanılabilirlik kümesi sağlama, ölçeklendirme veya güncelleştirme sırasında bir hatayla karşılaştığında bu sorun oluşabilir. Bu sorun yetersiz kapasite, kota sınırları, ağ sorunları, ilke ihlalleri, kaynak kilitleri veya VM'nin düzgün ayrılmasını veya yapılandırılmasını engelleyen diğer faktörlerden kaynaklanabilir.

Bu sorunu gidermek için şu adımları izleyin:

  1. komutunu kullanarak az aks nodepool show düğüm havuzunun durumunu denetleyin. Sağlama durumu ise Failed, çıkışta hata iletisini ve kodu görebilirsiniz.
  2. veya az vm availability-set show komutunu kullanarak VM ölçek kümesinin veya kullanılabilirlik kümesinin az vmss show durumunu denetleyin. Sağlama durumu ise Failed, çıkışta hata iletisini ve kodu görebilirsiniz.
  3. veya az vm list komutunu kullanarak düğüm havuzundaki tek tek VM'nin az vmss list-instances durumunu denetleyin. Herhangi bir Failed VM veya Unhealthy durumundaysa, çıkışta hata iletisini ve kodu görebilirsiniz.
  4. Hatanın nedenini gösteren herhangi bir olay veya uyarı olup olmadığını görmek için VM ölçek kümesinin veya kullanılabilirlik kümesinin etkinlik günlüğünü ve tanılama ayarını denetleyin. Etkinlik günlüğüne ve tanılama ayarına erişmek için Azure portal, Azure CLI veya Azure İzleyici API'sini kullanabilirsiniz.
  5. Düğüm havuzunun dağıtıldığı bölge ve aboneliğin kotasını ve kapasitesini denetleyin. Kotayı ve kapasiteyi az vm list-usage denetlemek için komutunu veya Azure portal kullanabilirsiniz. Kota veya kapasite sınırına ulaşılırsa, bir artış isteyebilir veya kullanılmayan bazı kaynakları silebilirsiniz.
  6. Düğüm havuzunun ilke ve rol atamalarını denetleyin. İlke tanımlarınıaz policy, atamaları, uyumluluğu ve muafiyetleri denetlemek için ve az role komutlarını veya Azure portal kullanabilirsiniz. Ayrıca komutunu veya Azure portal kullanarak az role assignment düğüm havuzunun rol atamalarını ve izinlerini de de de kontrol edebilirsiniz.
  7. Düğüm havuzunun kaynak kilitlerini denetleyin. Kilit düzeyini, kapsamı ve notları denetlemek için komutunu veya Azure portal kullanabilirsinizaz lock. Gerekirse kilidi silebilir veya güncelleştirebilirsiniz.

Diğer günlük ve tanılama araçları

Önceki sorun giderme yöntemleri sorununuzu çözmezse, daha fazla bilgi toplamak ve kök nedeni belirlemek için aşağıdaki günlük ve tanılama araçlarını kullanabilirsiniz:

  • Kapsayıcılar için Azure İzleyici:

    Bu hizmet AKS kümelerinden ve düğümlerden ölçümleri ve günlükleri toplar ve analiz eder. Kapsayıcılar için Azure İzleyici küme ve düğüm durumunu, performansını ve kullanılabilirliğini izleyebilir. Kapsayıcı günlüklerini, kubelet günlüklerini ve düğüm önyükleme tanılama günlüklerini görüntülemek için de kullanabilirsiniz.

  • AKS Periskop

    Bu araç bir AKS kümesinden düğüm ve pod günlüklerini, ağ bilgilerini ve küme yapılandırmasını toplar ve bunları bir Azure depolama hesabına yükler. Bu araç DNS çözümlemesi, ağ bağlantısı ve düğüm durumu gibi yaygın küme sorunlarını gidermenize yardımcı olabilir. Ayrıca, toplanan günlüklerin eklendiği bir destek isteği oluşturmak için de kullanabilirsiniz.

  • AKS Tanılama

    Bu araç AKS kümeleri ve düğümler üzerinde bir dizi denetim çalıştırır ve yaygın sorunlar için öneriler ve düzeltme adımları sağlar. Bu araç küme oluşturma, yükseltme, ölçeklendirme, ağ, depolama ve güvenlikle ilgili sorunları gidermenize yardımcı olabilir. Tanılama sonuçlarının eklendiği bir destek isteği oluşturmak için de kullanabilirsiniz.

Yardım için bize ulaşın

Sorularınız veya yardıma ihtiyacınız varsa bir destek isteği oluşturun veya Azure topluluk desteği isteyin. Ürün geri bildirimini Azure geri bildirim topluluğuna da gönderebilirsiniz.