SynologyのDSMでNAS2台をLAN経由&インターネット経由で同期させてバックアップ&フェイルオーバー&リカバリしてみた
Synologyの新型5ベイNASサーバーキット「DS1517+」の設定と拡張を行う連載6本目。今回はさらにもう1台の「DS1517+」を用意し、LAN経由やインターネット経由で1台目のデータを2本目へバックアップ&復元をしてみました。
Snapshot Replication | Synology Inc.
https://www.synology.com/ja-jp/dsm/feature/snapshot_replication
Synology「DS1517+」の基本セッティングや専用OS「DSM」のインストール、データの共有方法など、これまでに行った拡張については以下の記事で確認できます。
最強NAS・Synologyの5ベイ上位モデル「DiskStation DS1517+」を導入するための初期設定まとめ - GIGAZINE
Disk Station Manager (DSM) で共有フォルダを作成しグループ内で共有&アクセスログ保存&問題発生時にメール通知させる手順まとめ - GIGAZINE
Disk Station Manager(DSM)でNASをメディアサーバー化し外からスマホで動画・音楽をストリーミング再生する方法まとめ - GIGAZINE
SynologyのNASを使いDisk Station Manager(DSM)でiCloudのようにスマホ・PC・NASを同期する方法まとめ - GIGAZINE
Windows上で右クリックの「以前のバージョンの復元」からファイルを元に戻す手順をNASでDSMを使って設定する方法 - GIGAZINE
まずは2台目の「DS1517+」を組み立てます。1台目と同じく8TBのHDDを4基セッティング。
組み立てたら、スイッチングハブを利用して1台目の「NAS」と同一LAN内につなぎます。
2台目のSynologyを、1台目と同じようにセットアップ。
管理オペレーションシステムの「Disk Station Manager(DSM)」をインストールします。
「ストレージマネージャ」の「ボリューム」欄で確認することができます。ボリュームもRAID10、ファイルシステムはBtrfsで構成。ここまでは1台目と同じ。
◆同一のローカルエリアネットワーク(LAN)内で2台を接続して同期させてみる。
RAID10で構築し、HDDのクラッシュをある程度想定しているとはいえ、完全に対策できているとは言えません。また一度クラッシュすると復旧するまでアクセスできないのも致命的。「Snapshot Replication」は定期的にスナップショットを取得&復元してくれる機能の他に、同一LAN内にある別のNASにスナップショットを複製してくれる機能もあります。またメインのNASに障害が起こったとき、データを再保護することも可能。そのため、メインのスナップショットを同じLAN内にあるもう1台に同期、2台目をバックアップとして運用すれば、仮にメインのNASに障害が起こっても爆速でデータ復旧ができるというわけ。
1:2台のローカルIPアドレスを固定する。
1台目NASと2台目NASをスイッチングハブでつなげているのですが、その場合両方のNASのローカルIPアドレスを固定する必要があります。1台目NASは既に固定されていたので、2台目NASも別のIPで固定することに。まずは2台目NASの管理画面に接続、「コントロールパネル」を開き、「ネットワーク」を選択。
「ネットワークインターフェース」のタブを選択し、固定したい接続のLANを選択、「編集」のボタンをクリック。
「手動で設定する」を選択し、IPアドレスの欄に任意のアドレスを入力、OKボタンをクリック。これでローカルIPアドレスが無事固定されたはず。
念のため「(2台目のローカルIPアドレス):(ポート番号)」をインターネットブラウザのURL欄に入力し、ちゃんと2台目NASの管理認証画面が表示されることを確認。
2:1台目の共有フォルダのスナップショットを2台目に複製&同期させる
今回の目的は、1台目NASで定期的に取得している共有フォルダのスナップショットを2台目NASに複製し、2台目NASをバックアップとして機能させるというもの。まずは2台目NASに「Snapshot Replication」をインストール。
続いて1台目NASの管理画面に接続。「Snapshot Replication」を起動します。
左の欄から「複製」を選択、「共有フォルダ」タブの「作成」をクリック。
同期先にBtrfsボリュームがあるか確認するようメッセージが出るので、「次へ」をクリック。
複製するフォルダを選択します。今回は「log」「music」「share」「video」を2台目NASに複製させるため、4つにチェックを入れて「次へ」をクリック。
1台目と2台目は同一のLANで接続されているので、今回は「同一サブネット」を選択し、「次へ」をクリック。
同期先のNASとして2台目の「ds1517-plus-2」を指定。この時、同期先サーバーに同時に接続していると認証に失敗するので、同期先サーバーとの接続を一度オフラインにしてから設定する必要があります。ユーザー名とパスワードには2台目の管理者アカウントとパスワードを入力。
同期先の2台目NASは単一ボリュームでディスク構築しているはずなので、そのまま「次へ」をクリック。
複製なので、初期は全データをコピーし、後から差分のデータを更新します。そのため初期複製はデータ量によってはかなり時間がかかってしまうので注意。「ネットワークを介して初期コピーを送信する」が選択されているのを確認し、「次へ」をクリック。
「複製予定を有効にする」にチェックを入れ、実行頻度や日にちを選択します。同期元のスナップショット取得頻度よりも短くならないように設定すれば問題なし。1台目NASでは5分ごとにスナップショットを取得している設定なので、それよりも長い15分間隔で複製を行うように設定して「次へ」をクリック。
「選択したターゲットの元の維持ポリシーを継続する」を選択。前回に1台目NASで設定したスナップショットの維持設定が、同期先のスナップショットにもそのまま引き継がれるというわけ。
定期のスナップショットをどれだけ維持するかも設定します。同期元の設定では最大保持するスナップショット数は1024なので、15分ごとに更新であれば約10日分のスナップショットしか保持できません。しかし年ごとや月ごとの定期のスナップショットを維持するように設定すれば、10日より以前の状態も復元することが可能。今回はデフォルトのままで「次へ」をクリック。
念のために「転送時の暗号化を有効にする」にチェックを入れて、「次へ」をクリック。
今までの設定の確認が表示されるので、「適用」をクリック。
数分のロードを経て、無事複製ができたようです。「OK」をクリック。
全てのフォルダの複製が成功していることを確認。
「復元」欄を開くと、今回同期に指定した「log」「music」「share」「video」のフォルダが「複製済み」になっていることが分かります。
2台目の共有フォルダを開いてみると、ちゃんと「#snapshot」のフォルダがあるのを確認。フォルダだけではなく、ちゃんとスナップショットも同期できています。無事2台の「DS1517+」を同期することができるように「Snapshot Replication」を設定できました。
「Snapshot Replication」の「複製」欄から、フォルダを選択して「情報」をクリックすると、複製タスク情報が表示されます。1台目の「ds1517-plus」が同期元、2台目の「ds1517-plus-2」が同期先になっているという構成を図で表してくれるのでとてもわかりやすいです。
3:強制フェイルオーバーによる切り替えと再保護の確認
2台のNASを同期させているのは、メインで使っているNASがクラッシュしたり、共有フォルダ内の重要なファイルが失われてしまった時などに、とっさに待機している予備のサーバーに切り替えられるようにするためです。この切り替えを手動で行う場合は「スイッチオーバー」、自動的に切り替わる場合は「フェイルオーバー」と呼びます。もし1台目に異常が発生しても、2台目の共有フォルダを任意の状態に復元して書き込み可能にし、復旧した後に再びデータを同期することで再保護を実行します。そうすることで、障害途中で保存したデータが復帰したら消えてしまった!という事態も防げるというわけ。ただし実際にHDDをクラッシュさせるわけにはいかないので、今回は「強制フェイルオーバー」を行い、スナップショットを用いたフォルダの切り替えと再保護がきちんと機能するか確認してみました。2台目で「Snapshot Replication」を起動。左から「復元」を選択、テストするフォルダを選んだら上部の「操作」ボタンをクリックし、「強制フェイルオーバー」をクリック。
復元するスナップショットのバージョンを選択し、「強制フェイルオーバー」をクリック。
1台目の「video」フォルダが書き込み可能な同期元、2台目の「video」フォルダが読込み専用で書き込み不可能な同期先になっていたのですが、強制フェイルオーバーによってこれが逆になりました。2台目の管理画面で確認してみると、「video」フォルダの「読込み専用」という表示がちゃんと消えています。
1台目の管理画面をチェックすると、「video」フォルダに「複製先サーバーにフェイルオーバー」というメッセージが付記されています。
「video」フォルダの複製タスク情報を確認してみると、1台目である「ds1517-plus」が同期先サーバーに、2台目である「ds1517-plus-2」が同期元サーバーになっていることが図示されており、ちゃんと2台のNASが切り替わっていると分かります。
試しに、2台目の「video」フォルダに「イカ盆回り.mp4」という動画を新規で追加してみました。「イカ盆回り.mp4」というデータの追加が、再保護によってちゃんと1台目のフォルダにも反映されればOKというわけ。
2台目の「Snapshot Replication」の「復元」で「video」フォルダを選択、上部の「操作」ボタンをクリックし、「再保護」を選択。
1台目の「video」フォルダを確認すると、ちゃんと「イカ盆回り.mp4」が追加されています。フェイルオーバーしている間にデータの更新があった場合、障害が解決した後に再保護をすればちゃんとメインのフォルダにも更新が反映されるというわけ。
このままだと同期元と同期先が入れ替わったままなので元に戻します。1台目の「Snapshot Replication」の「復元」で「video」フォルダを選択したら、せっかく再保護した内容が復元によって上書きされてしまわないように、「操作」から「切り替え」を選びます。「切り替え」は全手動でサーバー切り替えを行う、いわゆるスイッチオーバーの操作で、フェイルオーバーと違ってスナップショットによる自動復元は行われません。これでちゃんとフェイルオーバーと再保護が機能していることが確認できました。
◆メインのNASの内容を、外部にあるNASにインターネット経由でバックアップする
ローカルでのバックアップを用意することでかなり安心できますが、例えば災害などでローカルエリアごとデータが失われてしまう可能性もあります。そういう場合は外部に置かれたNASにインターネット経由でバックアップをとることができれば問題なし。公式アドオンパッケージである「Hyper Backup」と「Hyper Backup Vault」を利用すれば、離れたところにあるNASでもインターネット経由で簡単にバックアップが作成できます。今回は1台目NASから外部に置いた2台目NASにバックアップを作成してみました。まずは1台目NASの管理画面で、「パッケージセンター」をクリックし、「バックアップ」の欄を選択。「Hyper Backup」をインストールします。
続いて外部から2台目NASの管理画面にアクセス、「パッケージセンター」から「バックアップ」の欄を選び、「Hyper Backup Vault」をインストール。「Hyper Backup Vault」はSynologyのNASへの「Hyper Backup」を介したバックアップを許可し、管理することができるアドオンパッケージです。
「Hyper Backup」を起動すると、バックアップウィザードが始まります。今回は外部にある「DS1517+」に接続するため、「リモート Synology NAS」を選択します。
バックアップ先の設定を行います。「バックアップタスクの作成」を選択。サーバー名またはIPアドレスには、2台目NASの外部IPアドレスを入力。またユーザー名とパスワードは2台目NASの管理者アカウントIDとパスワードを入力、バックアップ先のフォルダやディレクトリも指定したら「次へ」をクリックします。この時、外部にある2台目NASはもちろんポート開放をしていなければ接続できないので注意が必要。
バックアップするフォルダを選択します。今回は「music」フォルダ1つに絞ってチェックし、「次へ」をクリック。
アプリケーションのバックアップを選択できますが、Photo Stationは今回バックアップしないのでスルー、「次へ」をクリック。
タスク通知を有効にし、バックアップスケジュールを有効、決定します。タスク通知を有効にしておけば、登録したメールアドレスにバックアップ完了/失敗の結果報告が届けられるというわけ。バックアップは1日に1回、誰もNASにアクセスすることがないであろう深夜3時に行うよう設定しました。
「バックアップローテーション」はバージョン管理システムです。これを有効にして「次へ」をクリック。
バックアップが始まりました。
「music」フォルダは音楽ファイルが2つだけなので容量は約12MBしかありませんが、バックアップタスクの終了までおよそ20分かかりました。最初はどうしても全てのデータをフルバックアップしなければならないので、大容量のバックアップを行う時は時間に余裕を見るのがベター。「Hyper Backup」は、初回以降のバックアップではファイルを再び丸ごとバックアップするのではなく、ファイルのデータで変更や追加のあった部分のみをバックアップするという「ブロックレベル増分バックアップ」を行うので、バックアップ速度はかなり速くなります。
試しに、1台目の「music」フォルダにあった音楽ファイル2つを削除してしまいました。ファイルそのものが失われてしまっているわけなので、これではデータを参照することもできません。
すぐに1台目の管理画面で「Hyper Backup」を起動。左下の「復元」をクリックしたら「データ」を選択。
復元するバックアップタスクを選択し、「次へ」をクリック。
システム設定も復元するかどうか選択。データが飛んで、バックアップからファイルが復元しても設定はまた1から……ということのないように、システム設定も復元できるようになっています。もしデータ復旧よりも先にシステムの再設定を行っていた場合は「システム設定を復元しない」にチェックを入れて復元すればOK。今回は「システム設定情報を復元する」にチェックを入れ、復元するバージョンの日付を選択したら「次へ」をクリック。
警告が表示されますが、そのまま「はい」をクリック。
復元するフォルダにチェックを入れ、「次へ」をクリック。
最後に復元するバージョン、システム設定の復元、復元するフォルダについて確認が表示されるので、「適用」をクリックします。
復元が終了したら「OK」をクリック。
1台目の「music」フォルダを確認してみると、ちゃんと2つの音楽ファイルが復活しています。これでローカルだけではなく、インターネット経由でも問題なくバックアップと復元が行えることが確認できました。ローカルでのスナップショットの複製と復元、さらにインターネット経由でのバックアップを組み合わせれば、何かあったときのための対策としてかなり心強いものとなります。
今回は容量が少ないので短時間で済みましたが、大容量フォルダをまるごと復元するとかなりの時間が必要となります。過去バージョンのファイルを1つだけ欲しいのにまるごと復元する余裕がないという場合は、バックアップ先である2台目NASから任意のファイルだけをダウンロードすることも可能。まずはバックアップ先となっている2台目NASで「Hyper Backup Vault」を起動。復元したいバックアップタスクの右端にある時計のようなアイコンをクリック。
「バックアップエクスプローラ」が起動します。下部のカレンダーからバックアップのバージョンを選択したら、欲しいファイルを選択してダウンロードをクリックすればOK。管理画面に接続しているPCに直接ファイルをダウンロードできます。
・つづき
SynologyのDSMでNASをグループウェア化してカレンダー・チャット・メモ・メール・スプレッドシートなどを使う方法まとめ - GIGAZINE
・関連記事
世界初の14TBのHDD「Ultrastar Hs14」をHGSTが発表 - GIGAZINE
Googleが裁判所命令を故意に無視して海外のサーバーに保存されたメールを引き渡さなかったとして制裁を受けることに - GIGAZINE
HDD故障率データの公開で知られるBackblazeがHDDの歴史を解説 - GIGAZINE
ハードディスクが物理的にデータを記録している仕組みがわかるムービー「How do hard drives work?」 - GIGAZINE
・関連コンテンツ