Azure Container Instances och containerorkestrerare
På grund av deras små storlek och programorientering passar containrar bra för flexibla leveransmiljöer och mikrotjänstbaserade arkitekturer. Uppgiften att automatisera och hantera ett stort antal containrar och hur de interagerar kallas orkestrering. Populära containerorkestrerare är Kubernetes, DC/OS och Docker Swarm.
Azure Container Instances innehåller några av de grundläggande schemaläggningsfunktionerna för orkestreringsplattformar. Och även om det inte täcker de tjänster med högre värde som dessa plattformar tillhandahåller, kan Azure Container Instances komplettera dem. Den här artikeln beskriver omfattningen av vad Azure Container Instances hanterar och hur fullständiga containerorkestrerare kan interagera med den.
Traditionell orkestrering
Standarddefinitionen för orkestrering innehåller följande uppgifter:
- Schemaläggning: Med tanke på en containeravbildning och en resursbegäran hittar du en lämplig dator där containern ska köras.
- Tillhörighet/antitillhörighet: Ange att en uppsättning containrar ska köras i närheten av varandra (för prestanda) eller tillräckligt långt ifrån varandra (för tillgänglighet).
- Hälsoövervakning: Håll utkik efter containerfel och schemalägg om dem automatiskt.
- Redundansväxling: Håll reda på vad som körs på varje dator och schemalägg om containrar från datorer som misslyckats till felfria noder.
- Skalning: Lägg till eller ta bort containerinstanser för att matcha efterfrågan, antingen manuellt eller automatiskt.
- Nätverk: Tillhandahålla ett överläggsnätverk för samordning av containrar för kommunikation mellan flera värddatorer.
- Tjänstidentifiering: Aktivera containrar för att hitta varandra automatiskt, även när de flyttas mellan värddatorer och ändrar IP-adresser.
- Samordnade programuppgraderingar: Hantera containeruppgraderingar för att undvika programavbrott och aktivera återställning om något går fel.
Orkestrering med Azure Container Instances: En metod i flera lager
Azure Container Instances möjliggör en stegvis metod för orkestrering, vilket ger alla de schemaläggnings- och hanteringsfunktioner som krävs för att köra en enda container, samtidigt som orkestreringsplattformar kan hantera uppgifter med flera containrar ovanpå den.
Eftersom Azure hanterar den underliggande infrastrukturen för containerinstanser behöver en orkestreringsplattform inte bekymra sig om att hitta en lämplig värddator som en enda container ska köras på. Molnets elasticitet säkerställer att en alltid är tillgänglig. I stället kan orkestreraren fokusera på de uppgifter som förenklar utvecklingen av arkitekturer med flera containrar, inklusive skalning och samordnade uppgraderingar.
Scenarier
Även om orkestreringsintegrering med Azure Container Instances fortfarande är begynnande, förväntar vi oss att några olika miljöer dyker upp:
Orkestrering av containerinstanser exklusivt
Eftersom de börjar snabbt och fakturerar för det andra, erbjuder en miljö som uteslutande baseras på Azure Container Instances det snabbaste sättet att komma igång och hantera mycket varierande arbetsbelastningar.
Kombination av containerinstanser och containrar i virtuella datorer
För långvariga, stabila arbetsbelastningar är orkestrering av containrar i ett kluster med dedikerade virtuella datorer vanligtvis billigare än att köra samma containrar med Azure Container Instances. Containerinstanser erbjuder dock en bra lösning för att snabbt utöka och kontraktera din övergripande kapacitet för att hantera oväntade eller kortvariga toppar i användningen.
I stället för att skala ut antalet virtuella datorer i klustret och sedan distribuera fler containrar till dessa datorer kan orkestratorn schemalägga ytterligare containrar i Azure Container Instances och ta bort dem när de inte längre behövs.
Exempelimplementering: virtuella noder på Azure Container Instances
Om du vill skala programarbetsbelastningar snabbt i ett AKS-kluster (Azure Kubernetes Service) kan du använda virtuella noder som skapats dynamiskt i Azure Container Instances. Virtuella noder registreras som noder med obegränsad kapacitet med ditt AKS-klusterkontrollplan. När du distribuerar poddar i en virtuell nod i aks-klustret körs de som containergrupper i ACI.
Virtuella noder stöder för närvarande Linux-containerinstanser. Mer information finns i Virtuella noder på Azure Container Instances .
Nästa steg
Skapa din första container med Azure Container Instances med hjälp av snabbstartsguiden.