Azure Backupへ個人PCのデータをバックアップ

# 目的
個人で使用しているWin10マシンのデータバックアップを取りたい。
※イメージバックアップはとりません。あくまでデータだけ。

# 背景
バックアップの重要性については言うまでもないとして...。
この度お引越しすることになったのですが、業者さんに「バックアップは自己責任で取っといてくださいね～」と言われたのがきっかけ。今はバックアップもなにも考慮せずに動かしてますが、大事なデータもローカルにたくさん入ってますし、自作なので保証もクソもありませんし、環境整備のいい機会かなと思いまして。

そんな感じで、バックアップ環境をきちんと用意することにしたのでした。

# なんでわざわざAzure？
色々考えた結果、安くて楽ということでここに落ち着きました。
まずバックアップの取り方として、家庭用で考えられるのは以下のパターンかなと思います。

1. クラウドストレージにバックアップ
- 外付けHDD/SSDにバックアップ
- NASにバックアップ
- AzureBackupでバックアップ

あと、バックアップについての与件はこんな感じ。

- 500GB程度の領域があること（必須★）
- スケジュールやリアルタイム同期など、自動バックアップできること
- バックアップデータは無変換（復元が不要）であること
- 料金はなるべく安く
- 複数端末でのファイル共有用途は無し

それぞれ、ちょっと詳しく見ていきましょう。


###### 1. クラウドストレージにバックアップ
筆者は無料版のGoogleドライブしか使用していないので、それ前提で検討してみると...。
__容量上限が15GB__という時点でアウトですね。

有料のGoogleOneを使用すると、月額1,300円で最大2TBの領域が使用できるっぽいですが、
料金プランが15GB、100GB、200GB、2TBという__謎の刻み__。

200GBだと足りないけど2TBだと多すぎ...ということで無駄が多い感じでしたので、今回は見送りにします。

「バックアップと同期」ツールを使用するとリアルタイムでバックアップが取れる点と、スマホを含めた複数デバイスで簡単にファイル共有できるのは強みですね。自分には特に不要な機能でしたが...。

###### 2. 外付けHDD/SSDにバックアップ
家庭用で一番手軽なのはこれかもですね。諭吉一人でも出せば__4TB__くらいまで買えちゃうみたいです。
Windows標準機能で自動バックアップも可能なので、正直これで全然OKなのですが...。
今回はちょっとAzure Backupを触ってみたかったので、いったん見送りたいと思います。

初期投資0円のAzure Backupから初めて、実際の利用料金とかを見つつ、外付けに切り替えるか判断するということで。
※トータルで考えるとこっちのが安いのは明白なんですが...笑

###### 3. NASにバックアップ
一応家庭用のNASとかもありますし、案としてはアリかな～ということで。
外付けHDDと比べた時のメリットでいうと、

- ファイルサーバーとして使える
- RAIDが組める

とかですかね...。
こうして見るとやっぱり企業向けって感じですね。
NAS自体も安くて2万円からとかなので、さすがに個人利用するもんじゃないなあ...。

けど「俺QNAPのNAS持ってんすよｗ」とか言ってみたいような...笑

###### 4. AzureBackupでバックアップ
WindowsマシンにBackup用のエージェントをインスコしておくと、そいつがスケジュールでクラウドにバックアップを投げてくれるという感じです。
クラウドサービスなので、バックアップ先としてはこれ以上ないくらい安全です。災害おきてもどうということはないし。
あと初期投資0円の従量課金という点も魅力ですね。無駄なく使える感じで。

先にも書きましたが、実際の請求やらを見つつ、外付けHDDとどっちにするか判断したいと思います。
なので、まずはAzure案のお試しからということで。

んで、メリデメ整理するとこんな感じですかね。

||Gドラ|外付け|NAS|Azure|
|:-:|:-:|:-:|:-:|:-:|
|コスト(初期)|￥0|￥3,000~￥10,000|￥20,000~|￥0|
|コスト(継続)|￥1,300/月|￥0|￥0|￥2.52/月(GiBあたり)|
|ハードウェア|不要|要|要|不要|
|バックアップツール|バックアップと同期<br>(専用ツール)|Windows標準|Windows標準|MARS<br>(専用ツール)|
|自動バックアップ|可|可|可|可|
|容量上限|2TB|1TB~4TB|2TB~|無制限|
|復元作業|不要|必要|必要|必要|
|データ損失リスク ※|低|高|中|低|

※データ損失リスクは、冗長化の有無、物理的なデータの保管場所などを考慮して高/中/低を記載しています。

