wordpressをAWS S3に自動バックアップ(BackWPup)する方法

AWS

WordPressのバックアップどうするかは結構悩みどころ

せっかく作成したサイトが万一消えてしまったら悲しいどころではすみませんよね。

一番簡単なのはJetpackの有料プランを使うという手もありますが、毎月5ドル(500円〜600円)は結構高いですよね。特に、複数サイトをもっていると掛けるサイト数になるので、かなり高く付きます。

同一サーバー内へのバックアップ自体は色々なプラグインでできます。ただ、VPS等を使っているとサーバー自体を飛ばしてしまうと(ぶっ壊した事があります。。。)、同一サーバー内へのバックアップって無力です。外部に自動的にバックアップを作れるのが理想です。

外部に自動的にバックアップを作成するなら、BackWPupプラグインが便利

BackWPupというWordPressのプラグインではいろんな所にバックアップを作ることができるのですが、AWS(Amazon Web Services) S3サービスにアップロードするのが便利です。AWS S3は安価なストレージなので気軽に使えて良いです。

AWSは最初は取っつきにくいですが、慣れればとても便利です。

2017年11月16日現在 1GBあたり 2.8円($0.025 * 113円/ドル)なので無視できるレベルですね。週一で1GBのサイトをバックアップするとして(数百記事あってもだいたいそれぐらいです。高画質の画像をたくさん使ってるとかでなければ)、1GB × 4回 × 2.8 = 13.2円、月10円ぐらい。安いですね〜。

AWS S3サービスに保管場所を確保

そこにBackWPupでアクセスしてバックアップファイルを自動的に保存

AWSアカウントの作成

IAM → ユーザー作成 → S3FullAccessの権限を与える
AWSでは接続元ごとにめちゃくちゃ細かく権限を与えることができます。
S3FullAccessというのはS3サービスに関しては何でもできる権限を与えるという意味です。
Access Key(アクセスキー)Secret Key(秘密鍵)を得る。
Secret Keyは流出しないように気を付けましょう。

BackWPupの設定

基本はどこに保存するかを決めて、宛先サービスでの設定を行うだけです(簡単)。

今回はS3サービスに保存するので、「S3サービスにバックアップ」を選択します。

AWSでS3にアクセスするアカウントを作成すると、アクセスキーと秘密鍵がもらえますのでそれを以下に入力します。

 

S3サービスにバケットが既にあればバケットの選択から選べます。

なければ、新しいバケットを作成に好きな名前を入力して新しいバケットを作成しましょう。

バケットとはフォルダみたいなもので、自分専用の保管場所みたいなイメージです。

本サイトのバケットを作るとすると分かりやすいようにapplingotokyoとかにします。

さらにその下にフォルダー(BackWPup/を作りました)を作ることができます。

こうするとバックアップがこのフォルダー内にどんどん作成されます。

BackWPupは便利なことに、古いバックアップをどんどん消していってくれます。File deletionでその設定を行います。デフォルトでは15となっています。15個バックアップを作成したら古いものから自動的に消していってくれます。S3での保管料が押さえれます。

AWSではネットワーク使用量みたいなものが取られるますが、微々たるものなので、月4回1GBレベルでは気にする必要はありません。

サーバーの時刻が狂っているとうまくいかない

これは私だけの経験かもしれませんが、、、
VPSサーバー側の時刻が狂っているとうまくいかないのであらかじめ時刻は合わせておきましょう。
私はサーバーの時刻が狂っていてAWSの時刻とあわず最初うまくいきませんでした。
以下のサイトを参考にしてVPSサーバー側の時刻を日本時間に合わせました。
https://qiita.com/Kenji_TAJIMA/items/88ec9985a0585e66ef33

毎日データベースだけを保存して、全体は週に1回バックアップをとるとかがいいかも

ブログのデザインとかはそんなに頻繁には変えないので、毎日のバックアップはデータベースだけでいいと思います。そうすると容量も少なく設定できます。

二つBackWPupジョブを登録しておけばOKです。

データベースは毎日!

全体は週一!

みたいに。

 

コメント