Aracılığıyla paylaş


Istio hizmet ağı eklentisi küçük düzeltme yükseltme sorunlarını giderme

Bu makalede, Microsoft Azure Kubernetes Service 'de (AKS) Istio hizmet ağı eklentisi için küçük düzeltme yükseltme ve geri alma işlemlerinde sorun giderme senaryoları ve kısıtlamaları ele alınmaktadır.

Not

Istio, kanarya yükseltme işlemini uygulamak ve sürümler arasında ayrım yapmak için "düzeltmeler" terimini kullanır. Her düzeltme ataması ( x-y olarak yazılır), major.minor sürüm gösterimine (x) karşılık gelir.y). Kontrol düzlemi düzeltmenizi denetleyebilirsiniz, ancak düzeltme bandı içinde belirli bir düzeltme eki sürümünü denetleyemezsiniz.

Önkoşullar

Sorun giderme matrisi

Aşağıdaki tabloda çeşitli sorunlar ve bu sorunların farklı senaryoları ve çözümleri listelemektedir.

Senaryo Sorun Çözüm
Veri düzlemi iş yükleri ağdan bırakılır. Bir yükseltmeyi tamamlamadan veya geri almadan önce veri düzlemi ve kontrol düzlemi düzeltmeleri karşılık gelmedi.

Şu adımları izleyin:

  1. Yükseltme tamamlandıktan veya geri aldıktan sonra var olması beklenen düzeltmeyi belirterek iş yüklerini içeren ad alanlarını yeniden etiketle. Bunu yapmak için kubectl label komutunu çalıştırın:

    kubectl label namespace default istio.io/rev=asm-x-y --overwrite
  2. İlgili iş yükü dağıtımlarını yeniden başlatarak doğru düzeltmenin sepet reenjeksiyonunu tetikleyin. Bunu yapmak için kubectl rollout restart komutunu çalıştırın:

    kubectl rollout restart deployment <deployment name>
  3. Sepet görüntülerinin mevcut olduğunu doğrulayın. Bunu yapmak için kubectl get komutunu çalıştırın:

    kubectl get pods --namespace <namespace> --output yaml | grep mcr.microsoft.com/oss/istio/proxyv2:
Kontrol düzlemi podları bekleme durumunda. Podların kapasitesi yok. kubectl describe komutunu çalıştırarak podların durumunu doğrulayın. Sorun kapasiteyse, kümenizin ölçeğini artırarak başka bir düğüm ekleyebilirsiniz. Daha fazla bilgi için bkz. Azure Kubernetes Service (AKS) kümesindeki düğüm sayısını el ile ölçeklendirme.
az aks mesh get-upgrades komutu kullanılabilir yükseltme döndürmez. En yeni Istio düzeltmesi geçerli AKS kümesi sürümüyle uyumsuz olabilir. Daha yeni Istio düzeltmelerinin mevcut olup olmadığını keşfetmek için az aks mesh get-revisions komutunu kullanabilirsiniz. Çıkış, her Istio düzeltmesi için uyumlu küme sürümlerinin listesini içerir. Bu nedenle, küme yükseltmesinin gerekli olup olmadığını belirleyebilirsiniz.

Not

İstenmeyen davranışlardan ve bozuk işlevlerden kaçınmak ve güvenlik açıklarına yönelik güncelleştirmeler aldığınızdan emin olmak için desteklenen ve güncel bir AKS sürümüne ve Istio eklenti düzeltmesine yükseltmenizi kesinlikle öneririz. Eklenti düzeltmesinin, verilen AKS kümesi için desteklenen Kubernetes sürüm aralığında da olması gerektiğini unutmayın. Istio yükseltme makalesinin Küçük düzeltme yükseltme bölümünde vurgulandığı gibi, kullanılabilir eklenti düzeltmeleri, yükseltmeler ve uyumluluk bilgileri hakkında bilgi edinmek için ve az aks mesh get-upgrades komutlarını çalıştırabilirsinizaz aks mesh get-revisions.

Kısıtlama -ları

  • Eski bir düzeltmeye (kanarya geri alma işleminin dışında) düşürmeye izin verilmez.

  • Yalnızca AKS artık hem geçerli düzeltmeyi hem de sonraki yükseltme düzeltmesini desteklemediyse, bir düzeltmeden bağımsız düzeltmeye atlanmaya izin verilir. Bu noktada, kullanabileceğiniz tek yükseltme desteklenen en düşük düzeltmedir.

  • Istio sidecar.istio.io/inject etiketi, Istio eklentisi için sepet ekleme özelliğini etkinleştirmez. Kanarya yükseltmesi istio.io/rev sırasında ad alanlarınızı etiketleyip yeniden etiketlerken etiketi kullanmanız gerekir.

  • Etiketleme, dağıtım başına düzeyi yerine ad alanı düzeyinde gerçekleşmelidir. Podları tek tek devredebilmek istiyorsanız, pod etiketleme kullanmak yerine tek tek dağıtımları yeniden başlatmayı seçebilirsiniz.

  • Istio eklentisi Shared MeshConfig kullanıyorsanız, kanarya yükseltmesi yapmadan önce MeshConfig ayarlarını yeni ConfigMap'e kopyalamanız veya aktarmanız gerekir. Daha fazla bilgi için bkz . Mesh yapılandırması ve yükseltmeleri.

  • Istio eklentisi, düzeltme başına Istio giriş ağ geçidi podlarını ve dağıtımlarını dağıtır. Kanarya yükseltmesi yapıyorsanız ve kümenizde iki denetim düzlemi düzeltmesi yüklüyse, her iki düzeltmede birden çok giriş ağ geçidi podunda sorun gidermeniz gerekebilir.

Başvurular

Üçüncü taraf bilgileri hakkında yasal uyarı

Bu makalede adı geçen üçüncü taraf ürünleri Microsoft'tan bağımsız şirketler tarafından üretilmektedir. Microsoft, bu ürünlerin performansı veya güvenilirliği ile ilgili örtük veya başka türlü hiçbir garanti vermez.

Üçüncü tarafla iletişim sorumluluk reddi

Microsoft, bu konu hakkında ek bilgi bulmanıza yardımcı olmak için üçüncü taraf iletişim bilgileri sağlar. Bu iletişim bilgileri önceden haber verilmeksizin değiştirilebilir. Microsoft, üçüncü taraf iletişim bilgilerinin doğruluğunu garanti etmez.

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.