# 構成
とりあえず、ユーザーローカルフォルダをすべてバックアップする形にしてみます。
バックアップスケジュールは毎日AM5時に実行で。
バックアップの世代数は5世代くらいにしておきましょうか。

![AzureBackup.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/71cfe053-1a0b-02fe-6efd-71bde469ef31.jpeg)


# 設定作業
Microsoftの[公式ドキュメント](https://docs.microsoft.com/ja-jp/azure/backup/backup-azure-about-mars)に詳細は載ってるので、ここでは割愛。やったことだけメモしておきます。

##### 1．Recovery Servicesコンテナを作成する
まずはバックアップの保存先であるRecovery Servicesコンテナを作成します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/aacf3f58-72bf-5880-b665-5e8202a1f330.png)

コンテナのバックアップ構成は一番安いローカル冗長を選択。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/937c7e28-f2c7-3551-7fa4-80caa353c074.png)

##### 2．MARSエージェントのインストール
バックアップ対象は「Fileとフォルダー」と「システム状態」を選択。
※データバックアップだけのつもりでしたが、せっかくなのでイメージも。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/f8587f9c-c2a4-2007-8d0d-df968a2f5ac6.png)

バックアップ復元用のパスワードは自動生成。パスワードはローカルと、Googleスプレッドシートにメモを残しておく。
Azure Key Vaultなどに保存するのが推奨っぽいが、ここでは無視しておく。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/b2f92fed-7424-002d-61f4-71df5971a505.png)

##### 3．バックアップのスケジュール
毎日AM5:00にバックアップが実行されるようにスケジュール
当然だが、PCが起動していないと意味無いので注意。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/dbda1735-0717-5898-2ec9-12e67616fb48.png)

##### 4．初回バックアップを実行
バックアップ対象は__ユーザーフォルダすべて__にしてみました（C:\Users\username）。

300GB超えというかなりの容量なので、ウチのヘボ回線では一晩待っても終わりません...。
タスクマネージャでネットワークの状況を確認したところ、平均送信速度は驚異の__4Mbps__。
単純計算で、送信完了まで__208時間かかる__というバカみたいな結果になってしまいました。

これ、リストアの時もめちゃめちゃ大変ですね...。
下りはもう少し速度出るとはいえ、仮に10倍の40Mbpsだとしても20時間...。

なるほど、外付けにバックアップした方が遥かにお手軽なようです。

##### 5．悔しいので、一部だけバックアップ
ネットワークがボトルネックになりすぎて実用性ゼロな感じなのですが、悔しいのでバックアップ対象を減らすことにします。
とりあえずバックアップ～リストアの手順くらいはやってみたいですし...。

ということで設定を変更して、初回バックアップを実行。

今度はたったの100MBなので、すぐに終わりますね。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/88cfc306-b9df-2e89-41cf-3259de29e9e7.png)

という感じで、バックアップ開始～バックアップファイル生成～データ転送トータルで__約6分__。
ただ、転送データの総量を見ると、なぜか元データの2倍の__203MB__となっています。
メタデータ入ってるとはいえそんなに膨れ上がるか...？

まあ文句言ってもしょうがないので、そんなもんなのか...ということでいったん納得することにしました。
とりあえずバックアップは完了です。

##### 6．リストア
最後に、バックアップデータのリストアをテストしておきましょう。
バックアップと同様に、クライアントエージェントからリストアを行います。

リストアすると、バックアップボリュームがEドライブとしてマウントされました。
中のファイルも正常に閲覧できましたので、ひとまずこれで完了になります。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/679836/4d12953a-544f-abc5-d162-0a51ca6f150c.png)

# まとめ

う～ん、個人的には結構イケてる選択肢だと思ってたんですが、いざ動かしてみると色々問題ありますね...。

まずネットワークの負荷が激重。
バックアップ・リストアともにメチャメチャ時間かかるので、じゃあ外付けHDDで...ってなっちゃいますね。
かといって少量データのバックアップならGoogleドライブで十分だし...。

一方で、イメージバックアップをクラウドに保存できるというのは明確なメリットだと思います。
まあ今回はやらなかったんですが。

なので、Azure Backupは

- イメージバックアップを取りたい
- でもオンプレだけじゃ不安
- クラウドを使ってデータ損失のリスクを極限まで減らしたい

もしくは

- データバックアップを取りたい
- だけど手持ちのハードウェアは絶対増やしたくない
- クラウドストレージの料金プランで丁度いいのがない


みたいなニッチな要望をお持ちで、かつ__家のネットワークが爆速__な場合は、有効な選択肢になりそうです。

うん、やっぱりエンタープライズ向けですね...。