Presentazione del controllo missione Tanzu

Oggi vogliamo parlare di VMware Tanzu, una nuova linea di prodotti e servizi annunciata durante la conferenza VMWorld dello scorso anno. All'ordine del giorno c'è uno degli strumenti più interessanti: Tanzu Mission Control.

Attenzione: ci sono molte immagini sotto il taglio.

Presentazione del controllo missione Tanzu

Cos'è il controllo missione

Come afferma la stessa azienda nel suo blog, l’obiettivo principale di VMware Tanzu Mission Control è “mettere ordine nel caos dei cluster”. Mission Control è una piattaforma basata su API che consentirà agli amministratori di applicare policy a cluster o gruppi di cluster e impostare regole di sicurezza. Gli strumenti basati su SaaS si integrano in modo sicuro nei cluster Kubernetes tramite un agente e supportano una varietà di operazioni standard del cluster, comprese le operazioni di gestione del ciclo di vita (distribuzione, ridimensionamento, eliminazione, ecc.).

L'ideologia della linea Tanzu si basa sul massimo utilizzo delle tecnologie open source. Per gestire il ciclo di vita dei cluster Tanzu Kubernetes Grid, viene utilizzata l'API Cluster, Velero viene utilizzato per backup e ripristino, Sonobuoy viene utilizzato per monitorare la conformità con la configurazione dei cluster Kubernetes e Contour come controller di ingresso.

L'elenco generale delle funzioni di Tanzu Mission Control è simile al seguente:

  • gestione centralizzata di tutti i tuoi cluster Kubernetes;
  • gestione dell'identità e degli accessi (IAM);
  • diagnostica e monitoraggio dello stato del cluster;
  • gestire la configurazione e le impostazioni di sicurezza;
  • pianificazione di controlli regolari sullo stato del cluster;
  • creazione di backup e ripristino;
  • gestione delle quote;
  • rappresentazione visiva dell’utilizzo delle risorse.

Presentazione del controllo missione Tanzu

Perché è importante?

Tanzu Mission Control aiuterà le aziende a risolvere il problema della gestione di un'ampia flotta di cluster Kubernetes situati on-premise, nel cloud e tra più fornitori di terze parti. Prima o poi, qualsiasi azienda le cui attività sono legate all'IT si trova costretta a supportare molti cluster eterogenei situati presso diversi fornitori. Ogni cluster si trasforma in una palla di neve che necessita di un’organizzazione competente, di infrastrutture adeguate, di politiche, di protezione, di sistemi di monitoraggio e molto altro ancora.

Al giorno d'oggi, qualsiasi azienda si impegna a ridurre i costi e ad automatizzare i processi di routine. E il complesso panorama IT chiaramente non favorisce il risparmio e la concentrazione sui compiti prioritari. Tanzu Mission Control offre alle organizzazioni la possibilità di gestire più cluster Kubernetes distribuiti su più provider armonizzando al tempo stesso il modello operativo.

Architettura della soluzione

Presentazione del controllo missione Tanzu

Tanzu Mission Control è una piattaforma multi-tenant che offre agli utenti l'accesso a una serie di policy altamente configurabili che possono essere applicate ai cluster Kubernetes e ai gruppi di cluster. Ogni utente è legato a un'organizzazione, che è la "radice" delle risorse: gruppi di cluster e aree di lavoro.

Presentazione del controllo missione Tanzu

Cosa può fare Tanzu Mission Control

Sopra abbiamo già elencato brevemente l'elenco delle funzioni della soluzione. Vediamo come viene implementato nell'interfaccia.

Una visione unica di tutti i cluster Kubernetes nell'azienda:

Presentazione del controllo missione Tanzu

Creazione di un nuovo cluster:

Presentazione del controllo missione Tanzu

Presentazione del controllo missione Tanzu

Puoi assegnare immediatamente un gruppo a un cluster e questo erediterà le policy ad esso assegnate.

