Torna al blog

Installazione di software su Kubernetes con il Package Manager Helm 3 su Windows

Installazione di software su Kubernetes con il Package Manager Helm 3 su Windows

Se provieni da un background di sviluppo, probabilmente conosci il termine Package Manager. I Package Manager ti consentono di installare dipendenze, aggiornare e retrocedere le versioni, e così via. In questo tutorial, vedremo un gestore di pacchetti molto popolare per Kubernetes, chiamato Helm.

Helm assiste nella gestione delle applicazioni Kubernetes. Con Helm, puoi definire un'applicazione Kubernetes, specificando i metadati, le dipendenze e le configurazioni dell'applicazione. Helm può anche installare applicazioni su Kubernetes, oltre ad aggiornare e retrocedere le applicazioni. Infine, puoi condividere la tua applicazione con altri utilizzando il file Helm. In questo tutorial, ti mostreremo come installare Helm 3, oltre a configurare, aggiornare, ripristinare e gestire chart e release su Windows OS.

Iniziamo!

Prerequisiti

Prima di iniziare il tutorial, devi assicurarti di avere prima le seguenti installazioni:

  • Se non hai configurato Kubernetes su Windows, il modo più semplice è iniziare con Docker Desktop. Vai su https://www.docker.com/products/docker-desktop. Scarica e installa Docker Desktop. In questo tutorial lavoreremo con Windows. Pertanto, dovremo installare WSL 2 Backend. Questo è un sottosistema Linux per Windows e abilita il supporto per Docker:

Docker Desktop Kubernetes with Helm

Una volta che Docker Desktop è pronto, vai su Impostazioni -> Kubernetes, e spunta l'opzione che dice Enable Kubernetes:

Docker Settings Kubernetes with Helm

Enable k8s Kubernetes with Helm

Per verificare se tutto funziona correttamente, vai sul terminale/powershell di qualsiasi sistema tu stia utilizzando e digita il comando seguente:

Se vedi l'output seguente, sei pronto a partire:

kubectl Kubernetes with Helm

In alternativa, se decidi di lavorare su Ubuntu puoi seguire la nostra guida dettagliata: Come installare e utilizzare Kubernetes su Ubuntu 20.04.

Inoltre, prima di iniziare con il processo di installazione, diamo un'occhiata ad alcuni termini chiave associati a Helm.

  • Chart

 I file YAML di Kubernetes sono pacchettizzati nei chart di Helm.

  • Repository Helm

Helm fornisce supporto per i repository. Un repository Helm è una posizione che ospita i chart di Helm in modo che altri possano usarli. Helm ti consente di creare i tuoi repository e supporta anche repository di terze parti.

  • Tiller

Tiller è il componente server di Helm. Deve essere installato sul cluster Kubernetes. Prende il Chart di Helm e configura il cluster di conseguenza.

Puoi anche dare un'occhiata al nostro articolo del blog che fornisce una panoramica dettagliata di Helm e spiega i metodi di Helm per semplificare la distribuzione delle applicazioni su Kubernetes.

Ora siamo pronti per iniziare!

Passo 1: Installare Helm 3

L'installazione di Helm 3 è un processo semplice. Le release sono disponibili sulla pagina GitHub di Helm. Puoi scaricare la release che utilizzerai in base al sistema operativo di tua scelta. In questo tutorial utilizzeremo il sistema operativo Windows, quindi per Windows segui i passaggi seguenti:

  1. Nella pagina GitHub, scarica i binari di Helm per Windows.

  2. Once the download has been finished, you will find the zipped archive in your Download folders or wherever you have downloaded it.

  3. Successivamente, sposta questo archivio in una posizione comoda ed estrailo. Dovresti trovare il file helm.exe nei contenuti estratti:
    helm_binary

  4. Copia il percorso della cartella e aggiungilo alla variabile PATH nelle variabili d'ambiente del tuo sistema.

  5. Una volta terminato, apri il terminale e digita il comando seguente:

Se vedi l'output seguente, hai completato l'installazione di Helm. Puoi quindi passare ai passaggi successivi:

helm

Passo 2: Configurare i repository e installare un Helm Chart

Helm supporta l'accesso e la gestione dei repository. I repository sono i luoghi in cui vengono memorizzati i Chart di Helm. Inizialmente, Helm non ha un proprio repository. Piuttosto, Helm incoraggia i gestori e gli specialisti DevOps a creare i propri repository. Ciò significa che se vuoi avere MongoDB sul tuo cluster Kubernetes dovrai aggiungerlo tu stesso al Repository Helm. Per aiutarti a trovare i repository, puoi utilizzare Artifact.io. È un catalogo open-source per tutti i chart di Helm, gestito da la CNCF.

Di seguito ti mostreremo come configurare un repository e scaricare e installare il software. Prenderemo l'installazione di MongoDB come esempio. Supponiamo che tu debba installare MongoDB sul tuo cluster Kubernetes. Segui i passaggi seguenti per l'installazione:

  1. Per prima cosa, vai su https://artifacthub.io.

  2. Successivamente, cerca MongoDB. Una volta effettuata la ricerca, vedrai che sono disponibili molte opzioni. Quella che ci interessa è MongoDB by Bitnami:
    search_mongodb

  3. Al termine della ricerca vedrai diverse opzioni. Per ogni chart, puoi vedere l'editore, la versione e altre informazioni rilevanti. Una volta individuata la chart desiderata, devi selezionarla. Qui stiamo cliccando su MongoDB by Bitnami:
    select_mongodb

  4. Ora può effettivamente iniziare la parte tecnica. Se guardi la descrizione generale vedrai che è presente una buona guida per chiunque desideri installare uno qualsiasi dei servizi. Puoi verificare diverse opzioni, configurazioni, parametri, come eliminare la chart e qualsiasi altra cosa su cui potresti aver bisogno di informazioni. Trova il pulsante Install e cliccalo:
    mongodb_install Kubernetes with Helm

  5. Ecco tutto ciò di cui hai bisogno per installare MongoDB. Per prima cosa, devi aggiungere il repository e poi installare la chart. Per aggiungere il repository, apri il terminale e digita il comando:

Troverai il seguente output:

repo_add_bitnami

Ora che hai configurato il repository, devi installare la chart. Copia il comando dalla finestra di dialogo e poi eseguilo:

Una volta terminato il processo, avrai finito con MongoDB.

Passaggio 3: Gestione delle release

Nello sviluppo software, la gestione delle release è fondamentale. Ci sono sempre momenti in cui è necessario aggiornare o ripristinare versioni precedenti. Fortunatamente, la gestione delle release in Helm è un processo relativamente semplice. Helm conserva i numeri di versione in modo da poter sempre tornare alla versione precedente. Allo stesso modo, supponiamo che la tua applicazione sia distribuita e attiva e che tu debba effettuare delle configurazioni: Helm supporta anche questo. Di seguito esamineremo alcune best practice per aiutarti a eseguire queste operazioni.

  • Come aggiornare l'applicazione

Supponiamo che nel tuo values.YAML file, tu indichi che devi avere due istanze dell'applicazione in esecuzione. Questo potrebbe essere dovuto al fatto che la tua applicazione deve essere ad alta disponibilità. Ma in seguito, ti rendi conto che l'applicazione deve avere tre istanze. Senza Helm, dovrai prima gestire l'applicazione e poi configurarla e ridistribuirla. Usando Helm, puoi prima apportare modifiche nel values.YAML file e poi semplicemente eseguire il comando seguente. Nella directory in cui si trovano i file di Helm, esegui il seguente comando:

  • Come effettuare il rollback della release

Ora supponiamo che la tua release si rompa. Forse hai configurato numeri di porta o percorsi errati. Per ripristinare una qualsiasi versione precedente, tutto ciò che devi fare è eseguire il comando seguente, e poi Helm riporterà la release alla versione precedente:

Helm si occuperà di tutte le release e del controllo delle versioni. Questo è uno dei maggiori vantaggi dell'utilizzo di Helm con Kubernetes. Per vedere tutte le release di qualsiasi applicazione, esegui il comando seguente nella directory contenente le chart di Helm e i file YAML:

Passaggio 4: Crea la tua chart

Infine, ora che hai acquisito familiarità con Helm e hai capito come funziona, è il momento di creare la tua chart. Creando la tua chart personalizzata, puoi distribuire facilmente la tua applicazione e ospitarla in qualsiasi repository. Creare la tua chart è un processo piuttosto semplice se segui i passaggi che descriveremo di seguito. Per prima cosa, apri il terminale ed esegui il comando seguente:

Questo creerà la directory con il nome che hai fornito. Stiamo usando il nome my-app. Vediamo il contenuto della cartella:

Otterrai la struttura seguente:

Ecco un riepilogo del contenuto dell'output:

  • cartella charts – Utilizzata per aggiungere chart dipendenti.
  • cartella templates – Configurazione che verrà distribuita nel cluster.
  • File YAML – Schema della struttura del chart Helm.
  • File YAML – Informazioni di formattazione per la configurazione del chart.

Successivamente, segui i passaggi seguenti per installare e configurare il tuo chart:

  • Configura l'immagine e il pull

Apri il file values.YAML. Qui trova il nodo dell'immagine. Quindi, puoi configurarlo come desideri. I valori possibili sono IfNotPresent, Always, Latest. Puoi trovare l'insieme completo dei valori nella documentazione ufficiale.

  • Sovrascrivi il nome del chart

Questo passaggio è facoltativo, quindi puoi saltarlo se lo desideri:
override

  • Nome del servizio

Apri il file values.YAML e individua il serviceName. Quindi, aggiungi il nome desiderato. È consigliabile avere un nome pronto prima di installare il chart:
service_name

  • Installa il chart

Infine, per installare il chart esegui il comando seguente:

Ti consigliamo di esplorare attentamente tutte le opzioni presenti per configurare il tuo chart prima di distribuirlo sul cluster.

Perché gli sviluppatori amano Helm

Helm sta guadagnando popolarità tra gli sviluppatori e gli specialisti DevOps che devono periodicamente avviare e arrestare i deployment. Ecco alcuni dei principali vantaggi di Helm:

  1. Helm semplifica il processo di deployment. Non introduce nulla di nuovo da imparare, piuttosto rende i deployment YAML esistenti facilmente configurabili dall'utente.

  2. Invece di modificare frequentemente la configurazione, come il numero di cluster o di porte, Helm la rende facilmente configurabile. Tutto ciò che l'utente deve fare è aggiornare i valori nel file values.YAML .

  3. Helm consente di condividere l'applicazione con altri utenti impacchettandola nei repository.

Conclusione

In questo tutorial, abbiamo visto come configurare il package manager Helm da zero su Windows. Abbiamo esaminato diversi concetti chiave che devono essere compresi chiaramente per sfruttare la potenza di Helm. Abbiamo anche visto diverse funzionalità disponibili all'interno dei repository esplorati di Helm. Ora dovresti sentirti a tuo agio con Helm e poterlo implementare nel tuo prossimo progetto/deployment Kubernetes.

Per aumentare ulteriormente la tua conoscenza di Kubernetes e delle sue funzionalità, puoi dare un'occhiata ad altri tutorial sul nostro blog:

Buon computing!

author

Pranay Kapgate

Autore · CloudSigma

Preslav Dobrev è un designer creativo presso CloudSigma, con un focus su un'identità aziendale coerente attraverso l'uso di canali di marketing tradizionali e innovativi. È abile nel fondere la visione artistica con il marketing strategico per creare narrazioni di brand di grande impatto.

Commenti

Ancora nessun commento. Scrivi il primo.