Kubernetes : Install Helm2024/06/07 |
Install Helm which helps to manage Kubernetes applications. This example is based on the environment like follows. +----------------------+ +----------------------+ | [ ctrl.srv.world ] | | [ dlp.srv.world ] | | Manager Node | | Control Plane | +-----------+----------+ +-----------+----------+ eth0|10.0.0.25 eth0|10.0.0.30 | | ------------+--------------------------+----------- | | eth0|10.0.0.51 eth0|10.0.0.52 +-----------+----------+ +-----------+----------+ | [ node01.srv.world ] | | [ node02.srv.world ] | | Worker Node#1 | | Worker Node#2 | +----------------------+ +----------------------+ |
[1] | Install Helm. |
root@ctrl:~#
curl -O https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3
root@ctrl:~#
root@ctrl:~# bash ./get-helm-3 Downloading https://get.helm.sh/helm-v3.15.1-linux-amd64.tar.gz Verifying checksum... Done. Preparing to install helm into /usr/local/bin helm installed into /usr/local/bin/helm helm version version.BuildInfo{Version:"v3.15.1", GitCommit:"e211f2aa62992bd72586b395de50979e31231829", GitTreeState:"clean", GoVersion:"go1.22.3"} |
[2] | Basic Usage of Helm. |
# search charts by words in Helm Hub root@ctrl:~# helm search hub wordpress URL CHART VERSION APP VERSION DESCRIPTION https://artifacthub.io/packages/helm/kube-wordp... 0.1.0 1.1 this is my wordpress package https://artifacthub.io/packages/helm/wordpress-... 1.0.2 1.0.0 A Helm chart for deploying Wordpress+Mariadb st... https://artifacthub.io/packages/helm/bitnami-ak... 15.2.13 6.1.0 WordPress is the world's most popular blogging ... ..... ..... # add a repository (example below is bitnami) root@ctrl:~# helm repo add bitnami https://charts.bitnami.com/bitnami "bitnami" has been added to your repositories # show repository list root@ctrl:~# helm repo list NAME URL bitnami https://charts.bitnami.com/bitnami # search charts by words in repository root@ctrl:~# helm search repo bitnami NAME CHART VERSION APP VERSION DESCRIPTION bitnami/airflow 18.1.1 2.9.1 Apache Airflow is a tool to express and execute... bitnami/apache 11.0.6 2.4.59 Apache HTTP Server is an open-source HTTP serve... bitnami/apisix 3.1.1 3.9.1 Apache APISIX is high-performance, real-time AP... bitnami/appsmith 3.2.1 1.26.0 Appsmith is an open source platform for buildin... bitnami/argo-cd 6.3.1 2.11.0 Argo CD is a continuous delivery tool for Kuber... bitnami/argo-workflows 8.1.1 3.5.6 Argo Workflows is meant to orchestrate Kubernet... bitnami/aspnet-core 6.1.0 8.0.5 ASP.NET Core is an open-source framework for we... bitnami/cassandra 11.1.8 4.1.5 Apache Cassandra is an open source distributed ... ..... ..... # display description of a chart # helm show [all|chart|readme|values] [chart name] root@ctrl:~# helm show chart bitnami/haproxy annotations: category: Infrastructure images: | - name: haproxy image: docker.io/bitnami/haproxy:3.0.0-debian-12-r0 licenses: Apache-2.0 apiVersion: v2 appVersion: 3.0.0 dependencies: - name: common repository: oci://registry-1.docker.io/bitnamicharts tags: - bitnami-common version: 2.x.x description: HAProxy is a TCP proxy and a HTTP reverse proxy. It supports SSL termination and offloading, TCP and HTTP normalization, traffic regulation, caching and protection against DDoS attacks. home: https://bitnami.com icon: https://bitnami.com/assets/stacks/haproxy/img/haproxy-stack-220x234.png keywords: - haproxy - proxy - infrastructure maintainers: - name: Broadcom, Inc. All Rights Reserved. url: https://github.com/bitnami/charts name: haproxy sources: - https://github.com/bitnami/charts/tree/main/bitnami/haproxy version: 2.0.1 # deploy application by specified chart # helm install [any name] [chart name] root@ctrl:~# helm install haproxy bitnami/haproxy NAME: haproxy LAST DEPLOYED: Fri Jun 7 00:30:01 2024 NAMESPACE: default STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: CHART NAME: haproxy CHART VERSION: 2.0.1 APP VERSION: 3.0.0 ** Please be patient while the chart is being deployed ** 1. HAproxy has been started. You can find out the port numbers being used by HAProxy by running: $ kubectl describe svc haproxy --namespace default 2. Get HAProxy's load balancer IP/hostname: NOTE: It may take a few minutes for this to become available. You can watch the status by running: $ kubectl get svc haproxy --namespace default -w Once 'EXTERNAL-IP' is no longer '<pending>': $ kubectl describe svc haproxy --namespace default | grep Ingress | awk '{print $3}' 3. Configure DNS records corresponding to Kubernetes ingress resources to point to the load balancer IP/hostname found in step 3 WARNING: There are "resources" sections in the chart not set. Using "resourcesPreset" is not recommended for production. For production installations, please set the following values according to your workload needs: - resources +info https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ # display deployed application list root@ctrl:~# helm list NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION haproxy default 1 2024-06-07 00:30:01.742678649 +0000 UTC deployed haproxy-2.0.1 3.0.0 # display the status of deployed application root@ctrl:~# helm status haproxy NAME: haproxy LAST DEPLOYED: Fri Jun 7 00:30:01 2024 NAMESPACE: default STATUS: deployed REVISION: 1 TEST SUITE: None NOTES: CHART NAME: haproxy CHART VERSION: 2.0.1 APP VERSION: 3.0.0 ..... ..... # uninstall a deployed application root@ctrl:~# helm uninstall haproxy release "haproxy" uninstalled |
Sponsored Link |