Connessione al cluster:

Presentazione del controllo missione Tanzu

I cluster già esistenti possono essere semplicemente collegati utilizzando un agente speciale.

Raggruppamento di cluster:

Presentazione del controllo missione Tanzu

In Gruppi di cluster è possibile raggruppare i cluster per ereditare le policy assegnate immediatamente a livello di gruppo, senza intervento manuale.

Aree di lavoro:

Presentazione del controllo missione Tanzu

Fornisce la possibilità di configurare in modo flessibile l'accesso a un'applicazione che si trova all'interno di diversi spazi dei nomi, cluster e infrastrutture cloud.

Diamo uno sguardo più da vicino ai principi operativi di Tanzu Mission Control nel lavoro di laboratorio.

Laboratorio n.1

Naturalmente, è abbastanza difficile immaginare in dettaglio il funzionamento del Mission Control e delle nuove soluzioni Tanzu senza pratica. Per consentirti di esplorare le principali caratteristiche della linea, VMware fornisce l'accesso a diversi banchi da laboratorio. Questi banchi consentono di eseguire lavori di laboratorio utilizzando istruzioni passo passo. Oltre allo stesso Tanzu Mission Control, sono disponibili altre soluzioni per test e studio. È possibile trovare un elenco completo dei lavori di laboratorio in questa pagina.

Per la conoscenza pratica delle varie soluzioni (incluso un piccolo “gioco” su vSAN) vengono assegnati tempi diversi. Non preoccuparti, sono cifre molto relative. Ad esempio, un laboratorio su Tanzu Mission Control può essere "risolto" fino a 9 ore e mezza passando da casa. Inoltre, anche se il tempo scade, puoi tornare indietro e ripetere tutto da capo.

Superamento del lavoro di laboratorio n. 1
Per accedere ai laboratori avrai bisogno di un account VMware. Dopo l'autorizzazione si aprirà una finestra pop-up con la struttura principale dell'opera. Istruzioni dettagliate verranno visualizzate sul lato destro dello schermo.

Dopo aver letto una breve introduzione a Tanzu, sarai invitato a esercitarti nella simulazione interattiva di Mission Control.

Si aprirà una nuova finestra pop-up del computer Windows e ti verrà chiesto di eseguire alcune operazioni di base:

  • creare un cluster
  • configurarne i parametri di base
  • aggiorna la pagina e assicurati che tutto sia configurato correttamente
  • impostare le policy e controllare il cluster
  • creare uno spazio di lavoro
  • creare lo spazio dei nomi
  • lavorare nuovamente con le politiche, ogni passaggio è spiegato in dettaglio nel manuale
  • aggiornamento del cluster dimostrativo


Naturalmente, la simulazione interattiva non offre abbastanza libertà per lo studio indipendente: ci si muove lungo binari predisposti dagli sviluppatori.

Laboratorio n.2

Qui siamo già alle prese con qualcosa di più serio. Questo lavoro di laboratorio non è legato ai “binari” come il precedente e richiede uno studio più attento. Non lo presenteremo qui nella sua interezza: per risparmiare tempo, analizzeremo solo il secondo modulo, il primo è dedicato all'aspetto teorico del lavoro di Tanzu Mission Control. Se lo desideri, puoi affrontarlo completamente da solo. Questo modulo ci offre un approfondimento sulla gestione del ciclo di vita dei cluster attraverso Tanzu Mission Control.

Nota: il lavoro del laboratorio di Tanzu Mission Control viene regolarmente aggiornato e perfezionato. Se durante il completamento del lab alcune schermate o passaggi differiscono da quelli seguenti, segui le istruzioni sul lato destro dello schermo. Esamineremo la versione attuale della LR al momento in cui scriviamo e ne considereremo gli elementi chiave.

Superamento del lavoro di laboratorio n. 2
Dopo il processo di autorizzazione in VMware Cloud Services, lanciamo Tanzu Mission Control.

