Aktualizace kontejnerů ve službě Azure Container Instances

Během normálního provozu instancí kontejneru můžete zjistit, že je potřeba aktualizovat spuštěné kontejnery ve skupině kontejnerů. Můžete například chtít aktualizovat vlastnost, jako je verze image, název DNS nebo proměnná prostředí, nebo aktualizovat vlastnost v kontejneru, jehož aplikace se chybově ukončila.

Aktualizujte kontejnery ve spuštěné skupině kontejnerů opětovným nasazením existující skupiny s alespoň jednou upravenou vlastností. Při aktualizaci skupiny kontejnerů se všechny spuštěné kontejnery ve skupině restartují místně, obvykle na stejném podkladovém hostiteli kontejneru.

Poznámka:

Ukončené nebo odstraněné skupiny kontejnerů nelze aktualizovat. Jakmile se skupina kontejneru ukončí (je ve stavu Úspěch nebo Selhání), nebo se odstraní, musí být skupina nasazená jako nová. Podívejte se na další omezení.

Aktualizace skupiny kontejnerů

Aktualizace existující skupiny kontejnerů:

  • Zadejte příkaz create (nebo použijte Azure Portal) a zadejte název existující skupiny.
  • Při opětovném nasazení upravte nebo přidejte alespoň jednu vlastnost skupiny, která podporuje aktualizaci. Některé vlastnosti nepodporují aktualizace.
  • Ostatní vlastnosti nastavte na hodnoty, které jste zadali dříve. Pokud hodnotu pro vlastnost nenastavíte, vrátí se zpět na výchozí hodnotu.

Poznámka:

Pokud nastavíte všechny vlastnosti na hodnoty, které jste zadali dříve a neupravíte ani nepřidáte, kontejner se restartuje v reakci na příkaz create.

Tip

Soubor YAML pomáhá udržovat konfiguraci nasazení skupiny kontejnerů a poskytuje výchozí bod pro nasazení aktualizované skupiny. Pokud jste k vytvoření skupiny použili jinou metodu, můžete konfiguraci exportovat do YAML pomocí příkazu az container export.

Příklad

Následující příklad Azure CLI aktualizuje skupinu kontejnerů novým popiskem názvu DNS. Vzhledem k tomu, že vlastnost popisku názvu DNS skupiny je vlastnost, která se dá aktualizovat, skupina kontejnerů se znovu nasadí a její kontejnery se restartují.

Počáteční nasazení s názvem DNS popiskem myapplication-staging:

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

Aktualizujte skupinu kontejnerů novým popiskem názvu DNS, aplikací a nastavte zbývající vlastnosti s hodnotami použitými dříve:

# 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

Aktualizace výhod

Hlavní výhodou aktualizace existující skupiny kontejnerů je rychlejší nasazení. Při opětovném nasazení existující skupiny kontejnerů se vrstvy image kontejneru načítají z vrstev uložených v mezipaměti předchozího nasazení. Místo načtení všech vrstev imagí, které jsou z registru čerstvé, stejně jako u nových nasazení, se načte jenom změněné vrstvy (pokud existují).

Aplikace založené na větších imagích kontejnerů, jako je Windows Server Core, můžou při aktualizaci namísto odstranění a nasazení nových zobrazovat výrazné zlepšení rychlosti nasazení.

Omezení

  • Ne všechny vlastnosti skupiny kontejnerů podporují aktualizace. Pokud chcete změnit některé vlastnosti skupiny kontejnerů, musíte skupinu nejprve odstranit a pak znovu nasadit. Viz Vlastnosti, které vyžadují odstranění kontejneru.
  • Při aktualizaci skupiny kontejnerů se restartují všechny kontejnery ve skupině kontejnerů. Ve skupině více kontejnerů nelze provést aktualizaci ani místní restartování konkrétního kontejneru.
  • IP adresa skupiny kontejnerů se obvykle uchovává mezi aktualizacemi, ale nezaručuje, že zůstane stejná. Pokud je skupina kontejnerů nasazená do stejného základního hostitele, skupina kontejnerů si zachová svou IP adresu. I když je to vzácné, existuje několik interních událostí Azure, které můžou způsobit opětovné nasazení na jiného hostitele. Pokud chcete tento problém zmírnit, doporučujeme pro instance kontejnerů použít popisek názvu DNS.
  • Ukončené nebo odstraněné skupiny kontejnerů nelze aktualizovat. Jakmile je skupina kontejnerů zastavená (je ve stavu Ukončeno ) nebo odstraněna, skupina se nasadí jako nová.

Poznámka:

Příkaz update nemusí fungovat, pokud je skupina kontejnerů Azure připojená k profilu služby Azure Storage.

Vlastnosti, které vyžadují odstranění kontejneru

Ne všechny vlastnosti skupiny kontejnerů je možné aktualizovat. Pokud chcete například změnit zásady restartování kontejneru, musíte nejprve odstranit skupinu kontejnerů a pak ji znovu vytvořit.

Změny těchto vlastností vyžadují odstranění skupiny kontejnerů před opětovným nasazením:

  • Typ operačního systému
  • Prostředky procesoru, paměti nebo GPU
  • Zásada restartování
  • Profil sítě
  • Availability zone

Důležité

Profily sítě byly vyřazeny z 2021-07-01 verze rozhraní API. Pokud používáte tuto nebo novější verzi, ignorujte všechny kroky a akce související se síťovými profily.

Když odstraníte skupinu kontejnerů a znovu ji vytvoříte, nebude se znovu nasazovat, ale vytvoří se nová. Všechny vrstvy image se načítají z registru, ne z vrstev uložených v mezipaměti předchozího nasazení. IP adresa kontejneru se může také změnit kvůli nasazení na jiného základního hostitele.

Další kroky

Tento článek několikrát zmíní skupiny kontejnerů. Každý kontejner ve službě Azure Container Instances je nasazený ve skupině kontejnerů a skupiny kontejnerů můžou obsahovat více než jeden kontejner. Následující články obsahují další informace o skupinách kontejnerů: