Containers in Azure Container Instances bijwerken

Tijdens de normale werking van uw containerinstanties is het nodig om de actieve containers in een containergroep bij te werken. U kunt bijvoorbeeld een eigenschap bijwerken, zoals een versie van een installatiekopieën, een DNS-naam of een omgevingsvariabele, of een eigenschap vernieuwen in een container waarvan de toepassing is vastgelopen.

Werk de containers in een actieve containergroep bij door een bestaande groep opnieuw te implementeren met ten minste één gewijzigde eigenschap. Wanneer u een containergroep bijwerkt, worden alle actieve containers in de groep in-place opnieuw opgestart, meestal op dezelfde onderliggende containerhost.

Notitie

Beëindigde of verwijderde containergroepen kunnen niet worden bijgewerkt. Zodra een containergroep is beëindigd (de status Geslaagd of Mislukt heeft) of is verwijderd, moet de groep als nieuw worden geïmplementeerd. Zie andere beperkingen.

Een containergroep bijwerken

Een bestaande containergroep bijwerken:

  • Geef de opdracht voor maken (of gebruik Azure Portal) en geef de naam van een bestaande groep op
  • U moet ten minste één eigenschap van de groep wijzigen of toevoegen die ondersteuning biedt voor bijwerken wanneer u opnieuw implementeert. Bepaalde eigenschappen bieden geen ondersteuning voor updates.
  • Stel andere eigenschappen in met de waarden die u eerder hebt opgegeven. Als u geen waarde instelt voor een eigenschap, wordt deze teruggezet naar de standaardwaarde.

Notitie

Als u alle eigenschappen instelt op de waarden die u eerder hebt opgegeven en u deze niet wijzigt of toevoegt, wordt de container opnieuw opgestart als reactie op de opdracht maken.

Tip

Een YAML-bestand helpt bij het onderhouden van de implementatieconfiguratie van een containergroep en biedt een beginpunt voor het implementeren van een bijgewerkte groep. Als u een andere methode hebt gebruikt om de groep te maken, kunt u de configuratie exporteren naar YAML met behulp van az container export,

Opmerking

In het volgende Azure CLI-voorbeeld wordt een containergroep bijgewerkt met een nieuw DNS-naamlabel. Omdat de eigenschap DNS-naamlabel van de groep een eigenschap is die kan worden bijgewerkt, wordt de containergroep opnieuw geïmplementeerd en worden de containers opnieuw gestart.

Initiële implementatie met DNS-naamlabel myapplication-staging:

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

Werk de containergroep bij met een nieuw DNS-naamlabel, toepassing en stel de resterende eigenschappen in met de waarden die eerder zijn gebruikt:

# 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

Voordelen bijwerken

Het belangrijkste voordeel van het bijwerken van een bestaande containergroep is een snellere implementatie. Wanneer u een bestaande containergroep opnieuw implementeert, worden de bijbehorende containerinstallatiekopielagen opgehaald uit lagen die door de vorige implementatie in de cache zijn opgeslagen. In plaats van alle installatiekopielagen op te halen die nieuw zijn uit het register, net zoals bij nieuwe implementaties, worden alleen gewijzigde lagen (indien van toepassing) opgehaald.

Toepassingen op basis van grotere containerinstallatiekopieën, zoals Windows Server Core, kunnen aanzienlijke verbetering in de implementatiesnelheid zien wanneer u bijwerkt in plaats van nieuwe installatiekopieën te verwijderen en te implementeren.

Beperkingen

  • Niet alle eigenschappen van een containergroep ondersteunen updates. Als u bepaalde eigenschappen van een containergroep wilt wijzigen, moet u de groep eerst verwijderen en vervolgens opnieuw implementeren. Zie Eigenschappen waarvoor het verwijderen van containers is vereist.
  • Alle containers in een containergroep worden opnieuw gestart wanneer u de containergroep bijwerkt. U kunt een specifieke container in een groep met meerdere containers niet bijwerken of ter plaatse opnieuw starten.
  • Het IP-adres van een containergroep blijft doorgaans behouden tussen updates, maar blijft niet gegarandeerd hetzelfde. Zolang de containergroep is geïmplementeerd op dezelfde onderliggende host, behoudt de containergroep het IP-adres. Hoewel dit zelden voorkomt, zijn er enkele interne Azure-gebeurtenissen die opnieuw kunnen worden geïmplementeerd op een andere host. Om dit probleem te verhelpen, raden we u aan een DNS-naamlabel te gebruiken voor uw containerinstanties.
  • Beëindigde of verwijderde containergroepen kunnen niet worden bijgewerkt. Zodra een containergroep is gestopt (de status Beëindigd heeft) of is verwijderd, wordt de groep geïmplementeerd als nieuw.

Notitie

De updateopdracht werkt mogelijk niet als de Azure Container Group is gekoppeld aan een Azure Storage-profiel.

Eigenschappen waarvoor container verwijderen is vereist

Niet alle eigenschappen van containergroepen kunnen worden bijgewerkt. Als u bijvoorbeeld het beleid voor opnieuw opstarten van een container wilt wijzigen, moet u eerst de containergroep verwijderen en vervolgens opnieuw maken.

Wijzigingen in deze eigenschappen vereisen verwijdering van containergroepen voordat ze opnieuw worden geïmplementeerd:

  • Type besturingssysteem
  • CPU-, geheugen- of GPU-resources
  • Beleid voor opnieuw opstarten
  • Netwerkprofiel
  • Availability zone

Belangrijk

Netwerkprofielen zijn buiten gebruik gesteld vanaf de 2021-07-01 API-versie. Als u deze of een recentere versie gebruikt, negeert u alle stappen en acties met betrekking tot netwerkprofielen.

Wanneer u een containergroep verwijdert en opnieuw maakt, wordt deze niet opnieuw geïmplementeerd, maar wordt er nieuwe gemaakt. Alle installatiekopielagen worden opgehaald uit het register, niet uit lagen die door een eerdere implementatie in de cache zijn opgeslagen. Het IP-adres van de container kan ook veranderen omdat deze wordt geïmplementeerd op een andere onderliggende host.

Volgende stappen

In dit artikel worden containergroepen meerdere keren vermeld. Elke container in Azure Container Instances wordt geïmplementeerd in een containergroep en containergroepen kunnen meer dan één container bevatten. De volgende artikelen bevatten meer informatie over containergroepen: