La distribuzione di applicazioni su un cluster Kubernetes può essere una faccenda complessa. Spesso richiede agli utenti di creare vari file manifest YAML per creare pod, servizi e set di replica. Helm è un gestore di pacchetti opensource per Kubernetes che consente agli sviluppatori di automatizzare senza problemi il processo di distribuzione e configurazione delle applicazioni in un cluster Kubernetes. Se non conosci Kubernetes, potresti voler prima familiarizzare con i concetti di base di Kubernetes.
In questa guida, ti forniremo una panoramica di Helm e di come può essere utile nella gestione di applicazioni e pacchetti nel cluster Kubernetes. Al momento della stesura di questa guida, l'ultima versione è Helm v3.
Terminologie e concetti di base del timone
Come con qualsiasi tecnologia, è bene esaminare alcune terminologie per comprendere meglio come funziona. Ma fondamentalmente, Helm comprende due elementi:Helm che è un client e Tiller, che è un server. Il timone funziona all'interno del cluster Kubernetes. Diamo ora uno sguardo alle definizioni:
- Timone:questa è un'interfaccia a riga di comando che ti consente di definire, distribuire e aggiornare le applicazioni Kubernetes utilizzando i grafici.
- Tiller:questo è un componente server che viene eseguito in un cluster Kubernetes e accetta comandi da helm. Gestisce la distribuzione e la configurazione delle applicazioni software sul cluster.
- Grafico:questa è una raccolta di pacchetti helm che comprendono i file di configurazione YAML e i modelli che vengono renderizzati nei file manifest di Kubernetes. Un singolo grafico può distribuire una semplice applicazione come un pod con memorizzazione nella cache o un'applicazione Web completa con un database, ecc. I grafici sono abbastanza facili da creare, pubblicare e condividere.
- Repository grafici:questa è una posizione o un database in cui i grafici possono essere raccolti e condivisi.
- Rilascio:è un'istanza del grafico in esecuzione all'interno di un cluster Kubernetes. Può essere installato quante più volte possibile secondo il desiderio di un utente e ogni volta che accade, viene creata una nuova versione.
Helm semplifica le implementazioni e i processi standardizzati e riutilizzabili. Questo lo rende un ottimo modo per gestire un cluster Kubernetes. I grafici Helms sono particolarmente utili in quanto ti aiutano a iniziare senza ricominciare da capo.
Come installare Helm su Kubernetes Cluster
Poiché Helm funziona in un cluster Kubernetes, assicurati di aver prima configurato un cluster Kubernetes. Assicurati inoltre che tutti i nodi siano pronti. Puoi ottenerlo eseguendo il comando dal piano di controllo:
$ kubectl get nodes
Ci sono un paio di modi per installare helm, ma il più semplice di tutti è usare uno script automatico. Quindi, vai avanti e scarica lo script automatico usando il comando curl come mostrato:
$ curl -fsSL -o get_helm.sh \ https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3
Concedi le autorizzazioni di esecuzione ed esegui lo script come segue.
$ chmod 700 get_helm.sh $ ./get_helm.sh
Helm verrà installato nella directory /usr/local/bin.
Per verificare la versione di helm, esegui:
$ helm version
Utilizzo di Helm nel cluster Kubernetes
Il primo passaggio nell'utilizzo di helm è l'installazione dei grafici sul sistema locale. L'hub Artifacts contiene centinaia di repository di grafici pubblici che puoi installare localmente sul tuo sistema. Artifacts Hub è un progetto opensource che contiene migliaia di pacchetti Kubernetes.
Per installare un grafico dall'hub Artifacts, cerca il nome del grafico nel campo di testo fornito. In questo esempio, stiamo cercando il grafico MariaDB.
Quando premi INVIO, ti verrà fornito un elenco di grafici tra cui scegliere.
Seleziona il tuo grafico preferito e ti verrà fornito un elenco di istruzioni su come installarlo
Aggiunta di un repository di grafici
Prima di installare un grafico, devi prima aggiungere un repository di grafici. Per ottenere ciò, usa la sintassi:
$ helm repo aggiungi [chart_repo] [URL grafico]
Ad esempio, per installare il grafico MariaDB, eseguire:
$ helm repo add bitnami https://charts.bitnami.com/bitnami
L'output confermerà che il repository del grafico è stato aggiunto correttamente al tuo sistema.
Installazione di un grafico
Una volta aggiunto il repository del grafico, puoi installare il grafico utilizzando la sintassi:
$ helm install [nome-rilascio] [chart_repo]/[nome-grafico]
Ad esempio, per installare il grafico MariaDB con un nome my-release esegui:
$ helm install my-release bitnami/mariadb
Il client di timone stampa un elenco delle risorse create e ulteriori passaggi di configurazione che puoi eseguire.
Una volta fatto, puoi elencare il grafico installato usando il comando:
$ helm ls
Per rileggere le informazioni di configurazione, eseguire:
$ nome rilascio stato timone
In questo caso:
$ helm status my-release
Creare il tuo grafico
Puoi anche creare il tuo grafico usando il comando:
$ timone crea nome-grafico
Ad esempio, per creare un grafico chiamato my-chart eseguire:
$ helm create my-chart
Puoi controllare la struttura delle directory del grafico usando il comando ad albero mostrato:
$ tree my-chart/
Rimozione di un grafico
Per disinstallare un grafico, usa la sintassi
$ helm elimina nome-rilascio
Ad esempio, per eliminare il grafico attualmente installato, il comando sarà:
$ helm delete my-release
Richiedere aiuto
Per ottenere più opzioni sull'utilizzo dell'interfaccia a riga di comando di helm, esegui il comando seguente
$ helm get -h
Conclusione:
Per ulteriori informazioni sul timone e sui suoi comandi, consulta la documentazione del timone
Leggi anche : Come configurare il controller di ingresso NGINX in Kubernetes