Весной этого года мы рассказывали о новых возможностях продукта VMware Cloud Disaster Recovery, который позволяет производить кросс-облачное восстановление виртуальных сред. Одним из самых страшных DR-сценариев для администраторов является поражение инфраструктуры программой-вымогателем (ransomware), которая зачастую блокирует компьютеры, а данные их дисков зашифровывает.
Традиционная инфраструктура бэкапа в этом случае может оказаться малоэффективной - ведь сложно определить момент, когда произошло инфицирование компьютеров/виртуальных машин, а также трудно быстро поднять десятки и сотни систем, ну и тяжело запустить там все процедуры проверки.
Вот какие моменты важны при борьбе с массовой атакой посредством ransomware:
Возможность иметь достаточное количество копий назад во времени, чтобы выбрать точку чистой от вредоносного ПО системы.
Возможность мгновенно включить ВМ для проверки, не запуская длительный процесс восстановления. Потому что таких виртуальных машин может быть очень много.
Обеспечение сохранности и неизменности самих бэкапов - надо сделать так, чтобы зараженные машины не зашифровали сами резервные копии - ведь тогда нечего будет и восстанавливать.
Нужно регулярно убеждаться, что бэкапы не повреждены (например, вследствие какого-то бага).
Ну и все процедуры по восстановлению не должны стоить космических денег, что может разорить компанию.
В ответ на эти требования компания VMware разработала облачную файловую систему Scale-out Cloud Filesystem (SCFS), которая позволяет хранить готовые к восстановлению резервные копии ВМ, избегая больших затрат.
Делается это за счет комбинации в одном хранилище двухъярусной архитектуры - для хранения резервных копий и для исполнения нагрузок. Облако EC2 с локальными NVMe-хранилищами используется для обеспечения работы высокопроизводительных нагрузок (cache-tier), а S3-хранилища используются для больших объемов данных (capacity tier).
Это позволяет независимо масштабировать ресурсы для увеличения производительности и емкости. Часть cache-яруса используется для обработки входящих данных по резервному копированию, чтобы обеспечить баланс потока резервного копирования (backup-mode) и исполнения нагрузок. Когда нужно приступить к восстановлению (recovery-mode) ярус кэша может быть расширен, чтобы виртуальные машины запускались напрямую с этой файловой системы. То есть, такой дизайн файловой системы позволяет быстро переключаться между режимами backup-mode и recovery-mode.
Этот подход основан на Log-Structured Filesystem (LFS), файловой системы, которая была предложена еще в 1992 году одним из основателей VMware Менделем Розенблюмом. Она основывается на идее, что устройства хранения (HDD, SSD, S3) не так производительны в случайных операциях, как в последовательных, а sequential writes как раз удобно использовать для такой структуры хранения бэкапов. Идея LFS в том, чтобы сохранять данные изменений файловой системы в виде лога, а позже проводить его очистку.
Эти же техники использует VMware Cloud Disaster Recovery в облаке S3. Как видно из картинки, все входящие данные бэкапов разбиваются на большие сегменты в 10 МБ, которые последовательно записываются на хранилище как объекты S3 на высокой скорости. Данные хранятся в виде лога, то есть не перезаписывают прошлые данные. Это позволяет избежать ситуации, когда резервные копии виртуальных машин перезаписываются уже инфицированными бэкапами.
Для такой структуры необходим эффективный механизм по работе с указателями на данные, чтобы быстро позиционироваться на нужных блоках при запуске ВМ напрямую из резервной копии. Для этого VMware использует криптохэши на базе контента, которые невозможно подменить со стороны вредоносного ПО. Эти криптохэши организованы по структуре дерева (см. подробнее тут), а сами бэкапы недоступны для модификации из внешнего мира, то есть самой производственной среды.
При восстановлении сами бэкапы тоже не трогаются - создается копия объектов бэкапа и виртуальная машина сразу же запускается с использованием этих данных. Работает это практически мгновенно, причем неважно сколько машин запускается в рамках задачи.
Также в SCFS есть встроенный механизм проверки целостности резервных копий на ежедневной основе, что позволяет избежать ситуации, когда нужно восстанавливать системы, а данные повреждены.
Начать изучение платформы VMware Cloud Disaster Recovery можно с этой странички.