Scegliere un'opzione kubernetes nell'opzione di calcolo perimetrale

Questo documento illustra i compromessi per varie opzioni disponibili per estendere il calcolo sul perimetro. Vengono illustrate le considerazioni seguenti per ogni opzione kubernetes:

  • Costo operativo. Il lavoro previsto necessario per gestire e gestire i cluster Kubernetes.

  • Facilità di configurazione. Livello di difficoltà per configurare e distribuire un cluster Kubernetes.

  • Flessibilità. Una misura dell'adattamento dell'opzione Kubernetes consiste nell'integrare una configurazione personalizzata con l'infrastruttura esistente all'perimetro.

  • Nodo misto. Possibilità di eseguire un cluster Kubernetes con nodi Linux e Windows.

Ipotesi

  • Si è un operatore del cluster che sta cercando di comprendere le diverse opzioni per l'esecuzione di Kubernetes nei dispositivi perimetrali e nella gestione dei cluster in Azure.

  • Si ha una buona conoscenza dell'infrastruttura esistente e di qualsiasi altro requisito dell'infrastruttura, inclusi i requisiti di archiviazione e di rete.

Dopo aver letto questo documento, si sarà in una posizione migliore per identificare l'opzione più adatta allo scenario e all'ambiente necessario.

Scelte di Kubernetes a colpo d'occhio

Costo operativo Facilità di configurazione Flessibilità Nodo misto Riepilogo
Kubernetes bare metal Alto** Difficile** Alto** Una configurazione di base su qualsiasi infrastruttura disponibile nella posizione con l'opzione di usare Azure Arc per aggiungere funzionalità di Azure.
K8s in Azure Stack Edge Pro Ridotto Facile Ridotto Solo Linux Kubernetes distribuito nell'appliance Azure Stack Edge distribuita nella posizione.
Servizio Azure Kubernetes ibrido Ridotto Facile Medio Servizio Azure Kubernetes distribuito in Azure Stack HCI o Windows Server 2019.

*Altre piattaforme perimetrali gestite (OpenShift, Tanzu e così via) non rientrano nell'ambito di questo documento.

**Questi valori sono basati sull'uso di kubeadm, per semplicità. Diverse opzioni per l'esecuzione di Kubernetes bare metal al perimetro alterano la classificazione in queste categorie.

Kubernetes bare metal

Configurazione di base di Kubernetes usando strumenti come kubeadm in qualsiasi infrastruttura sottostante.

I vincoli più importanti per Kubernetes bare metal riguardano le esigenze e i requisiti specifici dell'organizzazione. L'opportunità di usare qualsiasi distribuzione, interfaccia di rete e plug-in significa maggiore complessità e costo operativo. Questo offre tuttavia l'opzione più flessibile per la personalizzazione del cluster.

Scenario

Spesso, le posizioni perimetrali hanno requisiti specifici per l'esecuzione di cluster Kubernetes che non sono soddisfatti con le altre soluzioni di Azure descritte in questo documento. Ciò significa che questa opzione è in genere ottimale per coloro che non sono in grado di usare i servizi gestiti a causa di un'infrastruttura esistente non supportata o di coloro che cercano di avere il massimo controllo dei cluster.

  • Questa opzione può essere particolarmente difficile per coloro che non hanno ancora più a che fare con Kubernetes. Questo non è insolito per le organizzazioni che cercano di eseguire cluster perimetrali. Opzioni come MicroK8s o k3s puntano a appiattire la curva di apprendimento.

  • È importante comprendere qualsiasi infrastruttura sottostante e qualsiasi integrazione che dovrebbe avvenire in anticipo. Ciò consentirà di restringere le opzioni valide e di identificare eventuali lacune con gli strumenti open source e/o i plug-in.

  • L'abilitazione dei cluster con Azure Arc offre un modo semplice per gestire il cluster da Azure insieme ad altre risorse. Questo offre anche altre funzionalità di Azure per il cluster, tra cui Criteri di Azure, Monitoraggio di Azure, Microsoft Defender per il cloud e altri servizi.

  • Poiché la configurazione del cluster non è semplice, è particolarmente importante tenere presente CI/CD. Tenere traccia e agire sulle modifiche upstream di vari plug-in e assicurarsi che tali modifiche non influiscano sull'integrità del cluster, diventa una responsabilità diretta. È importante avere una soluzione CI/CD avanzata, test sicuri e monitoraggio sul posto.

Opzioni di strumenti

Bootstrap del cluster:

  • kubeadm: strumento Kubernetes per la creazione di cluster Kubernetes di base. Valido per le risorse di calcolo standard (Linux/Windows).

  • MicroK8s: amministrazione semplificata e configurazione ("LowOps"), conforme a Kubernetes da Canonical.

  • k3s: distribuzione Kubernetes certificata creata per Internet delle cose (IoT) e edge computing.

Archiviazione:

  • Esplorare i driver CSI disponibili: molte opzioni sono disponibili per soddisfare i requisiti dal cloud alle condivisioni file locali.

Rete:

  • Un elenco completo dei componenti aggiuntivi disponibili è disponibile qui: Componenti aggiuntivi di rete. Alcune opzioni comuni includono Flannel, una semplice rete di sovrapposizione e Calico, che offre uno stack di rete completo.

