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 |
|
|