This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
devops2._использование_kubernetes [2025/03/21 06:55] val [4.3 Работа с хранилищами в Kubernetes и восстановление после аварии] |
devops2._использование_kubernetes [2025/03/29 06:06] (current) val [При вводе в эксплуатацию учесть] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== DevOps2. Использование Kubernetes ====== | ====== DevOps2. Использование Kubernetes ====== | ||
- | ===== При вводе в эксплуатацию учесть ===== | ||
- | * 4GB на узел для лонгхорн и кейклоак | + | |
- | * 12-й дебиан | + | |
- | * Нужен работающий k8s для демонстрации, в ожидании Kubespray | + | ===== Программа курса ===== |
+ | |||
+ | * [[https://www.specialist.ru/course/devops2|DevOps. Уровень 2. Использование Kubernetes]] | ||
===== Модуль 0. Подготовка к занятию ===== | ===== Модуль 0. Подготовка к занятию ===== | ||
Line 195: | Line 196: | ||
* [[Система Kubernetes#hostPath и nodeSelector]] (lifecycle и initContainers снова пригодятся на следующем шаге) | * [[Система Kubernetes#hostPath и nodeSelector]] (lifecycle и initContainers снова пригодятся на следующем шаге) | ||
* [[Система Kubernetes#Установка Helm]] на kube1 (**делаем все**) | * [[Система Kubernetes#Установка Helm]] на kube1 (**делаем все**) | ||
- | * [[Система Kubernetes#PersistentVolume и PersistentVolumeVolumeClaim]] (убрать nodeSelector) | + | * [[Система Kubernetes#PersistentVolume и PersistentVolumeClaim]] (убрать nodeSelector) |
+ | |||
+ | * Можно показать [[Система Kubernetes#rancher local-path-provisioner]] | ||
Line 299: | Line 302: | ||
* Настраиваем [[Система Kubernetes#Подключение к кластеру]] для пользователя gitlab-runner на server | * Настраиваем [[Система Kubernetes#Подключение к кластеру]] для пользователя gitlab-runner на server | ||
+ | * Преподаватель демонстрирует | ||
* Настраиваем stage deploy через envsubst используя [[Инструмент GitLab#Пример shell Kubernetes]] | * Настраиваем stage deploy через envsubst используя [[Инструмент GitLab#Пример shell Kubernetes]] | ||
- | * Создаем проект gowebd-k8s (Public, без Readme) | + | * Создаем проект gowebd-k8s (без Readme) |
* Деплоим нужную версию в ручную (New Pipeeline MY_WEBD_VER=ver1.1) | * Деплоим нужную версию в ручную (New Pipeeline MY_WEBD_VER=ver1.1) | ||
- | + | * Преподаватель удаляет проект gowebd-k8s | |
- | * Через WebIDE | + | |
- | * Настраиваем зависимость между проектами gowebd и gowebd-k8s через stage deploy в [[Инструмент GitLab#Пример CI с использованием контейнеров]] | + | |
- | * Увеличиваем версию, добавляем соответствующий тег, проверяем версию приложения в k8s | + | |
- | + | ||
- | * Обсуждаем [[Система Kubernetes#Версии deployment]], недостатки Gitlab CD и варианты, например Argo CD | + | |
* [[Система Kubernetes#Удаление объектов]] (весь namespace) | * [[Система Kubernetes#Удаление объектов]] (весь namespace) | ||
- | * [[Система Kubernetes#Установка Helm]] (если еще не установлен) на kube1 | ||
* [[Система Kubernetes#Развертывание своего приложения]] (webd-chart с образом gowebd) | * [[Система Kubernetes#Развертывание своего приложения]] (webd-chart с образом gowebd) | ||
Line 329: | Line 327: | ||
gitlab-runner@server:~$ helm list -n my-ns | gitlab-runner@server:~$ helm list -n my-ns | ||
</code> | </code> | ||
- | * Исправляем [[Инструмент GitLab#Пример shell Kubernetes]] с использованим helm и push-им все в репозиторий gowebd-k8s | + | |
- | * В проекте gowebd увеличиваем версию, добавляем соответствующий тег, проверяем версию приложения в k8s | + | * Настраиваем stage deploy с helm используя [[Инструмент GitLab#Пример shell Kubernetes]] |
+ | * Создаем проект gowebd-k8s (Public, без Readme) | ||
+ | |||
+ | * Через WebIDE | ||
+ | * Настраиваем зависимость между проектами gowebd и gowebd-k8s через stage deploy в [[Инструмент GitLab#Пример CI с использованием контейнеров]] | ||
+ | * Увеличиваем версию, добавляем соответствующий тег, проверяем версию приложения в k8s | ||
+ | |||
+ | * Ожидая процесс сборки, обсуждаем [[Система Kubernetes#Версии deployment]], недостатки Gitlab CD и варианты, например Argo CD | ||
* [[Система Kubernetes#Работа со своим репозиторием]] для размещения helm пакета (будет использоваться в дополнительном материале) | * [[Система Kubernetes#Работа со своим репозиторием]] для размещения helm пакета (будет использоваться в дополнительном материале) | ||
Line 358: | Line 363: | ||
==== 4.3 Работа с хранилищами в Kubernetes и восстановление после аварии ==== | ==== 4.3 Работа с хранилищами в Kubernetes и восстановление после аварии ==== | ||
- | * “Хором” в классе можно выполнить [[Система Kubernetes#Добавление узла через Kubespray]] и, параллельно, шаги 4, 5, 3 | + | * “Хором” в классе можно выполнить [[Система Kubernetes#Добавление узла через Kubespray]] и, параллельно, шаги 4, 5, 3, можно, добавить мониторинг (VictoriaMetrics Cluster), перед аварией узла |
* Видео [[Работа с хранилищами в Kubernetes]] (выполняем работы с 00:04:00 до конца) | * Видео [[Работа с хранилищами в Kubernetes]] (выполняем работы с 00:04:00 до конца) | ||
Line 374: | Line 379: | ||
* с 00:54:50 до 01:03:33 (обновляем кластер) | * с 00:54:50 до 01:03:33 (обновляем кластер) | ||
+ | ==== 4.5 Мониторинг кластера Kubernetes ==== | ||
+ | * Видео [[Мониторинг кластера Kubernetes]] (выполняем работы с 00:04:50 до конца) |