Considerazioni

Costo operativo:

  • Senza il supporto fornito con i servizi gestiti, spetta all'organizzazione gestire e gestire il cluster nel suo complesso (archiviazione, rete, aggiornamenti, osservabilità, gestione delle applicazioni). Il costo operativo è considerato elevato.

Facilità di configurazione:

  • La valutazione delle numerose opzioni open source in ogni fase della configurazione, indipendentemente dal fatto che le opzioni di rete, archiviazione o monitoraggio siano inevitabili e possano diventare complesse. Richiede una maggiore considerazione per la configurazione di un CI/CD per la configurazione del cluster. A causa di questi problemi, la facilità di configurazione è considerata difficile.

Flessibilità:

  • Con la possibilità di usare qualsiasi strumento o plug-in open source senza restrizioni del provider, Kubernetes bare metal è altamente flessibile.

Kubernetes in Azure Stack Edge

Cluster Kubernetes (una macchina virtuale master e una macchina virtuale di lavoro) configurata e distribuita automaticamente nel dispositivo Azure Stack Edge Pro.

I dispositivi Azure Stack Edge Pro offrono funzionalità di Azure come calcolo, archiviazione, rete e Machine Learning con accelerazione hardware (ML) in qualsiasi posizione perimetrale. I cluster Kubernetes possono essere creati dopo aver abilitato il ruolo di calcolo in uno dei dispositivi Pro-GPU, Pro-R e Mini-R. La gestione degli aggiornamenti del cluster Kubernetes può essere eseguita usando gli aggiornamenti standard disponibili per il dispositivo.

Scenario

Ideale per i carichi di lavoro IoT esistenti (Linux) o l'aggiornamento del calcolo per ML all'perimetro. Questa è un'opzione valida quando non è necessario avere un controllo più granulare sui cluster.

  • Amministrazione le autorizzazioni non vengono concesse per impostazione predefinita. Anche se è possibile usare il gruppo di prodotti per fare determinate eccezioni, ciò rende difficile avere un controllo più corretto del cluster.

  • Se non è già presente un dispositivo Azure Stack Edge, è previsto un costo aggiuntivo. Esplorare i dispositivi Azure Stack Edge e verificare se soddisfare i requisiti di calcolo.

  • Calico, MetalLB e CoreDNS vengono installati per la rete Kubernetes nel dispositivo.

  • Attualmente sono supportati solo i carichi di lavoro Linux .

  • Oltre a Kubernetes, Azure Stack Edge include anche il runtime IoT, il che significa che i carichi di lavoro possono anche essere distribuiti nei cluster Azure Stack Edge tramite IoT Edge.

  • Il supporto per i cluster a due nodi non è attualmente disponibile. Ciò significa che questa opzione non è una soluzione a disponibilità elevata.

Considerazioni

Costo operativo:

  • Con il supporto fornito con il dispositivo, il costo operativo è minimo ed è limitato alla gestione del carico di lavoro.

Facilità di configurazione:

  • La distribuzione del cluster Kubernetes preconfigurata e ben documentata semplifica la configurazione necessaria rispetto a Kubernetes bare metal.

Flessibilità:

  • La configurazione è già impostata e le autorizzazioni Amministrazione non vengono concesse per impostazione predefinita. Il coinvolgimento del gruppo di prodotti può essere necessario oltre la configurazione di base e l'infrastruttura sottostante deve essere un dispositivo Azure Stack Edge Pro, rendendo questa opzione meno flessibile.

Servizio Azure Kubernetes ibrido

Il servizio Azure Kubernetes ibrido è un set di impostazioni e configurazioni predefinite usate per distribuire uno o più cluster Kubernetes (con moduli Windows Amministrazione Center o PowerShell) in un cluster multinodo che esegue Windows Server o Azure Stack HCI 20H2 o versione successiva.

Scenario

Ideale per coloro che vogliono un modo semplificato e semplificato per ottenere un cluster supportato da Microsoft nei dispositivi compatibili (Azure Stack HCI o Windows Server). La complessità delle operazioni e della configurazione viene ridotta a scapito della flessibilità rispetto all'opzione Kubernetes bare metal.

Considerazioni

Costo operativo:

  • Il cluster supportato da Microsoft riduce al minimo i costi operativi.

Facilità di configurazione:

  • La distribuzione del cluster Kubernetes preconfigurata e ben documentata semplifica la configurazione necessaria rispetto a Kubernetes bare metal.

Flessibilità:

  • La configurazione del cluster è impostata, ma vengono concesse Amministrazione autorizzazioni. L'infrastruttura sottostante deve essere Azure Stack HCI o Windows Server. 2019. Questa opzione è più flessibile rispetto a Kubernetes in Azure Stack Edge e meno flessibile rispetto a Kubernetes bare metal.

Collaboratori

Questo articolo viene gestito da Microsoft. Originariamente è stato scritto dai seguenti contributori.

Autore principale:

Per visualizzare i profili LinkedIn non pubblici, accedere a LinkedIn.

Passaggi successivi

Per altre informazioni, vedere gli articoli seguenti: