This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
работа_с_хранилищами_в_kubernetes [2024/04/09 17:00] val [5.3 Использование backup-ов] |
работа_с_хранилищами_в_kubernetes [2024/04/24 09:36] (current) val [Запись вебинара] |
||
---|---|---|---|
Line 15: | Line 15: | ||
===== Запись вебинара ===== | ===== Запись вебинара ===== | ||
- | * Будет здесь!!! | + | * [[https://www.youtube.com/watch?v=-5_XB4EcU9s]] |
* Тэги: Kubernetes, Keycloak, OpenID, PersistentVolume, PersistentVolumeClaim, rancher, local-path-provisioner, longhorn | * Тэги: Kubernetes, Keycloak, OpenID, PersistentVolume, PersistentVolumeClaim, rancher, local-path-provisioner, longhorn | ||
- | |||
===== Методическая подготовка ===== | ===== Методическая подготовка ===== | ||
* Продолжение вебинаров [[Практические примеры Keycloak]] и [[Доступ к приложениям в Bare-Metal Kubernetes]] | * Продолжение вебинаров [[Практические примеры Keycloak]] и [[Доступ к приложениям в Bare-Metal Kubernetes]] | ||
- | ===== Шаг 1. Подготовка ===== | + | ===== Шаг 1. Подготовка (сделано заранее) ===== |
* Выключаем тестовый кластер (node) через [[Технология Vagrant]] | * Выключаем тестовый кластер (node) через [[Технология Vagrant]] | ||
- | * Устанавливаем 4GB для узлов кластера kube (попробовать 6144MB) | + | |
+ | * Выключаем kube кластер, устанавливаем 4GB для узлов, включаем | ||
===== Шаг 2. Использование статических PV для приложений с PVC ===== | ===== Шаг 2. Использование статических PV для приложений с PVC ===== | ||
Line 58: | Line 58: | ||
* Удаляем Keycloak из [[Сервис Keycloak#Kubernetes]] (можно ns), его PV и файлы удалятся автоматически | * Удаляем Keycloak из [[Сервис Keycloak#Kubernetes]] (можно ns), его PV и файлы удалятся автоматически | ||
- | * Удаляем [[Система Kubernetes#rancher local-path-provisioner]] (лучше полностью, иначе останется sc) | + | * Удаляем [[Система Kubernetes#rancher local-path-provisioner]] (лучше полностью, иначе, останется sc) |
===== Шаг 5. Использование распределенного блочного хранилища longhorn ===== | ===== Шаг 5. Использование распределенного блочного хранилища longhorn ===== | ||
Line 64: | Line 64: | ||
==== 5.1 Dynamic Volume Provisioning и отказоустойчивость ==== | ==== 5.1 Dynamic Volume Provisioning и отказоустойчивость ==== | ||
- | * Устанавливаем [[Система Kubernetes#longhorn]] (open-iscsi на kube4 тоже) (5 минут) | + | * Устанавливаем [[Система Kubernetes#longhorn]] (open-iscsi и на kube4 тоже) (5 минут) |
* Указываем storageClass: longhorn и postgresql в values.yaml и устанавливаем Keycloak в [[Сервис Keycloak#Kubernetes]] (10 минут) | * Указываем storageClass: longhorn и postgresql в values.yaml и устанавливаем Keycloak в [[Сервис Keycloak#Kubernetes]] (10 минут) | ||
* Подключаемся к UI и настраиваем Pod Deletion Policy When Node is Down: delete-statefuset-pod | * Подключаемся к UI и настраиваем Pod Deletion Policy When Node is Down: delete-statefuset-pod | ||
Line 71: | Line 71: | ||
* Выключаем узел, на котором развернулся postgresql Keycloak (обычно kube3) | * Выключаем узел, на котором развернулся postgresql Keycloak (обычно kube3) | ||
* Дожидаемся восстановления работоспособность KK создаем пользователя | * Дожидаемся восстановления работоспособность KK создаем пользователя | ||
+ | <code> | ||
+ | kube1# kubectl -n my-keycloak-ns logs pods/my-keycloak-1 -f | grep VALIDATION | ||
+ | </code> | ||
* Проводим [[Система Kubernetes#Удаление узла]] через kubeadm | * Проводим [[Система Kubernetes#Удаление узла]] через kubeadm | ||
* Запускаем процесс [[Система Kubernetes#Добавление узла через Kubespray]] (замена kube3 на kube4) и наблюдаем поведение longhorn (20 минут) | * Запускаем процесс [[Система Kubernetes#Добавление узла через Kubespray]] (замена kube3 на kube4) и наблюдаем поведение longhorn (20 минут) | ||
Line 83: | Line 85: | ||
* Разворачиваем [[Сервис NFS]] на server | * Разворачиваем [[Сервис NFS]] на server | ||
* Выполняем [[Система Kubernetes#Использование backup-ов]] в longhorn | * Выполняем [[Система Kubernetes#Использование backup-ов]] в longhorn | ||
+ | |||
+ | * Можно выключить kube кластер | ||
* Включаем тестовый кластер (node) через [[Технология Vagrant]] (в Vagrantfile указать 4ГБ ОЗУ) | * Включаем тестовый кластер (node) через [[Технология Vagrant]] (в Vagrantfile указать 4ГБ ОЗУ) | ||
Line 88: | Line 92: | ||
* Технология Vagrant [[Технология Vagrant#Provision с использованием внешних скриптов]] | * Технология Vagrant [[Технология Vagrant#Provision с использованием внешних скриптов]] | ||
- | * Подключаемся через UI | + | <code> |
+ | $ scp root@192.168.13.201:.kube/config ~/.kube/ | ||
+ | </code> | ||
+ | * Подключаемся через UI [[Система Kubernetes#longhorn]] | ||
+ | |||
* Через [[Система Kubernetes#Использование backup-ов]] восстанавливаем Volume (количество реплик = 2) | * Через [[Система Kubernetes#Использование backup-ов]] восстанавливаем Volume (количество реплик = 2) | ||
- | * Правим конфигурацию [[Система Kubernetes#Baremetal ingress-nginx-controller]] | + | * Правим конфигурацию [[Система Kubernetes#Baremetal ingress-nginx-controller]] (ValidatingWebhookConfiguration, use-forwarded-headers) |
- | * Устанавливаем Keycloak в [[Сервис Keycloak#Kubernetes]] (не указываем количество реплик КК) | + | * Устанавливаем Keycloak в [[Сервис Keycloak#Kubernetes]] (не указываем количество реплик) |
- | * Правим настройки HAProxy | + | * Правим настройки [[Решение HAProxy]] |
+ | |||
+ | * Дожидаемся загрузки Keycloak в [[Сервис Keycloak#Kubernetes]] кластере node | ||
+ | |||
+ | ===== Вопросы? ===== | ||
+ | |||
+ | ===== Дополнительные материалы ===== | ||
- | ===== Как все вернуть обратно ===== | + | ==== Как все вернуть обратно ==== |
<code> | <code> | ||
Line 108: | Line 123: | ||
$ cp .kube/config_kube .kube/config | $ cp .kube/config_kube .kube/config | ||
</code> | </code> | ||
- | |||
- | ===== Вопросы? ===== | ||
- | |||
- |