Helm -1

*** All credits to the maker of this youtube video creator

https://jhooq.com/helmfile-manage-helmchart/

===========================================

helm install <release_name> <chat_name>

helm delete <release_name>

helm upgrade <release_name>  <chart_name>

How to Install Helm Chart ?

 


Helm Installation Links :

https://helm.sh/docs/intro/install/

https://github.com/helm/helm/releases

or Else use the below to get the helm installation done.


Helm Chart Structure :

The first command you will generally use

helm create <chartname>

helm create demochart  // this will create a file structure as below


 


Without helm charts and and with helm charts


First check if your kubernetes cluster is running or not

$ kubectl get all

we are creating our first helm chart

helm create springboot


helm template springboot  // this command display the values of the placeholder

this display all the yaml files and their values that you have defined the place holder values etc.

helm lint springboot // this will tell you if there are any issues in the helm chart , in terms of syntax and other

 helm --debug --dry-run

 //debug will help you debug issues

helm install <release_name> --dry-run  <chart_name> 

helm install springboot --dry-run springboot

Now truly running the chart

helm install myfirstspringboot  springboot

Verify the helm installation we did

helm list -a

you can also use the kubectl command as well to verify the deployment made by helm

kubectl get deploy

kubectl get all

If you have already deployed an Application via a helm chart into the kubernetes cluster.
And now if you want to modify you wil tweak the configuration and use upgrade

once make changes to the helm chart configuration

helm upgrade myfirstspringboot springboot

since we did upgrade the revision number is 2 now.

helm rollback myspringboot 1  // 1 is the earlier revision number


but in the helm world the revision number will get incremented by 1.

Delete helm releases 

helm delete <release_name>

helm delete myspringboot

Check if you have added any helm chart repo

helm repo list

helm search repo bitnami

This will display all the repositories available under bitnami

Adding a repository 

helm repo add <repository_name> <repository_url>

This is called adding upstream repository into your local helm charts

If you need new updates that is happening in Bitnami repository you can update your local helm chart repository

helm repo update

Index helm chart repository

This adds a index to your helm chart with some basic information.

helm repo index helloworld

Removing repo

helm repo remove bitnami

Helm Chart Plugins

helm diff # plugin

Difference between release
Difference between versions


Check if you have any plugin already installed

helm plugin list

Install Plugin diff

helm plugin install <URL>

helm plugin list

Check the hostory of revisions for helmchart

helm history <release_name>

diff plugin command

helm diff revision <release_name> <helmcart_name> 1 2

Uninstalling plugin 

helm plugin uninstall diff

Convert kubernets yaml to helm 


Helm Linting

Helm linting is kubernetes syntax check 

helm create helloworld

helm lint <chart_name>

helm install myhelloworldrel1 helloworld

helm list -a


Helm File

Helmfile (helmfile.yaml)

A Helmfile is a declarative specification for deploying Helm charts. It allows you to manage multiple Helm charts and their configurations in a single YAML file. Helmfile simplifies complex deployments by enabling you to specify the desired state of your Helm releases.

  • Purpose: Helmfile automates the deployment, upgrade, and rollback of Helm charts across multiple environments. It’s particularly useful in CI/CD pipelines and for managing Helm releases at scale.

 

Installing helm file in the kubernetes cluster

Manging helm chart using the helm file

Using the helm file we are going to install the helm chart / uninstall the helm chart and we will also see how to pull a helm chart from a git hub repository.

Helm file enabled you to deploy multiple helm charts in one go

First we need to install a Helm File. You can download a helm file from a github repository.

--check the helmfile version
helmfile --version 

-- installs the helm chart
helmfile sync

--example helmfile

repositories:
  - name: stable
    url: https://charts.helm.sh/stable

releases:
  - name: my-app
    namespace: default
    chart: stable/nginx
    installed: true
    values:
      - values.yaml






Comments

Popular posts from this blog

Helm -Commands

Helm - WIth ArgoCD

Helm Chart Directory structure