- PVSM.RU - https://www.pvsm.ru -
При пользовании AWS EC2, я обнаружил, что там нет готового интерфейса, для создания резервных копий диска, которые в AWS называются Snapshot.
Я начал свое исследование, как настроить автоматическое обновление. Перечитал много материала, и пришел к выводу, что простого решения нет. Нужно много прочитать документации что бы все настроить. Я понимаю что без этого ни куда. Чтение доков, это большая часть жизни как разработчика так и администратора. Но иногда, все может быть гораздо проще, и не нужно тратить много времени на то, что можно сделать всего за несколько минут.
Предлагаю свой вариант настроки в 10 шагов, без установки и настроки AWS Command Line Tools.
Предполагается что команды git
и wget
доступны.
Открываем SSH и переходим в папку.
$ cd /usr/local/
Копируем готовый код, который я создал и который находится на гитхабе в папку ec2
.
$ git clone https://gist.github.com/9738785.git ec2
И переходим в эту папку.
$ cd ec2
Делаем файл backup.php
исполняемым.
$ chmod +x backup.php
Теперь надо открыть страницу релизов [1] AWS PHP SDK на github, скопировать ссылку последнего релиза на зеленой кнопке скачать. И теперь скачиваем его на диск.
$ wget https://github.com/aws/aws-sdk-php/releases/download/2.6.0/aws.zip
Распакуйте архив в папку aws.
$ unzip aws.zip -d aws
Отредактируйте файл backup.php
. Нас интересуют строки с 5-12.
$dryrun = FALSE;
$interval = '24 hours';
$keep_for = '10 Days';
$volumes = array('vol-********');
$api_key = '*********************';
$api_secret = '****************************************';
$ec2_region = 'us-east-1';
$snap_descr = "Daily backup";
Думаю что настройки понятны всем. Обязательно нужно указать регион. Если у вас несколько дисков, то можно их всех добавить в массив.
Давайте проверим как он работает.
$ ./backup.php
Откройте панель управления AWS и убедитесь что Snapshot был создан.
Добавте задачу в крон. Причем не важно как часто она будет исполняться. Даже если вы поставите ее один раз в минуту, то создаваться snapshot будет только по указоному времени в настройках. Но естественно если в настройках вы указали 12 hours
а задачу крон поставили раз в 24 часа, то это не будет работать. Нужно убедиться, что задача крона срабатывает соответственно настройкам. Для моего примера раз в 24 часа достаточно.
* 23 * * * /usr/local/ec2/backup.php
Автор: Serhioromano
Источник [2]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/amazon-web-services/67322
Ссылки в тексте:
[1] страницу релизов: https://github.com/aws/aws-sdk-php/releases
[2] Источник: http://habrahabr.ru/post/233079/
Нажмите здесь для печати.