From b97f8e076ef5209ec74048435dafaa693e084fd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=A4=D0=B5=D0=B4=D0=BE=D1=80=D0=BE=D0=B2=20=D0=94=D0=BC?= =?UTF-8?q?=D0=B8=D1=82=D1=80=D0=B8=D0=B9?= Date: Wed, 8 Nov 2023 11:27:23 +0300 Subject: [PATCH] fix --- .../manifests/configmap-conf.md | 0 .../manifests/configmap-html.md | 0 .../manifests/deployment.md | 0 .../manifests/deployment.yaml | 0 .../manifests/ingress.md | 0 .../manifests/service.md | 0 .../Обучение Helm по Крюкову/01-base-helm.md | 85 ------------------- 7 files changed, 85 deletions(-) rename DevOps/Helm/{Обучение Helm по Крюкову => Learn-by-Krukov}/manifests/configmap-conf.md (100%) rename DevOps/Helm/{Обучение Helm по Крюкову => Learn-by-Krukov}/manifests/configmap-html.md (100%) rename DevOps/Helm/{Обучение Helm по Крюкову => Learn-by-Krukov}/manifests/deployment.md (100%) rename DevOps/Helm/{Обучение Helm по Крюкову => Learn-by-Krukov}/manifests/deployment.yaml (100%) rename DevOps/Helm/{Обучение Helm по Крюкову => Learn-by-Krukov}/manifests/ingress.md (100%) rename DevOps/Helm/{Обучение Helm по Крюкову => Learn-by-Krukov}/manifests/service.md (100%) delete mode 100644 DevOps/Helm/Обучение Helm по Крюкову/01-base-helm.md diff --git a/DevOps/Helm/Обучение Helm по Крюкову/manifests/configmap-conf.md b/DevOps/Helm/Learn-by-Krukov/manifests/configmap-conf.md similarity index 100% rename from DevOps/Helm/Обучение Helm по Крюкову/manifests/configmap-conf.md rename to DevOps/Helm/Learn-by-Krukov/manifests/configmap-conf.md diff --git a/DevOps/Helm/Обучение Helm по Крюкову/manifests/configmap-html.md b/DevOps/Helm/Learn-by-Krukov/manifests/configmap-html.md similarity index 100% rename from DevOps/Helm/Обучение Helm по Крюкову/manifests/configmap-html.md rename to DevOps/Helm/Learn-by-Krukov/manifests/configmap-html.md diff --git a/DevOps/Helm/Обучение Helm по Крюкову/manifests/deployment.md b/DevOps/Helm/Learn-by-Krukov/manifests/deployment.md similarity index 100% rename from DevOps/Helm/Обучение Helm по Крюкову/manifests/deployment.md rename to DevOps/Helm/Learn-by-Krukov/manifests/deployment.md diff --git a/DevOps/Helm/Обучение Helm по Крюкову/manifests/deployment.yaml b/DevOps/Helm/Learn-by-Krukov/manifests/deployment.yaml similarity index 100% rename from DevOps/Helm/Обучение Helm по Крюкову/manifests/deployment.yaml rename to DevOps/Helm/Learn-by-Krukov/manifests/deployment.yaml diff --git a/DevOps/Helm/Обучение Helm по Крюкову/manifests/ingress.md b/DevOps/Helm/Learn-by-Krukov/manifests/ingress.md similarity index 100% rename from DevOps/Helm/Обучение Helm по Крюкову/manifests/ingress.md rename to DevOps/Helm/Learn-by-Krukov/manifests/ingress.md diff --git a/DevOps/Helm/Обучение Helm по Крюкову/manifests/service.md b/DevOps/Helm/Learn-by-Krukov/manifests/service.md similarity index 100% rename from DevOps/Helm/Обучение Helm по Крюкову/manifests/service.md rename to DevOps/Helm/Learn-by-Krukov/manifests/service.md diff --git a/DevOps/Helm/Обучение Helm по Крюкову/01-base-helm.md b/DevOps/Helm/Обучение Helm по Крюкову/01-base-helm.md deleted file mode 100644 index 2000393..0000000 --- a/DevOps/Helm/Обучение Helm по Крюкову/01-base-helm.md +++ /dev/null @@ -1,85 +0,0 @@ ---- -title: 01-Основы helm -description: -published: true -date: 2023-11-07T18:15:32.346Z -tags: helm -editor: markdown -dateCreated: 2023-11-07T15:18:54.227Z ---- - -# Видео раз. Основы helm. - -## Что такое helm? - -Helm - это менеджер пакетов для kuberntes. - -Как любой менеджер пакетов, Helm упрощает задачу управления жизненным циклом приложений. - -Апдейт и удаление приложений достаточно простые (ну почти всегда). Поэтому в -данном цикле видео, мы не будем акцентировать внимание на этих действиях. В основном мы -займемся разбором создания собственных пакетов (chart), их установкой и кастомизацией. - -### Документация - -* [Helm](https://helm.sh/) -* [Go templates](https://pkg.go.dev/text/template) - -### Как работает Helm - -Пакет (helm chart или просто chart), обычно распространяется в виде стандартного архива в формате tar.gz -Внутри которого находятся: -* Описание чарта. -* Шаблоны манифестов. -* Конфигурационные параметры приложения по умолчанию. -* Другие, не обязательные файлы. - -Для хранения набора таких пакетов можно использовать любой WEB сервер с обязательным файлом index.yaml, в котором -описываются чарты, которые предоставляются данным сервером. Но это конечно самый простой способ создания репозитория. -В принципе хранить архивы пакетов можно в специализированных системах или универсальных приложениях, которые -поддерживают helm charts типа Nexus, Harbor и т.п. - -Так же чарт можно хранить например в локальной файловой системе, не запаковывая его в архив, в виде структуры файлов -и директорий. Но в этом случае затруднена версионность чарта. Т.е. для разных версий чарта необходимо создавать -отдельные директории. Ситуацию может облегчить хранения файлов чарта в системе контроля версии, например в git. - -Основная задача helm: -* Получить от пользователя информацию, какие конфигурационные параметры приложения необходимо переопределить. -Обычно для этого используется кастомный файл values. -* Учитывая параметры, сгенерировать из шаблонов файлы манифестов приложений. -* Итоговые файлы манифестов поместить в kubernetes через kubernetes API. - -Разумеется кроме работы с пакетами (шаблонами) helm умеет много чего полезного и по ходу изложения материала -мы познакомимся с этими функциями. - -Helm версии 3 не требует наличия в кластере kubernetes дополнительного программного обеспечения. - -Helm не может управлять приложениями, установленными помимо него. - -## Установка -```bash - wget https://get.helm.sh/helm-v3.7.2-linux-amd64.tar.gz - tar -zxvf helm-v3.7.2-linux-amd64.tar.gz - mv linux-amd64/helm /usr/local/bin/helm - helm version - helm list - rm -r helm-v3.7.2-linux-amd64.tar.gz linux-amd64 -``` - -## Задача - -Изучать что-либо, просто так, без поставленной задачи бессмысленно. Поэтому сформулируем задачу, которую мы должны -будем решить. - -У нас есть некоторое приложение - openresty, которое мы запускаем в кластере kubernetes. Для этого приложения мы написали -файлы [манифестов](../base-application). - -Наша задача, сделать из этих манифестов чарт, так что бы мы могли при установке изменять парамеры деплоя, -конфигурационных файлов, сервисов и т.п. - -У нас не стоит задачи сделать супер chart с возможностью кастомизации всего и вся. Только базовый функционал, -на котором можно понять как работает "кухня" helm charts. - -## Видео - -[](https://youtu.be/vv8SSYITzPE)