Azure Container Instances’taki kapsayıcıları güncelleştirme

Kapsayıcı örneklerinizin normal çalışması sırasında, bir kapsayıcı grubundaki çalışan kapsayıcıları güncelleştirmeyi gerekli bulabilirsiniz. Örneğin, görüntü sürümü, DNS adı veya ortam değişkeni gibi bir özelliği güncelleştirmek veya uygulaması kilitlenen bir kapsayıcıdaki bir özelliği yenilemek isteyebilirsiniz.

En az bir değiştirilmiş özelliğe sahip mevcut bir grubu yeniden dağıtarak çalışan bir kapsayıcı grubundaki kapsayıcıları güncelleştirin. Bir kapsayıcı grubunu güncelleştirdiğinizde, grupta çalışan tüm kapsayıcılar genellikle aynı temel kapsayıcı ana bilgisayarında yerinde yeniden başlatılır.

Not

Sonlandırılan veya silinen kapsayıcı grupları güncelleştirilemez. Bir kapsayıcı grubu sonlandırıldıktan (Başarılı veya Başarısız durumundadır) veya silindikten sonra, grubun yeni olarak dağıtılması gerekir. Diğer sınırlamalara bakın.

Kapsayıcı grubunu güncelleştirme

Mevcut bir kapsayıcı grubunu güncelleştirmek için:

  • Create komutunu verin (veya Azure portal kullanın) ve var olan bir grubun adını belirtin
  • Yeniden dağıttığınızda grubun güncelleştirmeyi destekleyen en az bir özelliğini değiştirin veya ekleyin. Bazı özellikler güncelleştirmeleri desteklemez.
  • Daha önce sağladığınız değerlerle diğer özellikleri ayarlayın. Bir özellik için değer ayarlamazsanız, varsayılan değerine geri döner.

İpucu

YAML dosyası, kapsayıcı grubunun dağıtım yapılandırmasını korumaya yardımcı olur ve güncelleştirilmiş bir grubu dağıtmak için bir başlangıç noktası sağlar. Grubu oluşturmak için farklı bir yöntem kullandıysanız az container export komutunu kullanarak yapılandırmayı YAML'ye aktarabilirsiniz.

Örnek

Aşağıdaki Azure CLI örneği, kapsayıcı grubunu yeni bir DNS adı etiketiyle güncelleştirir. Grubun DNS ad etiketi özelliği güncelleştirilebilen bir özellik olduğundan, kapsayıcı grubu yeniden dağıtılır ve kapsayıcıları yeniden başlatılır.

myapplication-staging DNS ad etiketiyle ilk dağıtım:

# Create container group
az container create --resource-group myResourceGroup --name mycontainer \
    --image nginx:alpine --dns-name-label myapplication-staging

Kapsayıcı grubunu yeni bir DNS ad etiketi olan myapplication ile güncelleştirin ve kalan özellikleri daha önce kullanılan değerlerle ayarlayın:

# Update DNS name label (restarts container), leave other properties unchanged
az container create --resource-group myResourceGroup --name mycontainer \
    --image nginx:alpine --dns-name-label myapplication

Avantajları güncelleştirme

Mevcut bir kapsayıcı grubunu güncelleştirmenin birincil avantajı daha hızlı dağıtımdır. Mevcut bir kapsayıcı grubunu yeniden dağıttığınızda, kapsayıcı görüntüsü katmanları önceki dağıtım tarafından önbelleğe alınanlardan çekilir. Yeni dağıtımlarda olduğu gibi kayıt defterinden tüm görüntü katmanlarını yeni çekmek yerine yalnızca değiştirilmiş katmanlar (varsa) çekilir.

Windows Server Core gibi daha büyük kapsayıcı görüntülerini temel alan uygulamalar, yeni verileri silip dağıtmak yerine güncelleştirdiğinizde dağıtım hızında önemli geliştirmeler görebilir.

Sınırlamalar

  • Kapsayıcı grubunun tüm özellikleri güncelleştirmeleri desteklemez. Kapsayıcı grubunun bazı özelliklerini değiştirmek için önce silmeniz, ardından grubu yeniden dağıtmanız gerekir. Bkz. Kapsayıcı silme gerektiren özellikler.
  • Kapsayıcı grubunu güncelleştirdiğinizde kapsayıcı grubundaki tüm kapsayıcılar yeniden başlatılır. Çok kapsayıcılı bir grupta belirli bir kapsayıcının güncelleştirmesini veya yerinde yeniden başlatılmasını gerçekleştiremezsiniz.
  • Bir kapsayıcı grubunun IP adresi genellikle güncelleştirmeler arasında tutulur, ancak aynı kalacağı garanti değildir. Kapsayıcı grubu aynı temel konağa dağıtıldığında, kapsayıcı grubu IP adresini korur. Nadir olsa da, farklı bir konağa yeniden dağıtıma neden olabilecek bazı Azure iç olayları vardır. Bu sorunu azaltmak için kapsayıcı örnekleriniz için bir DNS ad etiketi kullanmanızı öneririz.
  • Sonlandırılan veya silinen kapsayıcı grupları güncelleştirilemez. Bir kapsayıcı grubu durdurulduktan ( Sonlandırıldı durumundadır) veya silindikten sonra grup yeni olarak dağıtılır.

Not

Azure Container Group bir Azure Depolama profiline bağlıysa update komutu çalışmayabilir.

Kapsayıcı silme gerektiren özellikler

Tüm kapsayıcı grubu özellikleri güncelleştirilemez. Örneğin, bir kapsayıcının yeniden başlatma ilkesini değiştirmek için önce kapsayıcı grubunu silmeniz ve sonra yeniden oluşturmanız gerekir.

Bu özelliklerde yapılan değişiklikler, yeniden dağıtımdan önce kapsayıcı grubunun silinmesini gerektirir:

  • İşletim sistemi türü
  • CPU, bellek veya GPU kaynakları
  • Yeniden başlatma ilkesi
  • Ağ profili
  • Kullanılabilirlik alanı

Önemli

Ağ profilleri API sürümü itibarıyla kullanımdan 2021-07-01 kaldırılmıştır. Bu sürümü veya daha yeni bir sürümü kullanıyorsanız, ağ profilleriyle ilgili tüm adımları ve eylemleri yoksayın.

Bir kapsayıcı grubunu silip yeniden oluşturduğunuzda, "yeniden dağıtılmaz" ancak yeni oluşturulur. Önceki bir dağıtım tarafından önbelleğe alınanlardan değil, tüm görüntü katmanları kayıt defterinden yeni alınır. Kapsayıcının IP adresi de farklı bir temel konağa dağıtıldığı için değişebilir.

Sonraki adımlar

Bu makalede kapsayıcı grubu birkaç kez bahsedildi. Azure Container Instances içindeki her kapsayıcı bir kapsayıcı grubunda dağıtılır ve kapsayıcı grupları birden fazla kapsayıcı içerebilir.

Azure Container Instances’taki kapsayıcı grupları

Birden çok kapsayıcılı grup dağıtma

Azure Container Instances’taki kapsayıcıları el ile durdurma veya başlatma