Presentazione del controllo missione Tanzu

Il primo passo suggerito dal laboratorio è la distribuzione di un cluster Kubernetes. Per prima cosa dobbiamo accedere alla VM Ubuntu utilizzando PuTTY. Avvia l'utilità e seleziona una sessione con Ubuntu.

Presentazione del controllo missione Tanzu

Eseguiamo tre comandi a turno:

  • creazione di un cluster: kind create cluster --config 3node.yaml --name=hol
  • caricamento del file KUBECONFIG: export KUBECONFIG="$(kind get kubeconfig-path --name="hol")"
  • uscita del nodo: kubectl get nodes

Presentazione del controllo missione Tanzu

Ora il cluster che abbiamo creato deve essere aggiunto a Tanzu Mission Control. Da PuTTY torniamo su Chrome, andiamo su Clusters e clicchiamo ALLEGARE CLUSTER.
Seleziona un gruppo dal menu a discesa - difetto, inserisci il nome suggerito dal laboratorio e clicca REGISTRATI.

Presentazione del controllo missione Tanzu

Copia il comando ricevuto e vai su PuTTY.

Presentazione del controllo missione Tanzu

Eseguiamo il comando ricevuto.

Presentazione del controllo missione Tanzu

Per monitorare i progressi, esegui un altro comando: watch kubectl get pods -n vmware-system-tmc. Aspettiamo finché tutti i contenitori non abbiano uno stato corsa o Completato.

Presentazione del controllo missione Tanzu

Torna a Tanzu Mission Control e fai clic VERIFICARE LA CONNESSIONE. Se tutto è andato bene, gli indicatori di tutti i controlli dovrebbero essere verdi.

Presentazione del controllo missione Tanzu

Ora creiamo un nuovo gruppo di cluster e distribuiamo lì un nuovo cluster. Vai a Gruppi di cluster e fai clic su NUOVO GRUPPO CLUSTER. Immettere il nome e fare clic CREA.

Presentazione del controllo missione Tanzu

Il nuovo gruppo dovrebbe apparire immediatamente nell'elenco.

Presentazione del controllo missione Tanzu

Distribuiamo un nuovo cluster: vai a Cluster, stampa NUOVO GRUPPO e seleziona l'opzione associata al lavoro di laboratorio.

Presentazione del controllo missione Tanzu

Aggiungiamo il nome del cluster, selezioniamo il gruppo ad esso assegnato, nel nostro caso laboratori pratici, e la regione di distribuzione.

Presentazione del controllo missione Tanzu

Sono disponibili altre opzioni durante la creazione di un cluster, ma non ha senso modificarle durante il lab. Seleziona la configurazione che ti serve e clicca Avanti.

Presentazione del controllo missione Tanzu

Alcuni parametri devono essere modificati, per fare ciò, fare clic su Modifica.

Presentazione del controllo missione Tanzu

Aumentiamo il numero di nodi funzionanti a due, salviamo i parametri e facciamo clic CREA.
Durante il processo vedrai una barra di avanzamento come questa.

Presentazione del controllo missione Tanzu

Dopo una distribuzione riuscita, vedrai questa immagine. Tutte le ricevute devono essere verdi.

Presentazione del controllo missione Tanzu

Ora dobbiamo scaricare il file KUBECONFIG per gestire il cluster utilizzando i comandi kubectl standard. Questo può essere fatto direttamente tramite l'interfaccia utente di Tanzu Mission Control. Scarica il file e procedi con il download della CLI di Tanzu Mission Control facendo clic su clicca qui.

Presentazione del controllo missione Tanzu

Seleziona la versione desiderata e scarica la CLI.

Presentazione del controllo missione Tanzu

Ora dobbiamo ottenere il token API. Per fare questo, vai a Il Mio Account e generare un nuovo token.

Presentazione del controllo missione Tanzu

Compila i campi e clicca CREARE.

