У меня есть некоторые данные, которые копируются на ленту через bacula, и в какой-то момент мне нужно будет перейти на ленточное хранилище.
Bacula поддерживает архивирование на диск, но мне пришло в голову, что если бы существовал интерфейс виртуальной ленточной библиотеки для S3, openstack Swift или какой-либо другой службы хранилища объектов, я мог бы просто поменять местами конфигурации и поддерживать уже существующее архивирование, бесшовное конфигурирование устаревания и планирования.
У меня был Google, и я вижу, что Аманда (с использованием API устройства) и несколько продуктов резервного копирования имеют серверные части хранилища объектов S3, но я не вижу никаких проектов, которые можно было бы заменить с помощью * nix / dev / st0 семантика интерфейса устройства.
Это может быть потому, что я понятия не имею, и что идея абсурдна и невозможна и т.д., однако мне было бы интересно узнать, пропустил ли я какие-то очевидные вещи, прежде чем углубляться в какую-то взломанную замену.
Так что поясните варианты платформы - она не размещена на AWS, и в настоящее время нет доступной EBS, а целью является внутреннее хранилище объектов openStack Swift, совместимое с S3, поэтому затраты на пропускную способность и хранилище являются внутренними.
Вы можете попробовать MHVTL, он эмулирует виртуальную ленточную библиотеку и использует файлы / каталоги в качестве хранилища. Вы можете S3FS или другой механизм для эмуляции файлов / каталогов, на которых может размещаться MHVTL. Вы также можете изменить MHTL, чтобы просто перемещать его файлы в / из S3 / Swift как цель при монтировании / размонтировании. Похоже на / dev / tapedevice и сменщик носителей scsi, поэтому продукты резервного копирования могут работать без изменений. Не знаю о поддержке.
Плохая вещь в эмуляции ленты на EC2 заключается в том, что для эмуляции ленты вы должны эмулировать все аспекты. Это включает в себя идею о том, что когда вы загружаете ленту и не планируете писать с самого начала, вы должны просмотреть все эти данные.
Я считаю, что более простой способ действий - это интерфейс томов EBS как блочных устройств в Bacula.
Еще проще было бы использовать Media Type = Fifo
и свяжите это с программой, которая пишет в EBS. Для восстановления вам придется работать над чем-то еще, но это приведет к перемещению ваших данных.
Это более чем сомнительный подход ко всему, что кто-то может рассматривать как резервную копию, но вы должны иметь возможность попробовать. Первое, что вам понадобится, это все, что представляет собой блочный интерфейс поверх S3. Что-то вроде сервера NBD с бэкэндом S3 - посмотрите этот.
После того, как вы получите эту работу, вам понадобится что-то, что представляет файл поверх блочного устройства и предлагает целевой SCSI / виртуальный HBA для вашей системы с чейнджером и ленточным накопителем. Взгляните на этот проект Вот.
См. Проект S3NBD (первая ссылка) для дополнительного обоснования того, почему запуск резервного копирования и восстановления с помощью S3 может быть плохой идеей (с текущей схемой ценообразования S3).