Kayıt defteri performansı sorunlarını giderme

Bu makale, Azure kapsayıcı kayıt defterinin performansıyla karşılaşabilirsiniz sorunları gidermenize yardımcı olur.

Belirtiler

Şunlardan birini veya daha fazlasını içerebilir:

  • Docker CLI ile görüntü çekme veya itme beklenenden uzun sürer
  • Görüntülerin Azure Kubernetes Service gibi bir hizmete dağıtımı beklenenden uzun sürer
  • Beklenen süre içinde çok fazla sayıda eşzamanlı çekme veya anında çekme işlemini tamamlayamayabilirsiniz
  • Aşağıdakine benzer bir HTTP 429 hatası görüyorsunuz: Too many requests
  • Coğrafi olarak çoğaltılmış bir kayıt defterindeki çekme veya anında yükleme işlemleri beklenenden uzun sürüyor veya anında yükleme işlemi hatayla başarısız Error writing blob oluyor veya Error writing manifest

Nedenler

  • Ağ bağlantı hızınız kayıt defteri işlemlerini yavaşlatıyor olabilir - çözüm
  • Görüntü katmanı sıkıştırması veya ayıklaması istemcide yavaş olabilir - çözüm
  • Kayıt defteri hizmet katmanında veya ortamında yapılandırılmış bir sınıra ulaşıyor - çözüm
  • Coğrafi olarak çoğaltılmış kayıt defterinizin yakın bölgelerde çoğaltmaları var - çözüm
  • Coğrafi olarak uzak bir kayıt defteri çoğaltmasını çekme - çözüm

Sorununuzu burada çözmezse, diğer seçenekler için gelişmiş sorun giderme ve Sonraki adımlar'a bakın.

Olası çözümler

Beklenen ağ hızını denetleme

İnternet'e yükleme ve indirme hızınızı kontrol edin veya kayıt defteri görüntü katmanlarını barındıran Azure blob depolamadan karşıya yükleme ve indirmeyi test etmek için AzureSpeed gibi bir araç kullanın.

Görüntü boyutunu, kayıt defteri hizmet katmanınız için desteklenen en büyük boyuta ve desteklenen indirme veya karşıya yükleme bant genişliğine göre kontrol edin. Kayıt defteriniz Temel veya Standart katmanında ise, performansı artırmak için yükseltmeyi göz önünde bulundurabilirsiniz.

Diğer hizmetlere görüntü dağıtımı için kayıt defterinin ve hedefin bulunduğu bölgeleri kontrol edin. Performansı artırmak için kayıt defterini ve dağıtım hedefini aynı veya ağa yakın bölgelerde bulmayı göz önünde bulundurabilirsiniz.

İlgili bağlantılar:

İstemci donanımlarını denetleme

Docker istemcisinde disk türü ve CPU, çekme veya itme işlemlerinin bir parçası olarak istemcideki görüntü katmanlarını ayıklama veya sıkıştırma hızını etkileyebilir. Örneğin, sabit disk sürücüsü üzerinde katman ayıklama katı hal diskten daha uzun sürer. Azure kapsayıcı kayıt defterinize ve azure kapsayıcı kayıt defteri gibi genel bir kayıt defterinden karşılaştırılabilir görüntülere yönelik çekme Docker Hub.

Yapılandırılmış sınırları gözden geçirme

Kayıt defterinize eşzamanlı olarak birden fazla veya çok katmanlı görüntü çekiyorsanız, kayıt defteri hizmet katmanı için desteklenen ReadOps ve WriteOps sınırlarını gözden geçirebilirsiniz. Kayıt defteriniz Temel veya Standart katmanında ise, sınırları artırmak için yükseltmeyi göz önünde bulundurarak yükseltin. Ayrıca ağ sağlayıcınıza çok sayıda eşzamanlı işlemde ortaya çıkabilir ağ azaltma hakkında da bilgi edinebilirsiniz.

İstemcide yapılan her bir anında yükleme veya çekme işlemi için maksimum eşzamanlı karşıya yükleme veya indirme sayısı için Docker daemon yapılandırmanızı gözden geçirme. Gerekirse daha yüksek sınırları yapılandırma.

Her görüntü katmanı ayrı bir kayıt defteri okuma veya yazma işlemi gerektirdiği için, görüntülerinizin katman sayısını kontrol edin. Görüntü katmanı sayısını azaltmak için stratejileri göz önünde bulundurabilirsiniz.

İlgili bağlantılar:

Coğrafi olarak çoğaltılmış kayıt defterini yapılandırma

Bir görüntüyü coğrafi olarak çoğaltılmış bir kayıt defterine iten Bir Docker istemcisi tüm görüntü katmanlarını ve bildirimini tek bir çoğaltılmış bölgeye itmeyebilirsiniz. Bu durum, kayıt Azure Traffic Manager ağ en yakın çoğaltılan kayıt defterine yönlendirilmesi nedeniyle oluşabilir. Kayıt defterinde yakınlardaki iki çoğaltma bölgesi varsa görüntü katmanları ve bildirim iki siteye dağıtılamayabilir ve bildirim doğrulandıktan sonra anında yükleme işlemi başarısız olur.

Görüntü itme işlemleri için DNS çözümlemesini en yakın çoğaltmaya iyileştirmek için, anında yükleme işlemlerinin kaynağıyla aynı Azure bölgelerinde veya Azure dışında çalışırken en yakın bölgede coğrafi olarak çoğaltılmış bir kayıt defteri yapılandırabilirsiniz.

Coğrafi olarak çoğaltılmış kayıt defteriyle işlemlerin sorunlarını gidermek için, bir veya daha fazla çoğaltmaya Traffic Manager geçici olarak devre dışı abilirsiniz.

İlgili bağlantılar:

Coğrafi olarak çoğaltılmış kayıt defteri için DNS'yi yapılandırma

Coğrafi olarak çoğaltılmış bir kayıt defterinden çekme işlemleri yavaş görünüyorsa, istemcideki DNS yapılandırması coğrafi olarak uzak bir DNS sunucusuna çözümlenmiş olabilir. Bu durumda, Traffic Manager DNS sunucusuna yakın ancak istemciden uzak bir çoğaltmaya yönlendirme olabilir. Kayıt defteri isteklerini yönlendiren çoğaltmayı belirlemek için veya nslookup dig (Linux üzerinde) Traffic Manager bir araç çalıştırın. Örnek:

nslookup myregistry.azurecr.io

Olası bir çözüm, daha yakın bir DNS sunucusu yapılandırmaktır.

İlgili bağlantılar:

Gelişmiş sorun giderme

Kayıt defteri kaynaklarına izin vermek için izinlerinizi kayıt defteri ortamının durumunu denetleyin. Hatalar bildiriliyorsa, olası çözümler için hata başvurularını gözden geçirin.

Kaynak günlüklerinin toplanması kayıt defterinde etkinse ContainterRegistryRepositoryEvents günlüğünü gözden geçirebilirsiniz. Bu günlük, anında çekme veya çekme olayları gibi işlemler için bilgileri depolar. Depo düzeyinde işlem hataları için günlüğü sorgular.

İlgili bağlantılar:

Sonraki adımlar

Sorununuzu burada çözmezse aşağıdaki seçeneklere bakın.