Presentazione del controllo missione Tanzu

Copia il token risultante e fai clic CONTINUA. Apri Power Shell e inserisci il comando tmc-login, quindi il token che abbiamo ricevuto e copiato nel passaggio precedente, quindi Nome contesto accesso. Scegliere info log tra quelli proposti, regione e olympus-default come chiave ssh.

Presentazione del controllo missione Tanzu

Otteniamo gli spazi dei nomi:kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get namespaces.

Introdurre kubectl --kubeconfig=C:UsersAdministratorDownloadskubeconfig-aws-cluster.yml get nodesper assicurarsi che tutti i nodi siano nello stato Pronto.

Presentazione del controllo missione Tanzu

Ora dobbiamo distribuire una piccola applicazione in questo cluster. Facciamo due implementazioni - coffee e tea - sotto forma di servizi coffee-svc e tea-svc, ognuno dei quali lancia immagini diverse - nginxdemos/hello e nginxdemos/hello:plain-text. Questo viene fatto come segue.

Attraverso PowerShell vai su download e trova il file cafe-services.yaml.

Presentazione del controllo missione Tanzu

A causa di alcuni cambiamenti nell'API, dovremo aggiornarla.

I criteri di sicurezza dei pod sono abilitati per impostazione predefinita. Per eseguire applicazioni con privilegi, devi collegare il tuo account.

Creare un'associazione: kubectl --kubeconfig=kubeconfig-aws-cluster.yml create clusterrolebinding privileged-cluster-role-binding --clusterrole=vmware-system-tmc-psp-privileged --group=system:authenticated
Distribuiamo l'applicazione: kubectl --kubeconfig=kubeconfig-aws-cluster.yml apply -f cafe-services.yaml
Controlliamo: kubectl --kubeconfig=kubeconfig-aws-cluster.yml get pods

Presentazione del controllo missione Tanzu

Il modulo 2 è finito, sei bellissima e straordinaria! Ti consigliamo di completare autonomamente i moduli rimanenti, inclusa la gestione delle policy e i controlli di conformità.

Se desideri completare questo lab nella sua interezza, puoi trovarlo qui nel catalogo. E passeremo alla parte finale dell'articolo. Parliamo di ciò che siamo riusciti a vedere, traiamo le prime conclusioni precise e diciamo in dettaglio cosa è Tanzu Mission Control in relazione ai reali processi aziendali.

Opinioni e conclusioni

Naturalmente è troppo presto per parlare delle questioni pratiche legate al lavoro con Tanzu. Non ci sono così tanti materiali per lo studio autonomo e oggi non è possibile utilizzare un banco di prova per "colpire" un nuovo prodotto da tutti i lati. Tuttavia, anche dai dati disponibili si possono trarre alcune conclusioni.

Vantaggi del controllo missione Tanzu

Il sistema si è rivelato davvero interessante. Vorrei evidenziare subito alcune chicche comode e utili:

  • Puoi creare cluster tramite il pannello web e tramite la console, cosa che piacerà molto agli sviluppatori.
  • La gestione RBAC tramite aree di lavoro è implementata nell'interfaccia utente. Non funziona ancora in laboratorio, ma in teoria è un’ottima cosa.
  • Gestione dei privilegi centralizzata basata su modelli
  • Accesso completo agli spazi dei nomi.
  • Editore YAML.
  • Creazione di politiche di rete.
  • Monitoraggio dello stato del cluster.
  • Possibilità di eseguire il backup e il ripristino tramite la console.
  • Gestisci quote e risorse con visualizzazione dell'utilizzo effettivo.
  • Avvio automatico dell'ispezione del cluster.

Ancora una volta, molti componenti sono attualmente in fase di sviluppo, quindi è troppo presto per parlare pienamente dei pro e dei contro di alcuni strumenti. A proposito, Tanzu MC, sulla base della dimostrazione, può aggiornare un cluster al volo e, in generale, fornire l'intero ciclo di vita di un cluster a più provider contemporaneamente.

Ecco alcuni esempi “di alto livello”.

Al cluster di qualcun altro con il proprio statuto

Supponiamo che tu abbia un team di sviluppo con ruoli e responsabilità chiaramente definiti. Ognuno è impegnato con i propri affari e non dovrebbe nemmeno interferire accidentalmente con il lavoro dei propri colleghi. Oppure il team ha uno o più specialisti meno esperti ai quali non vuoi concedere diritti e libertà non necessari. Supponiamo anche che tu abbia Kubernetes da tre provider contemporaneamente. Di conseguenza, per limitare i diritti e portarli a un denominatore comune, dovrai recarti uno per uno in ciascun pannello di controllo e registrare tutto manualmente. D'accordo, non è il passatempo più produttivo. E più risorse hai, più noioso sarà il processo. Tanzu Mission Control ti consentirà di gestire la definizione dei ruoli da una "finestra unica". A nostro avviso, questa è una funzione molto comoda: nessuno romperà nulla se ti dimentichi accidentalmente di specificare da qualche parte i diritti necessari.

A proposito, i nostri colleghi di MTS nel loro blog rispetto Kubernetes dal fornitore e open source. Se desideri da tempo sapere quali sono le differenze e cosa cercare nella scelta, benvenuto.

Lavoro compatto con i tronchi

Un altro esempio tratto dalla vita reale è lavorare con i log. Supponiamo che il team abbia anche un tester. Un bel giorno va dagli sviluppatori e annuncia: "è stato trovato un bug nell'applicazione, lo sistemeremo urgentemente". È naturale che la prima cosa con cui uno sviluppatore vorrà conoscere siano i log. Inviarli come file via email o Telegram è una cattiva educazione e risale al secolo scorso. Mission Control offre un'alternativa: puoi impostare diritti speciali per lo sviluppatore in modo che possa leggere solo i log in uno spazio dei nomi specifico. In questo caso, il tester deve solo dire: "ci sono bug in questa o quell'applicazione, in questo e quell'altro campo, in questo e quell'altro namespace", e lo sviluppatore può facilmente aprire i log ed essere in grado di localizzare il problema. E a causa dei diritti limitati, non sarai in grado di risolverlo immediatamente se la tua competenza non lo consente.

Un cluster sano ha un'applicazione sana.

Un'altra grande caratteristica di Tanzu MC è il monitoraggio dello stato del cluster. A giudicare dai materiali preliminari, il sistema consente di visualizzare alcune statistiche. Al momento è difficile dire esattamente quanto dettagliate saranno queste informazioni: finora tutto sembra abbastanza modesto e semplice. Viene monitorato il carico della CPU e della RAM, viene mostrato lo stato di tutti i componenti. Ma anche in una forma così spartana è un dettaglio molto utile ed efficace.

Risultati di

Naturalmente, nella presentazione in laboratorio di Mission Control, in condizioni apparentemente sterili, ci sono alcuni bordi irregolari. Probabilmente li noterai tu stesso se decidi di passare attraverso il lavoro. Alcuni aspetti non sono resi in modo sufficientemente intuitivo: anche un amministratore esperto dovrà leggere il manuale per comprendere l'interfaccia e le sue capacità.

Tuttavia, data la complessità del prodotto, la sua importanza e il ruolo che svolgerà sul mercato, il risultato è stato grandioso. Sembra che i creatori abbiano cercato di migliorare il flusso di lavoro dell'utente. Rendi ogni elemento di controllo il più funzionale e comprensibile possibile.

Non resta che provare Tanzu su un banco di prova per capirne davvero tutti i pro, i contro e le innovazioni. Non appena si presenterà tale opportunità, condivideremo con i lettori di Habr un rapporto dettagliato sull'utilizzo del prodotto.

Fonte: habr.com

Aggiungi un commento