Рубрики
Uncategorized

Как настроить DR для вашего кластера K8S с Velero?

Все определения находятся внизу. В зависимости от критики вашего проекта и / или вашей SLA … Теги с Куберовщиками, дежоптом, с.

Все определения находятся внизу.

В зависимости от критики вашего проекта и/или вашего SLA (Соглашения о уровне обслуживания) Возможно, вам может понадобиться Аварийное восстановление (ДР) планируйте сохранить ваши услуги и запустить.

Так вот Велеро , простой инструмент для создания резервных копий некоторых элементов (или все) В вашем кластере и сделайте восстановление от одного из них.

С Velero вы можете сделать массивные резервные копии для полного кластера или быть более гранулированными и делать резервные копии по пространствам имен, например.

ЗАМЕТКА: Он также может быть использован для проведения некоторых миграций кластеров.

Во-первых, вам нужно установить Velero в выделенном POD.

Загрузите выпуск, который вы хотите с лолкой и настройте его, чтобы сделать его исполняемым исполнением.

# Download the Velero release
curl -L -o /tmp/velero.tar.gz https://github.com/vmware-tanzu/velero/releases/download/v1.5.1/velero-v1.5.1-linux-amd64.tar.gz 

# Unzip it
tar -C /tmp -xvf /tmp/velero.tar.gz

# Move to the local/bin folder
mv /tmp/velero-v1.5.1-linux-amd64/velero /usr/local/bin/velero
chmod +x /usr/local/bin/velero

# Test the velero command, and it should work!
velero --help

Список плагинов

В зависимости от того, что вы хотите/нужно и где развернут ваш кластер, вы будете использовать другой способ настроить хранение резервного копирования.

Когда я пишу этот пост, доступны 13 плагинов, и только следующие 5 поддерживаются Velero:

Установка плагина

Теперь мы продолжим с AWS.

1/Сначала нам нужно создать ведро S3 и создавать учетные данные для Velero.

Для этой демонстрации наше ведро будет называться «MG-Demo-Velero» и будет в «CA-Central-1»

2/затем создайте файл с учетными данными AWS

cat > /tmp/credentials-velero <

3/Установите плагин AWS, используя файл учетных данных и другой информацией о вашем ведре

velero install \
    --provider aws \
    --plugins velero/velero-plugin-for-aws:v1.1.0 \
    --bucket mg-demo-velero \ # Name of your bucket
    --backup-location-config region=ca-central-1 \ # Region where your bucket is created
    --snapshot-location-config region=ca-central-1 \ # Region where your bucket is created
    --secret-file /tmp/credentials-velero # Path to your credential file

4/Проверьте список резервных копий

velero backup get

В этот момент, если это ваш первый опыт работы с Велеро, вы увидите, что у вас нет резервных копий. (И это нормально)

Но если вы уже используете это ведро для хранения резервного копирования, вы должны увидеть что-то вроде этого

NAME               STATUS      ERRORS   WARNINGS   CREATED                         EXPIRES   STORAGE LOCATION   SELECTOR
test-backup        Completed   0        0          2021-07-21 14:45:51 -0700 PDT   29d       default            
...

Теперь, когда у нас есть полная настройка Velero Gueth, мы увидим все команды, чтобы использовать его в полную способность.

Простая резервная копия

Создать резервную копию

Velero Backup Создать [Резервное название] [параметры]

Параметры

30d —tl 24H0m0s. Сохранить резервную копию только 24 часа —ttl. [ПРОДОЛЖИТЕЛЬНОСТЬ] Удержание продолжительности резервного копирования
ложный —include-Cluster-Resoulse = [Boolean] Убедитесь, что если вы хотите включить ресурсы на уровне кластеров
Test —include-пространства имен, по умолчанию —include-пространства имен [пространства имен] Список пространства имен, чтобы включить в резервную копию, разделенную запятой
— Exclude-пространства имен тест, по умолчанию —Exclude-пространства имен [пространства имен] Список пространства имен, чтобы исключить в резервной копии, разделенную запятой
—include-Resources StorageClasses —include-ресурсы [Имена ресурсов] Список ресурсов для включения в резервную копию, разделенную запятой
— Exclude-Resources StorageClasses — Облуж-ресурсы [Имена ресурсов] Список ресурсов для исключения в резервной копии, разделенной запятой
—orksed-Resources, PV8 ‘ — упорядоченные ресурсы «Ресурсы]» Список точных ресурсов для включения в резервную копию. Имена ресурсов разделены полуколомкой, а ресурсы разделены запятой.
— вывеска —selector [этикетки] Список ярлыков, разделенных запятой, которые ресурсы должны быть включены в резервную копию.

Примеры

velero backup create backup1 --include-cluster-resources=true --ordered-resources 'pods=ns1/pod1,ns1/pod2;persistentvolumes=pv4,pv8' --include-namespaces=ns1
velero backup create backup2 --ordered-resources 'statefulsets=ns1/sts1,ns1/sts0' --include-namespaces=ns1

Удалить резервное копирование

Велеро резервное копирование Удалить [Резервное название]

Примеры

velero backup delete backup1

Список резервных копий

Велеро Backup Get.

Примеры

velero backup get

NAME               STATUS      ERRORS   WARNINGS   CREATED                         EXPIRES   STORAGE LOCATION   SELECTOR
test-backup        Completed   0        0          2021-07-21 14:45:51 -0700 PDT   29d       default            

Получить журналы

Velero Backup Logs [Резервное название]

Примеры

velero backup logs backup1

Расписание резервного копирования

