Een Kubernetes kiezen op de edge-rekenoptie

In dit document worden de afwegingen besproken voor verschillende opties die beschikbaar zijn voor het uitbreiden van rekenkracht aan de rand. De volgende overwegingen voor elke Kubernetes-optie worden behandeld:

  • Operationele kosten. De verwachte arbeid die nodig is om de Kubernetes-clusters te onderhouden en te gebruiken.

  • Eenvoudig configuratie. Het niveau van problemen bij het configureren en implementeren van een Kubernetes-cluster.

  • Flexibiliteit. Een meting van hoe aanpasbaar de Kubernetes-optie is om een aangepaste configuratie te integreren met bestaande infrastructuur aan de rand.

  • Gemengd knooppunt. Mogelijkheid om een Kubernetes-cluster uit te voeren met zowel Linux- als Windows-knooppunten.

Aannames

  • U bent een clusteroperator die inzicht wil krijgen in verschillende opties voor het uitvoeren van Kubernetes aan de rand en het beheren van clusters in Azure.

  • U hebt een goed begrip van bestaande infrastructuur en eventuele andere infrastructuurvereisten, waaronder opslag- en netwerkvereisten.

Nadat u dit document hebt gelezen, hebt u een betere positie om te bepalen welke optie het beste past bij uw scenario en de vereiste omgeving.

Kubernetes-keuzes in één oogopslag

Operationele kosten Configuratiegemak Flexibiliteit Gemengd knooppunt Samenvatting
Bare-metal Kubernetes Hoge** Moeilijk** Hoge** Ja Een basisconfiguratie voor elke beschikbare infrastructuur op locatie met de optie om Azure Arc te gebruiken voor toegevoegde Azure-mogelijkheden.
K8s op Azure Stack Edge Pro Laag Eenvoudig Laag Alleen Linux Kubernetes geïmplementeerd op een Azure Stack Edge-apparaat dat op locatie is geïmplementeerd.
Hybride AKS Laag Eenvoudig Gemiddeld Ja AKS geïmplementeerd op Azure Stack HCI of Windows Server 2019.

*Andere beheerde edge-platforms (OpenShift, Tanzu, enzovoort) vallen niet binnen het bereik van dit document.

**Deze waarden zijn gebaseerd op het gebruik van kubeadm, omwille van de eenvoud. Verschillende opties voor het uitvoeren van bare-metal Kubernetes aan de rand zouden de classificatie in deze categorieën wijzigen.

Bare-metal Kubernetes

Basisconfiguratie van Kubernetes met behulp van hulpprogramma's zoals kubeadm op een onderliggende infrastructuur.

De grootste beperkingen voor bare-metal Kubernetes zijn rond de specifieke behoeften en vereisten van de organisatie. De mogelijkheid om elke distributie, netwerkinterface en invoegtoepassing te gebruiken, betekent hogere complexiteit en operationele kosten. Maar dit biedt de meest flexibele optie voor het aanpassen van uw cluster.

Scenario

Edge-locaties hebben vaak specifieke vereisten voor het uitvoeren van Kubernetes-clusters die niet voldoen aan de andere Azure-oplossingen die in dit document worden beschreven. Dit betekent dat deze optie doorgaans het beste is voor degenen die geen beheerde services kunnen gebruiken vanwege niet-ondersteunde bestaande infrastructuur of degenen die maximale controle over hun clusters willen hebben.

  • Deze optie kan vooral moeilijk zijn voor degenen die niet bekend zijn met Kubernetes. Dit is niet ongebruikelijk voor organisaties die edge-clusters willen uitvoeren. Opties zoals MicroK8s of k3s zijn erop gericht om die leercurve af te vlakken.

  • Het is belangrijk om inzicht te hebben in de onderliggende infrastructuur en alle integraties die naar verwachting vooraf plaatsvinden. Dit helpt bij het beperken van haalbare opties en het identificeren van eventuele hiaten met de opensource-tooling en/of plug-ins.

  • Het inschakelen van clusters met Azure Arc biedt een eenvoudige manier om uw cluster te beheren vanuit Azure naast andere resources. Dit biedt ook andere Azure-mogelijkheden voor uw cluster, waaronder Azure Policy, Azure Monitor, Microsoft Defender voor Cloud en andere services.

  • Omdat de clusterconfiguratie niet triviaal is, is het vooral belangrijk om rekening te houden met CI/CD. Het bijhouden en handelen op upstreamwijzigingen van verschillende invoegtoepassingen en ervoor zorgen dat deze wijzigingen niet van invloed zijn op de status van uw cluster, wordt een directe verantwoordelijkheid. Het is belangrijk dat u beschikt over een sterke CI/CD-oplossing, sterke tests en bewaking.

Opties voor hulpprogramma's

Clusterboottrap:

  • kubeadm: Kubernetes-hulpprogramma voor het maken van geaarde Kubernetes-clusters. Geschikt voor standaard rekenresources (Linux/Windows).

  • MicroK8s: Vereenvoudigd beheer en configuratie ("LowOps"), conforme Kubernetes door Canonical.

  • k3s: Gecertificeerde Kubernetes-distributie gebouwd voor Internet of Things (IoT) en edge-computing.

Opslag:

Netwerken:

  • Hier vindt u een volledige lijst met beschikbare invoegtoepassingen: Netwerkinvoegtoepassingen. Enkele populaire opties zijn Flannel, een eenvoudig overlaynetwerk en Calico, dat een volledige netwerkstack biedt.

Overwegingen

Operationele kosten:

  • Zonder de ondersteuning die wordt geleverd bij beheerde services, is het aan de organisatie om het cluster als geheel te onderhouden en te gebruiken (opslag, netwerken, upgrades, waarneembaarheid, toepassingsbeheer). De operationele kosten worden als hoog beschouwd.

Gemak van configuratie:

  • Het evalueren van de vele opensource-opties in elke fase van de configuratie, ongeacht of de netwerk-, opslag- of bewakingsopties onvermijdelijk zijn en complex kunnen worden. Er is meer aandacht nodig voor het configureren van een CI/CD voor clusterconfiguratie. Vanwege deze problemen wordt het gemak van de configuratie als moeilijk beschouwd.

Flexibiliteit:

  • Met de mogelijkheid om opensource-hulpprogramma's of invoegtoepassingen te gebruiken zonder providerbeperkingen, is bare-metal Kubernetes zeer flexibel.

Kubernetes in Azure Stack Edge

Kubernetes-cluster (een hoofd-VM en een werkrol-VM) die voor u zijn geconfigureerd en geïmplementeerd op uw Azure Stack Edge Pro-apparaat.

Azure Stack Edge Pro-apparaten bieden Azure-mogelijkheden, zoals compute, opslag, netwerken en door hardware versnelde machine learning (ML) op elke edge-locatie. Kubernetes-clusters kunnen worden gemaakt zodra de rekenrol is ingeschakeld op een van de Pro-GPU-, Pro-R- en Mini-R-apparaten. Het beheren van upgrades van het Kubernetes-cluster kan worden uitgevoerd met behulp van standaardupdates die beschikbaar zijn voor het apparaat.

Scenario

Ideaal voor mensen met bestaande IoT-workloads (Linux) of voor het upgraden van hun rekenkracht voor ML aan de rand. Dit is een goede optie wanneer het niet nodig is om gedetailleerdere controle over de clusters te hebben.

  • Beheer machtigingen worden niet standaard verleend. Hoewel u met de productgroep kunt werken om bepaalde uitzonderingen te maken, is het lastig om uw cluster nauwkeuriger te beheren.

  • Er zijn extra kosten verbonden als er nog geen Azure Stack Edge-apparaat is. Verken Azure Stack Edge-apparaten en kijk of deze voldoen aan uw rekenvereisten.

  • Calico, MetalLB en CoreDNS zijn geïnstalleerd voor Kubernetes-netwerken op het apparaat.

  • Op dit moment worden alleen Linux-workloads ondersteund.

  • Naast Kubernetes wordt Azure Stack Edge ook geleverd met de IoT-runtime, wat betekent dat workloads ook kunnen worden geïmplementeerd in uw Azure Stack Edge-clusters via IoT Edge.

  • Ondersteuning voor twee knooppuntclusters is momenteel niet beschikbaar. Dit betekent effectief dat deze optie geen oplossing met hoge beschikbaarheid (HA) is.

Overwegingen

Operationele kosten:

  • Met de ondersteuning die bij het apparaat wordt geleverd, zijn de operationele kosten minimaal en vallen ze binnen het bereik van workloadbeheer.

Gemak van configuratie:

  • Vooraf geconfigureerde en goed gedocumenteerde Kubernetes-clusterimplementatie vereenvoudigt de configuratie die is vereist in vergelijking met bare-metal Kubernetes.

Flexibiliteit:

  • De configuratie is al ingesteld en Beheer machtigingen niet standaard worden verleend. Betrokkenheid van productgroepen kan vereist zijn buiten de basisconfiguratie en de onderliggende infrastructuur moet een Azure Stack Edge Pro-apparaat zijn, waardoor dit een minder flexibele optie is.

Hybride AKS

Hybride AKS is een set vooraf gedefinieerde instellingen en configuraties die worden gebruikt voor het implementeren van een of meer Kubernetes-clusters (met Windows Beheer Center of PowerShell-modules) op een cluster met meerdere knooppunten waarop Windows Server of Azure Stack HCI 20H2 of hoger wordt uitgevoerd.

Scenario

Ideaal voor degenen die een vereenvoudigde en gestroomlijnde manier willen om een door Microsoft ondersteund cluster te krijgen op compatibele apparaten (Azure Stack HCI of Windows Server). Bewerkingen en configuratiecomplexiteit worden verminderd ten koste van de flexibiliteit in vergelijking met de bare-metal Kubernetes-optie.

Overwegingen

Operationele kosten:

  • Door Microsoft ondersteund cluster minimaliseert operationele kosten.

Gemak van configuratie:

  • Vooraf geconfigureerde en goed gedocumenteerde Kubernetes-clusterimplementatie vereenvoudigt de configuratie die is vereist in vergelijking met bare-metal Kubernetes.

Flexibiliteit:

  • Clusterconfiguratie zelf is ingesteld, maar Beheer machtigingen worden verleend. De onderliggende infrastructuur moet Azure Stack HCI of Windows Server zijn. 2019. Deze optie is flexibeler dan Kubernetes in Azure Stack Edge en minder flexibel dan bare-metal Kubernetes.

Bijdragers

Dit artikel wordt onderhouden door Microsoft. De tekst is oorspronkelijk geschreven door de volgende Inzenders.

Hoofdauteur:

Als u niet-openbare LinkedIn-profielen wilt zien, meldt u zich aan bij LinkedIn.

Volgende stappen

Raadpleeg voor meer informatie de volgende artikelen: