Я устал испытывать определенные опасения по поводу сохранности данных на выделенном сервере, наблюдая за тем, что происходит с хостерами в последнее время.
3FN, Agava, Hosting.UA, MakHost - тенденция очень плохая.
В итоге McHost стал последней каплей, и чтобы не оказаться в числе тех, кто «уже делает бэкапы», я перенес свою систему резервного копирования серверов на Amazon S3. Получилось довольно быстро и прозрачно.
Хочу поделиться с общественностью простейшей реализацией.
- Прежде всего, помня, что услуга платная, рассчитываем затраты.
Давайте воспользуемся калькулятор , любезно предоставлено Amazon. Выберите в меню слева Амазонка S3 , снимите галочку с БЕСПЛАТНО ВХОДЯЩЕЕ и заполните необходимые поля (там все предельно просто).
После заполнения нажмите кнопку Добавить в счет и изучите цену в окне справа.
Так, например, при хранении 100 ГБ данных, загрузке 20 ГБ в месяц и скачивании 2 ГБ в месяц мы платим около 17 долларов, что для меня вполне приемлемая цена за спокойствие.
Если нужные вам объемы на порядок меньше (что, подозреваю, так и будет), то комиссия становится равной нескольким долларам.
Рискну предположить, что это не сильно ударит по бюджету.
Если вы думаете так же, идите дальше.
- Подпишитесь на Amazon Simple Storage Services (S3)
На страница услуги нажимать Зарегистрируйтесь на Amazon S3 .
Если у вас нет учетной записи Amazon Web Services, выберите Я новый пользователь , в противном случае введите пароль своей учетной записи в предоставленной форме.
Чтобы зарегистрироваться в AWS, введите свое имя, адрес электронной почты, пароль и создайте учетную запись.
Следующей страницей будет сама регистрация в S3: снова вводим почтовый адрес, принимаем соглашение и попадаем на страницу с информацией о тарифах и выбором способа оплаты.
Введите данные своей кредитной карты и платежный адрес.
Еще раз смотрим на заполненную форму и нажимаем Завершить регистрацию .
Теперь все, что вам нужно сделать, это подождать немного, пока вы не получите электронное письмо, подтверждающее, что ваша учетная запись активирована и доступна.
- Получаем ключи доступа к сервису
Пойдем раздел безопасности аккаунта и в пункте Access Credentials -> Access Keys видим нужный нам ключ для авторизации (пара Access Key ID - Secret Access Key).
Он понадобится нам при настройке резервного копирования на сервере.
- Установка утилиты для работы с S3
Для Debian и Ubuntu в репозиториях есть:
apt-get install s3cmd
- Выполняем первоначальную настройку утилиты
Под пользователем, от которого в дальнейшем будем выполнять резервное копирование:
s3cmd --configure
Введите ключ доступа, секретный ключ, пароль шифрования и путь к программе GPG. Мы выбираем использовать HTTPS и прокси или нет. После ввода всех настроек конфигуратор предложит протестировать соединение.Соглашаемся и после успешного прохождения теста соглашаемся сохранить настройки в файл конфигурации.
Теперь s3cmd готов к использованию.
- Подготовка S3
Создаем хранилище, так называемое ведро:
# s3cmd --acl-private --bucket-location=EU mb s3://mybucketname Bucket 'mybucketname' created
--acl-private - доступ только для нас --bucket-location=ЕС — ведро создается в европейском хранилище (оно будет ближе к Москве, где у меня есть сервер).Если вам ближе США, то вместо ЕС пишем US. имя моего ведра — имя хранилища должно быть уникальным среди всех (а не только ваших) хранилищ.
Мы проверяем:
# s3cmd la Bucket 'mybucketname':
- На самом деле, мы делаем резервную копию
s3cmd имеет режим работы а-ля rsync, что очень удобно в случае простого резервного копирования:
s3cmd --acl-private --bucket-location=EU --guess-mime-type --delete-removed sync /local/backup/dir/ s3://mybucketname/backupfolder
Что есть что: Первые два параметра описаны выше.--guess-mime-type — выберите тип контента MIME на основе расширения.
--delete-удалено — удалить файлы в хранилище, если они были удалены из локальной папки.
Далее идет локальная папка, в которой лежат бэкапы на сервере (вы же делаете локальные бэкапы, да?) и папка, в которую бэкапить на s3 (если ее еще нет, то она создастся автоматически).
Подставляем нужные вам параметры, запускаем, проверяем, что все скачалось куда нужно:
s3cmd ls s3://mybucketname
УПД: Размер файла в S3 не должен превышать 5 Гб.Если ваша система резервного копирования создает файлы большего размера, то ее придется немного модифицировать, например, пропустив архивы через сплит. Спасибо ночной туман за освещение этой проблемы.
- Добавьте в свою систему запуск команды синхронизации для создания локальных резервных копий или просто в cron (как сделал я).
- ВЫГОДА!
s3cmd sync s3://mybucketname/backupfolder /local/backup/dir/
Синхронизация происходит в обратную сторону и вуаля, все данные снова на локальном диске.
Или, чтобы восстановить один файл, мы используем команду get: s3cmd get s3://mybucketname/backupfolder/backup.tar.gz /local/backup/dir/
УПД2: Спасибо за карму, перенёс в системное администрирование.
Теги: #Системное администрирование #Резервное копирование #backup #amazon s3 #s3cmd
-
Люди Всех Возрастов Могут Создать Веб-Сайт
19 Oct, 24 -
#3Dprintingday Прошел В Prototypster
19 Oct, 24 -
Субстики №142
19 Oct, 24 -
Обзор Бюджетного Планшета Qumo Go!
19 Oct, 24 -
Adobe Cs5 — 12 Апреля. Официально
19 Oct, 24 -
It-Мысли, Выпуск 21
19 Oct, 24