Chart Helm e manifest Kubernetes in CI/CD
Confezioni e versioni i deployment Kubernetes con i chart Helm, parametrizzi la configurazione per ambiente e automatizzi i rilasci dei chart da GitHub Actions.
Chart Helm e manifest Kubernetes in CI/CD è una lezione DevOps Bootcamp gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento DevOps Bootcamp, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso DevOps Bootcamp include 4 lezioni in totale.
Il problema della proliferazione dei manifest
La distribuzione su Kubernetes richiede la scrittura di molti manifest YAML: Deployments, Services, ConfigMaps e Ingresses. Copiarli per ogni ambiente diventa rapidamente ingestibile.
Helm risolve il problema raggruppando i manifest in un chart riutilizzabile e versionato.
Che cos'è Helm
Helm è il package manager di Kubernetes. Un chart è un insieme di manifest basati su template e valori predefiniti.
Chart.yaml— metadati e versione del chartvalues.yaml— configurazione predefinitatemplates/— template dei manifest
Struttura di un chart
Una directory tipica di un chart ha questo aspetto. Helm usa i valori per elaborare i template e produrre il file YAML finale di Kubernetes.
mychart/
Chart.yaml
values.yaml
templates/
deployment.yaml
service.yamlCreare template con i valori
I template utilizzano segnaposto che recuperano i valori da values.yaml. In questo modo un solo template può essere utilizzato in molti ambienti.
# templates/deployment.yaml
spec:
replicas: {{ .Values.replicaCount }}
image: {{ .Values.image.repository }}:{{ .Values.image.tag }}Valori per ambiente
Mantenga un file dei valori separato per ogni ambiente e lo passi al momento dell'installazione. In staging potrebbe essere eseguita una replica, mentre in produzione cinque.
helm upgrade --install myapp ./mychart \
-f values-prod.yaml \
--namespace productionInstallazione e aggiornamento
Il comando helm upgrade --install è idempotente: installa la release se non esiste oppure la aggiorna se esiste già.
Questo singolo comando è ideale per la CI/CD perché funziona sia alla prima distribuzione sia per quelle successive.
Impostare il tag dell'immagine in CI
In CI si inserisce generalmente il tag dell'immagine appena compilata, spesso lo SHA del commit, utilizzando --set.
In questo modo la release Kubernetes viene associata all'artefatto esatto appena prodotto dalla pipeline.
- run: |
helm upgrade --install myapp ./mychart \
--set image.tag=${{ github.sha }}Eseguire il lint dei chart
Prima della distribuzione, convalidi il chart con helm lint ed esegua il rendering con helm template per rilevare tempestivamente gli errori YAML o dei template.
- run: helm lint ./mychart
- run: helm template myapp ./mychart -f values-prod.yamlRollback con Helm
Helm tiene traccia di ogni release come una revisione numerata. Se un deploy va storto, può eseguire subito un rollback.
Questo si integra bene con le pratiche di disaster recovery perché è rapido e deterministico.
helm history myapp
helm rollback myapp 3Creazione e pubblicazione dei pacchetti
I chart possono essere impacchettati in archivi versionati e inviati a un repository di chart o a un registro OCI, proprio come le immagini dei container.
In questo modo, gli altri team possono usare il chart in base alla versione.
helm package ./mychart
helm push myapp-1.2.0.tgz oci://registry.example.com/chartsUn job di deploy con Helm
Mettiamo tutto insieme: esegua l'autenticazione al cluster, configuri Helm e quindi esegua l'upgrade. L'azione Azure setup-helm installa la CLI sul runner.
- uses: azure/setup-helm@v4
- run: |
helm upgrade --install myapp ./mychart \
-f values-prod.yaml \
--set image.tag=${{ github.sha }} \
--waitVerifica rapida
Verifichi la Sua comprensione di Helm in CI/CD.
Riepilogo
Ha imparato a eseguire il deploy di app Kubernetes con Helm.
- I chart impacchettano manifest con template e
values.yaml - I file dei valori specifici per ambiente configurano staging e produzione
helm upgrade --installè il comando di deploy CI idempotente- Le revisioni consentono rollback immediati e i chart possono essere pubblicati come le immagini
Helm trasforma i manifest grezzi in release versionate e riutilizzabili.
Domande Frequenti
La lezione «Chart Helm e manifest Kubernetes in CI/CD» è gratuita?
Sì — il testo completo di «Chart Helm e manifest Kubernetes in CI/CD» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso DevOps Bootcamp, passa a CoddyKit PRO. Il corso DevOps Bootcamp include 4 lezioni in totale.
Cosa imparerò in «Chart Helm e manifest Kubernetes in CI/CD»?
Confezioni e versioni i deployment Kubernetes con i chart Helm, parametrizzi la configurazione per ambiente e automatizzi i rilasci dei chart da GitHub Actions. Eserciti DevOps Bootcamp con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare DevOps Bootcamp?
Non è richiesta alcuna esperienza precedente. DevOps Bootcamp su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.
Quanto tempo richiede la lezione «Chart Helm e manifest Kubernetes in CI/CD»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione DevOps Bootcamp?
Sì. Ogni lezione DevOps Bootcamp include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Creare immagini Docker con Actions
- Eseguire il push delle immagini nei registry
- Eseguire il deploy su Kubernetes con Actions
- Chart Helm e manifest Kubernetes in CI/CD