Kapsayıcı kayıt defteri bağlantısını doğrulama
Bu makale, bir serinin bir parçasıdır. Genel bakış ile başlayın.
Azure Kubernetes Service (AKS) kümenizde kapsayıcılı uygulamaları başarıyla dağıtmak için, küme ile kapsayıcı kayıt defteri arasındaki bağlantıyı doğrulamak önemlidir. Bu adım, çalışan düğümlerinizin gerekli kapsayıcı görüntülerini kayıt defterinden çekmek için gerekli izinlere sahip olmasını garanti eder.
Belirtileri tanımlama
Aracı düğümünde çalışan kubelet bir pod için kapsayıcılar oluşturduğunda, hata nedeniyle ImagePullBackOff
bir veya daha fazla kapsayıcı bekleme durumuna geçebilir. ImagePullBackoff , Kubernetes'te ortak veya özel bir kayıt defterinden gerekli kapsayıcı görüntüsünün çekilmesinin başarısız olduğunu gösteren yaygın bir hata iletisidir. Ağ bağlantısı sorunları, yanlış görüntü adı veya etiketi, yetersiz izinler veya eksik kimlik bilgileri gibi çeşitli faktörler bu hataya neden olabilir.
Durumun BackOff
bölümü, Kubernetes'in görüntüyü sürekli olarak çekmeyi denediğini ve sonraki her deneme arasında artan bir gecikme olduğunu gösterir. Gecikme, Kubernetes'te genellikle 300 saniye (5 dakika) olarak ayarlanan önceden belirlenmiş bir sınıra ulaşana kadar kademeli olarak artar.
Kayıt defterini ve görüntü adını doğruluk açısından bir kez daha denetlemek önemlidir. Ayrıca AKS kümenizin uygun kapsayıcı kayıt defterinden görüntü çekmek için gerekli izinlere sahip olduğundan emin olun.
Rol atamaları
Var olan bir AKS kümesine kapsayıcı kayıt defteri eklediğinizde, AcrPull rolü otomatik olarak kayıt defteri üzerinden AKS kümenizdeki aracı havuzlarıyla ilişkili Microsoft Entra yönetilen kimliğine atanır. Daha fazla bilgi için bkz . AKS'den Container Registry ile kimlik doğrulama.
Kubernetes kümesinin kubelet yönetilen kimliğini ve geçerli rol atamalarını almak için aşağıdaki komutu çalıştırın:
# Get the kubelet managed identity.
ASSIGNEE=$(az aks show -g $RESOURCE_GROUP -n $NAME --query identityProfile.kubeletidentity.clientId -o tsv)
az role assignment list --assignee $ASSIGNEE --all -o table
Rolü kubelet yönetilen kimliğine atamak AcrPull
için aşağıdaki komutu çalıştırın:
AZURE_CONTAINER_REGISTRY_ID=$(az acr show --name <container-registry-name> --query id --output tsv)
az role assignment create --assignee $ASSIGNEE --scope $AZURE_CONTAINER_REGISTRY_ID --role acrpull
Container Registry sorunlarını giderme
Aşağıdaki bölümlerde azure kapsayıcı kayıt defterinde ağ, oturum açma veya performans sorunlarıyla karşılaşırsanız başvurabileceğiniz kılavuzlar sağlanır.
Ağ sorunlarını giderme
Sanal ağdaki veya güvenlik duvarı ya da ara sunucunun arkasındaki Azure kapsayıcı kayıt defterine erişmeyle ilgili sorunlarla karşılaşırsanız aşağıdaki çözümleri göz önünde bulundurun:
- İstemci güvenlik duvarı erişimini yapılandırın.
- Kayıt defterine genel erişimi yapılandırın.
- Sanal ağ erişimini yapılandırın.
- Hizmetler için erişimi yapılandırın.
Oturum açma sorunlarını giderme
Azure kapsayıcı kayıt defterinde oturum açarken kimlik doğrulaması ve yetkilendirme sorunlarıyla karşılaşırsanız aşağıdaki çözümleri göz önünde bulundurun:
- Ortamınızdaki Docker yapılandırmasını denetleyin.
- Doğru kayıt defteri adını belirtin.
- Kayıt defterine erişmek için kimlik bilgilerini doğrulayın.
- Kayıt defterine genel erişimi yapılandırın.
- Kayıt defteri oturum açma sorunlarını giderme.
- Kimlik bilgilerinin süresinin dolmadığından emin olun.
Performans sorunlarını giderme
Azure kapsayıcı kayıt defteriyle ilgili performans sorunlarıyla karşılaşırsanız aşağıdaki çözümleri göz önünde bulundurun:
- Yapıt önbelleğini etkinleştirin.
- Ağ bağlantı hızını denetleyin.
- Görüntü katmanı sıkıştırma veya ayıklama hızını etkileyebilecek istemci donanımlarını inceleyin.
- Kayıt defteri hizmet katmanında veya ortamında yapılandırılmış sınırları gözden geçirin.
- Coğrafi olarak çoğaltılan kayıt defterini yakın bölgelerdeki çoğaltmalarla en iyi performans için yapılandırın.
- Coğrafi olarak uzak bir kayıt defteri çoğaltmasından çekerek DNS yapılandırmasını iyileştirin.
Bu kılavuzlar AKS kümeniz için sorunsuz görüntü alımı sağlamanıza ve iş yüklerinizin sorunsuz çalışmasını sağlamanıza yardımcı olabilir.
Üçüncü taraf kapsayıcı kayıt defterini tümleştirme
Üçüncü taraf kapsayıcı kayıt defteri kullandığınızda, AKS kümenizin kapsayıcı görüntülerine güvenli bir şekilde erişebilmesi için kayıt defteri için uygun ImagePullSecret
kimlik bilgilerini oluşturmanız gerekir. Daha fazla bilgi için bkz . Görüntü çekme gizli dizisi oluşturma. Kapsayıcı kayıt defteri bağlantısını doğrulayabilmek ve AKS kümenizin dağıtımlar sırasında gerekli kapsayıcı görüntülerini başarıyla çekmesini sağlamak için doğru izinleri ve kimlik bilgilerini ayarladığınızdan emin olun. Bu en iyi yöntem, Kubernetes'te kapsayıcılı iş yüklerinizin sorunsuz ve güvenilir bir şekilde yürütülmesini sağlamaya yardımcı olur.
Katkıda Bulunanlar
Bu makale Microsoft tarafından yönetilir. Başlangıçta aşağıdaki katkıda bulunanlar tarafından yazılmıştır.
Asıl yazarlar:
- Paolo Salvatori | Baş Müşteri Mühendisi
- Francis Simy Nazareth | Üst Düzey Teknik Uzman
Genel olmayan LinkedIn profillerini görmek için LinkedIn'de oturum açın.