Tag Archives: S3

Amazon Glacier как бекап на случай апокалипсиса.

Общее описание сервиса

Amazon уже давно у всех на слуху по теме хранения и раздачи данных в облаках. Его сервис amazon s3 стал очень популярным для тех кто нуждается в раздаче большого количества статики. И я планирую настроить там хранение оперативных бекапов с рабочих серверов.

Но пока я этого не сделал и на днях наткнулся на описание другого их сервиса — amazon glacier. Цена за хранение данных в нем выглядит намного привлекательнее чем s3 — всего 1$/100Gb в месяц. Отлично подходит для долгосрочного хранения данных.

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

Во-первых время скачивания с сервиса составляет не менее 3.5 часов. То есть это даже не скачивание, а подготовка к скачиванию. Процесс выглядит так: вы через апи делаете запрос на скачивание какого то файла, сервис отрабатывает это задание в течении 3.5-5 часов и затем вы можете загрузить себе файл.

amazon glacier processes

Схема работы amazon glacier

Расчет стоимости скачивания данных

И более серьезная особенность — хитрая схема расчетов стоимости скачивания ваших файлов.

На первый взгляд может показаться что схема весьма проста (тарифы здесь): если вы скачиваете до 10Тб в месяц то платите по 0.12$/1Gb.  И далее чем больше скачиваете тем дешевле обходится 1Гб данных.

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

Итак, вы можете за сутки скачать бесплатно 1/30 часть от 5% общего объема хранимых данных.

В ФАКе сервиса написали красивый пример: 12 terabytes x 5% / 30 days = 20.5 gigabytes. То есть если вы храните 12Тб данных то вы в сутки можете скачивать бесплатно 20.5Гб. На первый взгляд неплохо, но только если не задумываться о том, что 12Тб это очень много и мало кто хранит там столько информации. Хранение такого объема данных обойдется в 120 000$/месяц.

А если взять более приближенный к жизни пример когда там хранить например бекапы БД, домашний архив фоток и т.п. и для расчет взять скажем 100Гб хранимых данных, то выходит что в день бесплатно можно скачивать всего:

100Гб x 5% / 30 дней = 0.16Гб = 160Мб. То есть совсем совсем мало.

Но идем дальше. Кроме платы за трафик загружаемых данных нужно еще оплачивать дополнительную комиссию если вы за раз запросите много данных.

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

Для примера если взять скачивание 10Гб то по трафику это выйдет 1.2$, но с учетом дополнительных комиссий стоимость выйдет около 60$.

Формула расчета запутанная и не имеет понятного описания, поэтому как ни рассчитывай, а все равно итоговая сумма к оплате может оказаться сюрпризом. Вообще принцип формирования этой цены сводится к тому, что амазон берет ваш пиковый объем запрошенных данных, потом от него отнимается объем данных который вам разрешен для скачивания бесплатно (см. выше). И потом полученное значение (получается максимальное Х Гб/час за весь месяц, то есть в любой час на протяжении месяца) умножается на рейт 0.01$ за 1Гб и уможается на количество часов в месяце 720.

Для примера если пиковое значение с вычетом бесплатного объема составило 3Gb, то сумма к оплате будет 3Гб * 0.01$ * 720 = 21,6$.

Важно еще понимать, что объем данных считается не на то, что вы скачиваете, а на то, что вы запросили скачивать. Если вы запросили файл размером 100Гб а потом будете его качать со скоростью 100Мб/час то расчет пикового объема будет происходить из 100Гб/3-5 часов, то есть около 20Гб в лучшем случае, а не 100Мб.

Варианты применения glacier:

И в итоге варианты самого дешевого использования сервиса:

  • Данные которые нужно хранить запаковывать в архивы равные примерно. 0.03% от общего объема хранимых данных (запрос на загрузку и скачивание каждого файла отдельно так же имеет стоимость — 0.05$ за 1000 запросов)
  • Эти архивы загружаются на glacier
  • Когда приходит время скачивания данных нужно начать скачивать архивы по 1 в день.

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

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

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

Личные выводы

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

А glacier хочу попробовать как резервную копию домашнего архива фоток, которые хранятся на домашнем NASе. Ну и настроить резервное копирование прямо с него. Об этом будет позже.

Главное помнить, что glacier это сервис хранения архивов, а не данных, которые могут понадобится в любой момент. Это как место, откуда нужно доставать данные когда уже больше не осталось вариантов, например в случае апокалипсиса :-) Ну и доставать аккуратно, а то пришедший в конце месяца счет может несколько удивить.

Делайте бекапы и будьте счастливы.