FreeNASによるZFSレプリケーション(ZFS Replication)について

FreeNASでZFSレプリケーションについて動作させてみました。

ZFSボリュームやZFSデータセットのZFS スナップショットを定期的/自動的にリモートサーバへ保存出来ます。
FreeNASをインストールしたサーバを2台を準備します。

●環境
MB: Gigabyte GA-E350N-USB3
HDD: 500GB
OS: FreeNAS-8.2.0-RELEASE-p1-x64

それぞれのサーバへZFSボリュームを作成(*1)し、ZFSスナップショット送信元となるサーバのSSH Public Keyを送信先となるサーバへ登録(*2)します。その後、送付先サーバのSSHサービスを実行(*3)します。

*1 メニューのStorage→Volume Managerより作成。
*2 ZFSスナップショット送信元のメニューのStorage → View Replication Tasks → View public keyを選択。
表示されたキーをZFSスナップショットの送信先サーバへコピー&ペーストします。
(メニューAccount → Users → View Users → rootユーザのModify Userを開き、SSH Public Keyの項目へ、SSH Public keyをペースト。)
*3 メニューServices → SSH → ON。

ZFSスナップショット送信元サーバで 定期的スナップショットのタスクを作成(メニューStorage → Periodic snapshot Tasksより設定)します。

ZFS スナップショットを15分、30分、1時間、2時間、3時間、4時間、6時間、12時間、1日、1週間 間隔で実行出来ます。また、開始時刻と終了時刻、実行する曜日も設定出来ます。ZFSボリュームやZFSデータセットのZFS スナップショットを定期的/自動的にリモートサーバへ保存出来ます。

Periodic snapshot Tasks

ZFSスナップショット送信先を登録(メニューStorage → ZFS replicationを選択)します。
登録例では、ZFSスナップショット送信元のボリュームをlocal、送信先のボリュームをremoteとなっています。
(SSH KEY Scanボタンを押すと、自動的に送信先サーバのPublic Keyを取得できます。)

ZFS Replication

以上の操作により、ZFSスナップショットを定期的/自動的にリモートサーバへ保存出来きました。(下図)

ZFS Snapshots

FreeNASは導入しやすく、ZFSレプリケーションを利用するとリモートサーバへ容易にデータのバックアップ出来ます。欲を言えば、フェールオーバーやフェールバックも設定出来るならばもっと良いと思いました。