Восстановление кластера
Восстановление кластера управления и клиентского кластера.
-
- Рекомендуемые резервные копии
- Восстановление кластера управления (все Control Plane недоступны)
- Восстановление клиентского кластера (все Control Plane недоступны)
- Политика обновления при восстановлении
- Восстановление удалённого клиентского кластера
- Объекты для бэкапа
- Настройка Velero через ShturvalServicePatch
- Решение типичных ошибок Velero
На этой странице
-
- Рекомендуемые резервные копии
- Восстановление кластера управления (все Control Plane недоступны)
- Восстановление клиентского кластера (все Control Plane недоступны)
- Политика обновления при восстановлении
- Восстановление удалённого клиентского кластера
- Объекты для бэкапа
- Настройка Velero через ShturvalServicePatch
- Решение типичных ошибок Velero
При потере кластера управления или клиентского кластера восстановление возможно из резервных копий Velero в S3. На этой странице — пошаговые процедуры для обоих сценариев.
Рекомендуемые резервные копии
Перед восстановлением убедитесь, что настроены регулярные бэкапы. Подробные рекомендации по настройке резервного копирования см. на странице Рекомендации по резервному копированию.
Краткий перечень необходимых бэкапов:
| Объект | Описание |
|---|---|
| Неймспейсы клиентских кластеров | Все неймспейсные ресурсы неймспейсов клиентских кластеров |
| Инфраструктурные провайдеры | Провайдеры в shturval-capsm, capov-system, capv-system, capos-system, capbd-system, capvcd-system, capy-system (см. таблицу провайдеров) |
| ClusterRoles | Роли в кластере управления |
| Клиентские кластеры | Полный набор данных (с отключённым defaultVolumesToFsBackup) |
Обратите внимание! Для бэкапа клиентского кластера с полным набором данных отключите defaultVolumesToFsBackup для всех томов.
Восстановление кластера управления (все Control Plane недоступны)
Когда все Control Plane узлы кластера управления не отвечают, но в S3 есть резервные копии неймспейсов клиентских кластеров, провайдеров и ClusterRoles.
Шаг 1: Установка нового кластера управления
Установите платформу по инструкции установки:
- Используйте IP-адрес не отвечающего кластера управления как IP API-сервера;
- Количество и характеристики узлов — как у не отвечающего кластера;
- Установите модуль резервного копирования и восстановления (Velero).
Шаг 2: Настройка доступа к S3
Настройте подключение к тому же S3-хранилищу, где находятся бэкапы: Резервное копирование и восстановление → Хранилища → Добавить хранилище.
Добавление хранилища

Шаг 3: Восстановление резервных копий
Восстановите резервную копию, содержащую:
- неймспейсы клиентских кластеров;
- инфраструктурных провайдеров;
- ClusterRoles (UserRoles, GroupRoles).
Резервное копирование и восстановление → Восстановленные копии → Восстановить из резервной копии.
Восстановление из резервной копии

Доступ к управлению клиентскими кластерами должен быть восстановлен.
Восстановление клиентского кластера (все Control Plane недоступны)
Когда IP всех Control Plane клиентского кластера недоступны, но в кластере управления сохранены данные конфигурации и есть резервная копия клиентского кластера в S3.
Шаг 1: Создание нового кластера с теми же параметрами
Создайте новый клиентский кластер с характеристиками сломанного:
- те же IP-адреса API-сервера и Ingress;
- тот же провайдер и конфигурация.
Шаг 2: Установка Velero в кластере
Установите модуль резервного копирования и восстановления (Velero) в новом кластере в режиме auto.
Шаг 3: Подключение S3
Подключите S3-хранилище, в котором находится резервная копия сломанного кластера.
Шаг 4: Восстановление из бэкапа
Восстановите резервную копию клиентского кластера через Резервное копирование и восстановление → Восстановленные копии.
Политика обновления при восстановлении
При восстановлении доступна политика обновления существующих ресурсов:
- Пропустить (по умолчанию) — не перезаписывать существующие ресурсы;
- Обновить — обновить существующие ресурсы данными из бэкапа.
Обратите внимание! PV, используемые запущенными нагрузками (Deployment, StatefulSet, Pod), не восстанавливаются, чтобы не прервать работу приложений.
Восстановление удалённого клиентского кластера
Если IP-адреса всех Control Plane узлов клиентского кластера недоступны, данные конфигурации клиентского кластера утеряны (кластер удалён из платформы), но есть резервная копия клиентского кластера, возможно восстановить доступ к кластеру.
Рекомендации по созданию резервных копий для восстановления доступа на странице Рекомендации по резервному копированию.
Для восстановления доступа выполните следующие действия:
- Поднять временный клиентский кластер с теми же параметрами (IP, провайдер), что и удалённый кластер.
Скриншот интерфейса платформы

- Подключить S3 хранилище, в котором находится резервная копия неймспейсов клиентских кластеров, инфраструктурных провайдеров и ClusterRoles из кластера управления.
Скриншот интерфейса платформы



- Восстановить резервную копию клиентского кластера.
Скриншот интерфейса платформы



- Записать конфигурацию клиентского кластера:
- адрес API сервера кластера и сведения о конфигурации безопасности доступны в Configmap
kubeadm-configнеймспейсаkube-system;
- адрес API сервера кластера и сведения о конфигурации безопасности доступны в Configmap
Скриншот интерфейса платформы

- адрес Ingress доступен в ssc Модуля управления внешними подключениями (
shturval-ingress-controller).
Скриншот интерфейса платформы


После чего тестовый кластер можно удалить.
Скриншот интерфейса платформы


- Дальнейшие шаги соответствуют инструкции восстановления при потере клиентского кластера.
Объекты для бэкапа
Объекты для бэкапа: провайдеры (неймспейсы shturval-capsm, capov-system, capv-system, capos-system, capbd-system, capvcd-system, capy-system), неймспейсы клиентских кластеров, UserRoles и GroupRoles в shturval-backend.
Настройка Velero через ShturvalServicePatch
Период удаления бэкапов
Удаление бэкапов происходит в пределах 1 часа после истечения срока хранения. Чтобы изменить период, примените Patch:
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: <имя ресурса>
spec:
shturvalServiceConfigName: shturval-backup
customvalues:
configuration:
defaultRepoMaintainFrequency: "<ваше значение параметра>"
| Параметр | Описание | Тип данных | Пример |
|---|---|---|---|
metadata.name |
Имя создаваемого ShturvalServicePatch | string | shturval-backup-delete |
defaultRepoMaintainFrequency |
Период времени, по истечении которого бэкапы будут удалены. По умолчанию 1 час | string | 3h |
Решение типичных ошибок Velero
“Error checking repository for stale locks”
Возникает, если данные удалены с S3 (каталог restic) вручную, но соответствующие BackupRepository не удалены. Рекомендуется удалять репозитории вместе с данными или не удалять данные с S3 вручную.
“error checking if volume is a hostPath volume”
Velero не может записывать резервные копии с hostPath. Ошибка не прерывает работу модуля. Чтобы исключить поды с hostPath из бэкапа, добавьте аннотацию в шаблон пода (Deployment/DaemonSet):
backup.velero.io/backup-volumes-excludes: name1,name2,name3
Где name1, name2, name3 — имена volume, ссылающихся на hostPath.