Как отличный инструмент для создания резервного копирования, вы можете создать расписание, чтобы автоматизировать его! В зависимости от вашего проекта и ваших потребностей, это может быть ежечасно или ежедневно!

Создавать

График Велеро Создать [Имя расписания] —schedule = » [расписание] » [варианты]

Расписание

Вы можете использовать Cron или Annotation @every Отказ Два следующих примера создадут резервную копию каждые 6 часов.

velero schedule create test1 --schedule="0 */6 * * *"

velero schedule create test2 --schedule="@every 6h"

Варианты

30d —tl 24H0m0s. Сохранить резервную копию только 24 часа —ttl. [ПРОДОЛЖИТЕЛЬНОСТЬ] Удержание продолжительности резервного копирования
Test —include-пространства имен, по умолчанию —include-пространства имен [пространства имен] Список пространства имен, чтобы включить в восстановление, разделенную запятой
— Exclude-пространства имен тест, по умолчанию —Exclude-пространства имен [пространства имен] Список пространства имен, чтобы исключить в восстановлении, разделенном запятой
—include-Resources StorageClasses —include-ресурсы [Имена ресурсов] Список ресурсов для включения в восстановление, разделенную запятой
— Exclude-Resources StorageClasses — Облуж-ресурсы [Имена ресурсов] Список ресурсов, чтобы исключить в восстановлении, разделенном запятой
— вывеска —selector [этикетки] Список ярлыков, разделенных запятой, которые необходимо включить ресурсы в восстановлении.

Удалить

Велеро Удалить расписание [Имя расписания]

Примеры

velero delete schedule test1

Список

Велеро Получить расписание

Восстановление

От резервной копии

Восстановить из резервной копии.

Velero Restore Создать [Название восстановления] — Из-за резервного копирования [Название резервной копии] [параметры]

Параметры

Test —include-пространства имен, по умолчанию —include-пространства имен [пространства имен] Список пространства имен, чтобы включить в восстановление, разделенную запятой
— Exclude-пространства имен тест, по умолчанию —Exclude-пространства имен [пространства имен] Список пространства имен, чтобы исключить в восстановлении, разделенном запятой
—include-Resources StorageClasses —include-ресурсы [Имена ресурсов] Список ресурсов для включения в восстановление, разделенную запятой
— Exclude-Resources StorageClasses — Облуж-ресурсы [Имена ресурсов] Список ресурсов, чтобы исключить в восстановлении, разделенном запятой
— вывеска —selector [этикетки] Список ярлыков, разделенных запятой, которые необходимо включить ресурсы в восстановлении.

Примеры

velero restore create restore1 --from-backup backup1

# Create a restore with a default name ("backup1-") from backup "backup1"
velero restore create --from-backup backup1

От графика

Восстановить из последней резервной копии графика.

Velero Restore Создать [Название восстановления] — от графика [Название резервной копии] [параметры]

Параметры

Test —include-пространства имен, по умолчанию —include-пространства имен [пространства имен] Список пространства имен, чтобы включить в восстановление, разделенную запятой
— Exclude-пространства имен тест, по умолчанию —Exclude-пространства имен [пространства имен] Список пространства имен, чтобы исключить в восстановлении, разделенном запятой
—include-Resources StorageClasses —include-ресурсы [Имена ресурсов] Список ресурсов для включения в восстановление, разделенную запятой
— Exclude-Resources StorageClasses — Облуж-ресурсы [Имена ресурсов] Список ресурсов, чтобы исключить в восстановлении, разделенном запятой
— вывеска —selector [этикетки] Список ярлыков, разделенных запятой, которые необходимо включить ресурсы в восстановлении.
—разрешать- Частично не удалось —разрешать- Частично не удалось Разрешить восстановление из частично неудачной резервной копии, вызванной графиком

Примеры

# As from a backup, if you don't specify a restore name, one will be generated
velero restore create --from-schedule schedule-1

Список

Чтобы перечислить все восстановление, которые были сделаны.

Velero Restore Get.

Описывать

Позвольте вам получить больше информации от конкретных восстановлений.

Velero Restore Опишите [Восстановить имя 1] [Восстановить имя 2]

Пример

velero restore describe restore1 restore2

Журналы

Чтобы получить журналы определенного восстановления. Полезно для устранения неполадок.

Velero Restore Logs [Восстановить имя 1]

Пример

velero restore logs restore1

Исключить конкретные ресурсы из резервной копии

Чтобы исключить определенный ресурс из всех ваших резервных копий, вы можете добавить метку velero.io/exclude-from-backup=true Отказ

kubectl label -n [Назад пространство] [Ресурс] / [Имя]

Велеро

Руководство

  • Полное учебное пособие с AWS и Azure (с помощью этого парня):
  • VMware Webinar о Velero:

Доктор — аварийное восстановление

Определение на основе то Vmware. один.

Аварийное восстановление — это метод организации:

  • восстановить доступ и функциональность своей ИТ-инфраструктуре
  • Держите резервную копию ваших данных

После событий, таких как стихийное бедствие, кибер атака …

SLA — Соглашения об уровне обслуживания

Значение Атлассиан

SLA (соглашение об уровне обслуживания) является соглашением между поставщиком и клиентом о измеримых показателях, таких как время безотказной работы, отзывчивость и обязанностей.

На мой взгляд, Velero — хороший и простой инструмент, который поможет нам много! Чтобы быть в состоянии сделать так быстро резервные копии и восстановления действительно удивительны!

Я надеюсь, что это поможет вам!

Оригинал: «https://dev.to/adaendra/how-to-setup-a-dr-for-your-k8s-cluster-with-velero-1l77»