初心者向けのAmazon S3でのバックアップ

私は長い間、S3で重要な個人ファイルの複製を整理したいと考えていました。 ロシア語の説明記事で既成のソリューションを見つけることは考えずにできなかったので、幸運にも英語を覚えなければなりませんでした。

この短い記事は、「最小の」Linuxユーザーを対象としており、Amazon S3サーバーにバックアップすることがいかに簡単でシンプルかを示すことを目的としています。



S3の作業アカウントを既にお持ちであり(お持ちでない場合は、 ここまたはここで )、コンソールおよびテキストエディターに関する最低限の知識をお持ちであることを理解してください。

私から簡単に言うと、Amazon S3はインターネット上のデータの無制限のストレージです。 サービスは有料ですが、(数百メガバイトのオーダーの)少量の場合、月あたり数ルーブル(最大数十ルーブル)かかります。

また、新しいバックアップを作成し(それぞれ古いバックアップも削除される)、/ home / backupに保存されると考えています。

私たちのタスク:毎晩(日中、夕方)、すべての新しいバックアップが行われた後、それらをS3にコピーし、そこから古いものを削除します-もはや/ home / backupにないもの(非常に古いバックアップ、そうですか?)。

インターネットで簡単に検索した後、私は素晴らしいs3sync Rubyプログラムに出会いました。

まず、Rubyをインストールします。

Fedora: yum install ruby

Debian: sudo apt-get install ruby-full
Centos: yum install -y ruby
(ありがとうmikhailov

次に、s3syncをダウンロードして解凍します。

wget s3.amazonaws.com/ServEdge_pub/s3sync/s3sync.tar.gz
tar vxzf s3sync.tar.gz


bashスクリプトを作成し、クラウンで実行します。

vim go-s3sync-backup.sh

#/bin/sh
export AWS_ACCESS_KEY_ID=[ AWS_ACCESS_KEY_ID]
export AWS_SECRET_ACCESS_KEY=[ AWS_SECRET_ACCESS_KEY]
/home/user/s3sync/s3sync.rb --delete -r /home/backup/ [ S3]:my-backup


chmod +x go-s3sync-backup.sh

スクリプトの結果は、S3の指定されたバスケット内のmy-backupフォルダーにバックアップが保存されます。

最初の2つのパラメーターは、S3での認証用のデータを指定します-XMLファイルで指定することもできますが、環境変数に入れる方が簡単です。



いくつかの便利なキーを次に示します。


スクリプトをクローンに追加します(たとえば、毎日午前7時に機能するようにします)

0 7 * * * /home/user/go-s3sync-backup.sh

良心をクリアするには、スクリプトをペンでテストし、S3の使用済みバスケット(フォルダー)へのアクセス権をもう一度確認します-そして安心して眠ることができます-データは安全な場所にあります。

読んでくれたすべての人のおかげで、コメントや訂正は大歓迎です!

Source: https://habr.com/ru/post/J72754/


All Articles