Управление резервными копиями
В качестве модуля резервного копирования и восстановления в платформе “Штурвал” используется доработанный модуль Velero. Для создания бэкапа (не снапшота!) в клиентском кластере перейдите в клиентский кластер, раздел “Резервное копирование и восстановление”.
Чтобы создать резервную копию необходимо:
- Подключить S3-хранилище.
- Создать конфигурацию резервной копии или планировщик.
Обратите внимание! Резервная копия (бэкап) - это не снэпшот. В бэкап попадают только те ресурсы, которые в нем запрошены. При восстановлении вы получите не всю систему в состоянии на момент бэкапа, а только состояние тех ресурсов, которые были в бэкапе.
Обратите внимание! Если при восстановлении резервной копии будут такие PV, которые используются в запущенных нагрузках (Deployment, StatefulSet, Pod), то такие PV не будут восстановлены, т.к. это может прервать работу приложений.
Управление хранилищами
Скриншот
Чтобы подключить хранилище, перейдите на страницу “Хранилища”, нажмите “Добавить хранилище”.
На странице добавления хранилища есть два режима: базовый и расширенный. В базовом режиме пользователь может заполнить данные:
Скриншот
- Имя хранилища. Обязательное поле. После сохранения конфигурации поле будет недоступно для редактирования.
- Bucket. Обязательное поле. Сегмент хранилища, куда загружаются резервные копии.
- Директория. Необязательное поле. Индекс бакета (папка) для хранения резервных копий.
- Имя пользователя. Обязательное поле. Имя пользователя/логин для подключения к S3-хранилищу. После сохранения конфигурации поле будет недоступно для редактирования.
- Пароль. Обязательное поле. Пароль для подключения к S3-хранилищу. После сохранения конфигурации поле будет недоступно для редактирования.
- Регион. Обязательное поле.
- Адрес S3 . Обязательное поле. Допустимы варианты указания адреса с помощью FQDN/VIP по HTTP/HTTPS. При необходимости укажите порты. Пример: http://example.com:9000 или https://11.11.111.11
- Проверить ли сертификат безопасности? (пропускать ли проверку сертификата).
- Файл сертификата.
Если вы выполняете подключение S3-хранилища без TLS пропустите загрузку сертификата.
В расширенном режиме добавляются поля:
Скриншот
- S3ForcePathStyle. Всегда ли при запросах к хранилищу S3 используется адресация в стиле path (по умолчанию выбрано да).
- Провайдер. Нативно Velero поддерживает AWS-провайдер. Валидность работы с другими провайдерами не гарантируется.
- Периодичность синхронизации (backupSyncPeriod) в часах, минутах и секундах.
Обратите внимание! Запрос на удаление резервных копий из хранилища на стороне платформы асинхронный. Запрос на удаление может завершиться неуспешно.
Кроме того, если в хранилище были/есть резервные копии на момент подключения, они могут быть отражены в интерфейсе.
Для просмотра ранее подключенного хранилища нажмите на названия в списке хранилищ. На вкладке Хранилище можно просмотреть статус и данные подключенного хранилища. Редактирование параметров подключенного хранилища временно доступно только через интерфейс манифеста.
Скриншот
При необходимости можно изменить выбор Пропускать ли проверку сертификата, загрузить файл сертификата, периодичность синхронизации. После завершения редактирования нажмите кнопку Сохранить.
Также изменить данные возможно с помощью манифеста объекта. Для этого перейдите на вкладку Манифест.
Скриншот
После внесения изменений в манифест выполните проверку. Результат проверки будет доступен в правой части экрана. Раскройте блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста хранилища не пройдена, недоступна проверка манифеста.
Резервные копии
После добавления хранилища, вы можете создавать резервные копии. Для этого перейдите на страницу “Резервные копии”. Для добавления запроса на создание резервной копии нажмите “Добавить резервную копию”.
Обратите внимание!
- Это конфигурация разовой резервной копии. После создания поля будут недоступны для изменения. Для создания конфигурации планировщика создания резервных копий перейдите на страницу “Планировщики”.
- Неймспейс velero автоматически будет исключен из резервной копии, т.к. восстановление неймспейса velero приводит к ошибке.
- В случае резервного копирования кластера с полным набором данных требуется отключить использование резервной копии файловой системы тома пода для всех томов (defaultVolumesToFsBackup). Это позволит избежать возникновения ошибок при восстановлении из резервной копии.
Скриншот
На открывшейся странице будут доступны поля для конфигурации:
- Имя резервной копии. Обязательное поле. Имя резервной копии должно содержать только маленькие латинские буквы и цифры, и начинаться с буквы.
- Время хранения резервной копии (TTL).
- Имя хранилища. Обязательное поле. Доступны для выбора ранее созданные S3-хранилища.
- defaultVolumesToFsBackup - Использовать ли резервную копию файловой системы тома модуля для всех томов по умолчанию/ По умолчанию да(true).
- Лейблы резервной копии.
- Селектор объектов. Используется селектор типа “и”. Т.е. в резерную копию будут добавлены выбранные объекты кластеров, неймспейсов и объекты, имеющие выбранные лейблы/лейблы, соответствующие выбранным выражениям.
Скриншот
В блоках выбора неймспейсов, неймспейсных и ненеймспейсных ресурсов доступно два способа выбора объектов:
- Только выбранные (включающий);
- Кроме выбранных (исключающий).
Скриншот
В блоках представлены полные списки ресурсов, входящих в скоуп, а также доступных неймспейсов. Определите, какие ресурсы и неймспейсы должны войти в резервную копию.
Обратите внимание! У модуля резервного копирования есть понимание зависимых объектов. Например, PVC и PV. Если вы выбрали в неймспейсных ресурсах PVC, то в резервную копию автоматически попадут PV.
На странице созданной резервной копии доступны вкладки:
- Резервная копия. На вкладке отображается статус выполнения резервной копии, ее конфигурация;
Скриншот
- Манифест. На вкладке доступен для просмотра YAML манифест резервной копии.
Скриншот
Планировщики
Планировщик - объект, запрашивающий создание резервных копий по расписанию. Для создания планировщика резервных копий перейдите на страницу “Планировщики” и нажмите кнопку “Добавить планировщик”.
Обратите внимание! Неймспейс velero автоматически будет исключен из резервной копии, т.к. восстановление неймспейса velero приводит к ошибке.
Скриншот
На открывшейся странице доступно заполнение расписания для создания резервных копий в cron-формате, а также выбора конфигурации создаваемых резервных копий:
- Имя планировщика. Обязательное поле.
- Расписание в cron-формате. Обязательное поле.
- Время хранения резервной копии (TTL).
- Имя хранилища. Обязательное поле. Доступны для выбора ранее созданные S3-хранилища.
- defaultVolumesToFsBackup - Использовать ли резервную копию файловой системы тома модуля для всех томов по умолчанию/ По умолчанию да(true).
- Лейблы резервной копии.
- Селектор объектов. Используется селектор типа “и”. Т.е. в резервную копию будут добавлены выбранные объекты кластеров, неймспейсов и объекты, имеющие выбранные лейблы/лейблы, соответствующие выбранным выражениям.
В блоках выбора неймспейсов, неймспейсных и ненеймспейсных ресурсов доступно два способа выбора объектов:
- Только выбранные (включающий);
- Кроме выбранных (исключающий).
В блоках представлены полные списки ресурсов, входящих в скоуп, а также доступных неймспейсов. Определите, какие ресурсы и неймспейсы должны войти в резервную копию.
В сохраненном планировщике можно изменять:
- Расписание;
- Лейблы;
- Селектор объектов;
- Выбор объектов для копирования.
- Лейблы.
Изменения будут применены к новым создаваемым резервным копиям.
Также изменить данные возможно с помощью манифеста объекта. Для этого перейдите на вкладку Манифест.
Скриншот
После внесения изменений в манифест выполните проверку. Результат проверки будет доступен в правой части экрана. Раскройте блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста планировщика не пройдена, недоступна проверка манифеста.
Восстановление из резервных копий
При необходимости восстановления из резервной копии перейдите на страницу Восстановленные копии, нажмите кнопку “Восстановить из резервной копии”. Кнопка доступна только если в этом скоупе есть хотя бы 1 созданная резервная копия.
Скриншот
На открывшейся странице определите значения полей:
- Имя резервной копии, из которой нужно делать восстановление (выпадающий список названий резервных копий этого скоупа)
- Политика обновления существующих ресурсов: Пропустить (по умолчанию) или Обновить.
Запуск восстановления создает ресурс restore, который асинхронно восстанавливает запрошенные ресурсы. Процесс восстановления можно отслеживать в статусе ресурса.
После создания восстановленная копия не может быть отредактирована.
На странице созданной восстановленной копии доступны вкладки:
- Восстановленная копия. На вкладке отображается статус восстановления резервной копии;
Скриншот
- Манифест. На вкладке доступен для просмотра YAML манифест восстановленной резервной копии.