Различия между защитой данных в Kubernetes и традиционными предложениями выходят за рамки собственно защиты данных, подчеркивая ключевые преимущества нативных облачных вычислений, пишет на портале The New Stack президент аналитической компании Intellyx Джейсон Блумберг.

Чем отличается защита данных в Kubernetes от более традиционных решений по защите данных, несмотря на то, что они работают с виртуализацией и облачными сценариями, а также с традиционной защитой локальных данных?

Вот пять основных отличий между такими продуктами — отличий, которые выходят за рамки только защиты данных и подчеркивают некоторые фундаментальные преимущества нативных облачных вычислений в целом.

Отличие № 1. Защита данных с упором на метаданные vs. защита данных с упором на данные

В основе защиты данных лежат функции резервного копирования и восстановления. Защита данных включает в себя не только эти две функции, но без них никакой защиты нет.

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

Защита данных в Kubernetes, напротив, сосредоточена на метаданных, а также на базовых (underlying) данных.

Kubernetes — это, по сути, декларативная платформа для оркестровки контейнеров, основанная на конфигурации. Обеспечение защиты данных конфигураций и других метаданных, включая определения ресурсов, Helm-чарты и другие файлы, является центральной задачей защиты данных в Kubernetes.

Отличие № 2. Динамические политики для автоматически обнаруженных приложений vs. статические политики для предопределенных приложений

Настройка традиционного приложения для защиты данных заключается в создании набора политик резервного копирования и восстановления, которые применяются к различным ресурсам, которые организация хочет защитить. Такие политики обычно сосредоточены на моментальных снимках и расписании резервного копирования.

В Kubernetes приложения и их микросервисные компоненты по своей природе эфемерны — они могут масштабироваться вверх и вниз в мгновение ока, периодически появляться и исчезать совсем. Поэтому продукт для защиты данных в Kubernetes должен автоматически обнаруживать приложения на лету, чтобы знать, какие данные и метаданные необходимо защитить. Соответственно, политики, управляющие такой защитой, также должны быть динамичными.

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

Отличие № 3. Динамическая автоматизация на основе политик vs. статическая автоматизация с ручным конфигурированием

Когда среда Kubernetes интерпретирует и применяет политики, на самом деле она автоматизирует рабочие процессы, которые определены этими политиками. Традиционные технологии защиты данных также предусматривают автоматизацию на основе политик, но эти автоматизированные процессы так же статичны, как и сами политики.

Таким образом, Kubernetes требует переосмысления смысла автоматизации — в отличие от простой логики «сделай это, прими решение и сделай то», нативная облачная автоматизация по своей сути является динамичной, с логикой, которая может меняться от момента к моменту.

Это обновленное понятие автоматизации применимо к защите данных, а также к другим сценариям автоматизации Kubernetes.

Отличие № 4. Защита данных для конкретных приложений vs. защита томов

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

Тома, по сути, являются общим знаменателем для всех традиционных средств защиты данных, поскольку их резервное копирование и восстановление означает резервное копирование и восстановление всего, что хранится или установлено на них, включая базы данных, файлы или компоненты приложений.

Kubernetes, напротив, поддерживает всеобъемлющую, декларативную абстракцию всего уровня персистентности.

Учитывая эфемерность компонентов и жесткие требования к производительности, которые применяются к приложениям Kubernetes, они принципиально не сохраняют состояние. Тем не менее, приложения Kubernetes, как правило, должны поддерживать состояние без ущерба для этих основных характеристик. Платформа решает эту проблему с помощью абстракций, основанных на конфигурации.

Такое управление состоянием на основе абстракций означает, что защита данных в Kubernetes не может осуществляться на уровне томов. Она должна осуществляться на уровне приложений, поскольку только приложения знают, какие данные им нужны и когда. Детали хранения данных полностью абстрагированы.

Отличие № 5. Восстановление приложений vs. восстановление данных

Самый важный принцип защиты данных заключается в том, что ваши резервные копии хороши лишь настолько, насколько вы способны восстановиться из них.

В то время как восстановление данных — это большая часть традиционной истории защиты данных, восстановление Kubernetes включает в себя сложную комбинацию восстановления данных, ресурсов и конфигурационных компонентов, составляющих работающее приложение.

Такое восстановление включает в себя автоматизированную оркестровку нескольких динамических задач, определяемых политиками — непростое дело, учитывая, что целью такого восстановления является не просто предотвращение потери данных, а, скорее, непрерывное выполнение приложений в производстве при минимизации любых негативных последствий для пользователей этих приложений.

Учитывая всю сложность таких автоматизаций, становится ясно, почему Veeam приобрела Kasten. Обеспечить полноценную защиту данных в Kubernetes, как это делает платформа управления данными Kasten K10, — задача не из простых.

Заключение

Отличия традиционной и Kubernetes-защиты данных очевидно подчеркивают различия между традиционными и нативными облачными вычислениями.

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

Важным преимуществом такого подхода является четкое разграничение между плоскостями управления и данных — конфигурациями, определяющими поведение приложений, и конфигурациями, связанными с перемещением данных.

Защита данных должна работать на обоих уровнях: обеспечивать, во-первых, перемещение данных в рамках процессов резервного копирования и восстановления, а во-вторых, более широкую историю защиты данных в рамках автоматизированных оркестровок, управляющих поведением приложений.