Het beheren van alle vele componenten van uw toepassing kan een uitdaging zijn als u gebruikt Kubernetes, zoals je waarschijnlijk wel weet. Dat is waar Helm om de hoek komt kijken; het is een oplossing die het voor u eenvoudiger maakt om uw Kubernetes-apps te beheren.
U kunt uw applicatie en elk onderdeel ervan definiëren en installeren met behulp van Helm's "charts"-functie.
In dit artikel ga ik u helpen bij het gebruik van Helm-diagrammen. U kunt ze zelf gebruiken. Zelfs als u helemaal nieuw bent bij Kubernetes, denk ik dat u zult profiteren van deze tutorial om de efficiëntie en beheersbaarheid van uw Kubernetes-implementaties te verbeteren.
Overzicht van Helm
Stuurstand is een Kubernetes-pakketbeheerder die het beheren en implementeren van apps eenvoudiger maakt. Door het gebruik van "grafieken" kunnen gebruikers geavanceerde Kubernetes-applicaties maken, installeren en upgraden. Een verzameling Kubernetes-resources en -configuraties kan gemakkelijk worden gedeeld.
Deze bronnen kunnen in verschillende toepassingen worden hergebruikt en worden gedefinieerd door grafieken die als sjablonen fungeren. Helm is een essentiële tool voor de implementatie van Kubernetes. Het heeft ook verschillende andere functies, waaronder rollback, versiebeheer en afhankelijkheidsbeheer.
Helm-grafieken
Helm-grafieken zijn vooraf geconfigureerde Kubernetes-resourcepakketten. Ze kunnen eenvoudig worden geïnstalleerd en gewijzigd met Helm. Diagrammen zijn samengesteld uit verschillende componenten, waaronder sjablonen, waardenbestanden en metagegevensbestanden die de verschillende bronnen specificeren waaruit het diagram bestaat.
Helm-grafieken kunnen worden opgeslagen in een grafiekrepository, een verzameling grafieken die kunnen worden gedeeld en gedistribueerd over verschillende omgevingen. Helm ondersteunt ook versiebeheer, waardoor gebruikers meerdere versies van hun grafieken kunnen bijhouden.
Ze kunnen dus indien nodig eenvoudig teruggaan naar eerdere versies.
Helm-grafieken en hun componenten
Helm-grafieken bestaan uit een verzameling bestanden die de Kubernetes-resources specificeren waaruit een applicatie bestaat. Deze bestanden bieden sjablonen die de vele Kubernetes-resources specificeren waaruit het diagram bestaat, zoals implementaties, services en pods.
Gebruikers kunnen deze sjablonen bewerken en specifieke parameters specificeren voor verschillende situaties met behulp van waardenbestanden. Metadatabestanden, zoals Grafiek. yaml, bevat informatie over het diagram, zoals de naam, versie en afhankelijkheden.
Charts repository en versiebeheer
Kaartopslagplaatsen kunnen op verschillende sites worden gehost, waaronder GitHub, GitLab en Amazon S3, en kan aan Helm worden toegevoegd met behulp van de opdracht helm repo add.
Helm ondersteunt ook versiebeheer, waardoor gebruikers meerdere versies van hun diagrammen kunnen bijhouden en indien nodig eenvoudig kunnen teruggaan naar eerdere versies.
Dit vereenvoudigt het beheer en de implementatie van verschillende versies van een applicatie in verschillende omgevingen, zoals ontwikkeling, staging en productie.
Voordelen van het gebruik van Helm-grafieken
Helm-grafieken hebben verschillende voordelen voor het beheren van Kubernetes-applicaties. Om te beginnen stellen grafieken gebruikers in staat om snel instellingen uit verschillende apps uit te wisselen en opnieuw te gebruiken, wat tijd en moeite bespaart bij het beheren van gecompliceerde installaties.
Kaarten kunnen ook worden geversioneerd en opgeslagen in een kaartrepository, waardoor de distributie en het onderhoud van meerdere versies van een applicatie eenvoudig is.
Waardebestanden kunnen worden gebruikt om grafieken aan te passen, waardoor het eenvoudig wordt om dezelfde applicatie in te zetten voor tal van instellingen met verschillende configuraties. Over het algemeen vereenvoudigen en schalen Helm-grafieken het beheer van complexe Kubernetes-configuraties.
Een helmgrafiek maken
Een Helm-diagram kan in een paar eenvoudige stappen worden gemaakt. Om te beginnen moet de Helm CLI op uw lokale computer zijn geïnstalleerd. Daarna kunt u beginnen met het ontwikkelen van uw grafiek.
Een stapsgewijze handleiding voor het maken van een Helm-diagram
Voer de opdracht helm create uit om een nieuwe grafiek te genereren. Hierdoor wordt een nieuwe map gemaakt met de gekozen kaartnaam, die de bestanden bevat die nodig zijn voor uw kaart.
U kunt metagegevens over uw diagram in de Chart.yaml-bestanden plaatsen, zoals hun naam, versie en beschrijving.
De standaardinstellingen voor uw grafiek worden gedefinieerd in het bestand values.yaml. Wanneer de kaart is geïnstalleerd, kunnen deze instellingen worden gewijzigd, waardoor personalisatie mogelijk is.
De map templates/ bevat de YAML-bestanden die de Kubernetes-resources specificeren die worden geproduceerd wanneer u de grafiek installeert. Deze bestanden kunnen worden aangepast aan de unieke vereisten van uw toepassing.
Nadat u klaar bent met het maken van uw diagram, gebruikt u de opdracht helm package om het in te pakken. Hierdoor wordt een a.tgz-bestand gegenereerd, dat kan worden opgeslagen in een kaartopslagplaats en kan worden geïnstalleerd met behulp van de opdracht helm install.
Verschillende componenten van een Helm Chart, zoals sjablonen en waardebestanden
Bij het bouwen van een Helm-diagram moet u bekend zijn met een aantal afzonderlijke componenten.
U kunt metagegevens over uw diagram invoeren in de Chart.yaml-bestanden, zoals hun naam, versie en beschrijving. Voor alle kaarten is dit bestand nodig.
De standaardinstellingen voor uw grafiek worden gedefinieerd in het bestand values.yaml. Wanneer de kaart is geïnstalleerd, kunnen deze instellingen worden gewijzigd, waardoor personalisatie mogelijk is. Alle kaarten hebben dit bestand ook nodig.
De map templates/ bevat de YAML-bestanden die de Kubernetes-resources specificeren die worden geproduceerd wanneer u de grafiek installeert. Deze bestanden kunnen worden aangepast aan de unieke vereisten van uw toepassing.
Praktische voorbeelden om gebruikers te helpen bij het maken van hun Helm-diagrammen
Er zijn veel Helm-kaartvoorbeelden online toegankelijk die kunnen worden gebruikt als uitgangspunt voor het ontwikkelen van uw kaarten. De Helm-documenten en de officiële Helm-kaartrepository geven beide verschillende voorbeelden.
Een praktisch voorbeeld is het maken van een Helm-diagram voor een eenvoudige Node.js-toepassing. Het diagram zou Kubernetes-resources moeten bevatten, zoals Deployment, Service en ConfigMap. Gebruik het bestand values.yaml om de applicatie-image, poort en eventuele omgevingsvariabelen te definiëren.
Gebruikers kunnen eenvoudig hun eigen Helm-grafieken voor hun Kubernetes-applicaties ontwikkelen door de hierboven aangegeven methoden te volgen en praktische voorbeelden als referentie te gebruiken.
Installeren en upgraden met Helm
U kunt uw Helm-grafiek gebruiken om Kubernetes-apps te installeren en te beheren nadat u ze hebt ontwikkeld. Gebruik de helm install
commando, gevolgd door de naam van het diagram en eventuele andere instellingen.
Om een bestaand diagram te upgraden, gebruikt u de helm upgrade
commando om de oude release te vervangen door de nieuwe. Helm heeft ook een helm rollback
commando dat kan worden gebruikt om een upgrade ongedaan te maken.
Geavanceerde functies van Helm
Helm heeft ook verschillende aanvullende mogelijkheden die u kunnen helpen bij het beheren van uw Kubernetes-applicaties. Een van deze voordelen is de mogelijkheid om omgevingsvariabelen te gebruiken om uw Helm-grafieken te wijzigen.
Omgevingsvariabelen kunnen worden gebruikt om gevoelige gegevens op te slaan die u niet in uw code wilt opnemen, zoals wachtwoorden of API-referenties.
Een ander geavanceerd aspect van Helm is de compatibiliteit met CI/CD-workflows. Dit kan u helpen bij het automatiseren van uw toepassingsimplementaties en het waarborgen van consistentie in alle omgevingen.
Om Helm te gebruiken met een CI/CD-pijplijn, schrijft u een script dat uw grafiek installeert of upgradet met behulp van de helm
opdracht.
Helm-grafieken aanpassen met omgevingsvariabelen
U kunt de variabelen definiëren in het bestand values.yaml dat is opgenomen in de grafiek om omgevingsvariabelen toe te voegen aan uw Helm-grafieken. Er kan dan naar de variabelen in de sjablonen van uw diagram worden verwezen met behulp van de syntaxis {{ .Values.variableName }}.
Helm gebruiken met CI/CD-pijplijnen
U moet eerst een script schrijven dat gebruikmaakt van het helm
opdracht om uw grafiek te installeren of te upgraden als u Helm wilt gebruiken met een CI/CD-workflow.
Wanneer u een nieuwe versie van uw applicatie wilt implementeren, kunt u dit script in uw pijplijn opnemen en aanroepen.
Conclusie
Helm-grafieken bieden een praktische manier om Kubernetes-resources te bundelen en te distribueren, en Helm is een krachtige tool voor het beheer van Kubernetes-applicaties.
U zou nu een goed begrip moeten hebben van het ontwikkelen, installeren en beheren van Helm-grafieken na het volgen van de instructies in dit artikel.
Helm kan uw Kubernetes-implementaties eenvoudiger maken en uw applicaties eenvoudiger te beheren, of u nu een ontwikkelaar bent of een systeem administrator.
Laat een reactie achter