Автоматизация резервного копирования и очистки снимков Linux EBS - PullRequest
3 голосов
/ 10 августа 2011

Существуют ли какие-либо хорошие обновленные сценарии оболочки для снимков EBS для S3 и очистки старых снимков?

Я просматривал SO, но в основном это с 2009 года, ссылаясь на сломанную или устаревшую ссылку.

Спасибо.

Ответы [ 2 ]

1 голос
/ 10 августа 2011

Попробуйте следующий shell-скрипт, я использую его для создания снимка для большинства моих проектов, и он работает хорошо.

https://github.com/rakesh-sankar/Tools/blob/master/AmazonAWS/EBS/EBS-Snapshot.sh

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

0 голосов
/ 26 марта 2014

Если можно использовать PHP в качестве скрипта shel, вы можете использовать мой последний скрипт с последней версией AWS PHP SDK.Это намного проще, потому что вам не нужно настраивать среду.Просто введите скрипт для ваших ключей API.

Как настроить

  1. Открыть SSH-соединение с вашим сервером.
  2. Перейдите в папку

    $ cd /usr/local/
    
  3. Клонировать эту суть в папку ec2

    $ git clone https://gist.github.com/9738785.git ec2
    
  4. Перейти в эту папку

    $ cd ec2
    
  5. Сделать backup.php исполняемым

    $ chmod +x backup.php
    
  6. Открыть релиз проекта AWS PHP SDK github и скопировать URL-адрес кнопки aws.zip.Теперь загрузите его на свой сервер.

    $ wget https://github.com/aws/aws-sdk-php/releases/download/2.6.0/aws.zip
    
  7. Распакуйте этот файл в каталог aws.

    $ unzip aws.zip -d aws 
    
  8. Редактировать backup.phpphp файл и установите все настройки в строке 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";
    
  9. Проверьте это.Запустите этот скрипт

    $ ./backup.php
    

    Тест - снимок создан.

  10. Если все в порядке, просто добавьте cronjob.

    * 23 * * * /usr/local/ec2/backup.php
    
...