Установка Helm

Helm – это верхнеуровневый инструмент над приложениями Kubernetes. Helm выступает в роли некоего пакетного менеджера. В своей работы Helm использует пакеты Helm Chart – структурированную иерархию файлов, которые содержат описание тех ресурсов, которые вы планируете развернуть. В этой публикации я покажу, как можно выполняется установка Helm в Linux. Это крайне простой процесс.

Предварительные требования

Каких-то особых предварительных требований нет. На большинстве самых ходовых Linux дистрибутивах я не замечал каких-то проблем (Ubuntu, CentOS, Fedora, Mint). Но вот с отечественными дистрибутивами я не тестировал установку Helm именно этим способом.

Можно выполнить установку, например, на Minikube.

Установка Helm

Установка выполняется в несколько простых шагов. Сначала загружаем скрипт для установки:

curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3

Выдаем разрешения на выполнение скрипта, который мы загрузили:

chmod 700 get_helm.sh

И непосредственно запускаем установку:

sudo ./get_helm.sh

Проверка


Сначала давайте попробуем проверить версию Helm:

helm version
roman@minikubevm:~$ helm version
version.BuildInfo{Version:"v3.11.0", GitCommit:"472c5736ab01133de504a826bd9ee12cbe4e7904", GitTreeState:"clean", GoVersion:"go1.18.10"}
roman@minikubevm:~$

Теперь давайте попробуем установить какой-нибудь Helm Chart. Например, с веб сервером nginx:

helm repo add mirantis https://charts.mirantis.com
helm install my-release mirantis/nginx

После выполнения команд выше проверим наше развертывание Helm:

helm list
roman@minikubevm:~$ helm list
NAME      	NAMESPACE	REVISION	UPDATED                                	STATUS  	CHART      	APP VERSION
my-release	default  	1       	2023-01-21 22:43:31.989029853 +0700 +07	deployed	nginx-0.1.0	1.16.0     
roman@minikubevm:~$
helm list

Соответственно я также могу увидеть поды и сервисы Kubernetes:

kubectl get pod
kubectl get services
roman@minikubevm:~$ kubectl get pod
kubectl get services
NAME                               READY   STATUS    RESTARTS   AGE
my-release-nginx-b9c446b75-gbl6k   1/1     Running   0          4m3s
NAME               TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)   AGE
kubernetes         ClusterIP   10.96.0.1        <none>        443/TCP   23h
my-release-nginx   ClusterIP   10.110.226.159   <none>        80/TCP    4m3s
roman@minikubevm:~$ 
pod and services status

Установка и проверка работы Helm завершена.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *