freenas 8.3 ZFS Replication

找了老半天資料,後來才發現官方的文件就說得很清楚了,所以一定要去看官方的啊!
http://www.freenas.org/images/resources/freenas8.3.0/freenas8.3_guide.html#__RefHeading__464_145473606

不過還是筆記一下,基本上在8.3版(之前的版本我就不清楚了)時,就已經可以直接在GUI介面上完成整個ZFS Replication 的行為了。
以下為整個流程:
  1. 假設有兩台要做ZFS Replication
    • A是要被複製的的發送端
      • 準備工作:
        1. SSH服務要開
        2. 要將datasert先設定好快照排程,這樣才會出現在ZFS Replication → ADD Replication 的 Filesystem/Volume 清單中
    • B是接收製的接送端
      • 準備工作:
        1. SSH服務要開
        2. 要準備一個 ZFS Dataset 以供寫入,不能是 ZFS Volume
        3. 日後完成會在 2. 的Dataset下再加建一個 Dataset
  2.  取得發送端的公開金鑰
    • 在發送端A→ ZFS Replication → View Public Key → 把內容複製起來
  3. 設定接收端B
    •  在接收端B的 Account → Users → View Users → root → Modify User → SSH Public Key : 把2取得的內容貼上
  4. 設定發送端A
    •  在發送端A→ZFS Replication → ADD Replication 
      • Remote hostname → 接收端B的DNS或IP
      • 點一下 SSH Key Scan,取得接收端的金鑰
      • 最重要的一點: Remote ZFS filesystem name,這一欄要填的是接收端的 Volume 
        • ex.Volume是disk1/mis/forVMS3_BAK,而Path是 /mnt/disk1/mis/forVMS3_BAK;要選的就是 Volume
  5.  點OK之後,就會立刻開始複製
    1. 此時可以在等一下子後,在發送端A的終端下指令監看,tail -f /var/log/message
      • 如果設定有錯會出現「Dec 26 08:54:19 vmstorage03 autorepl.py: [tools.autorepl:323] Replication of forVM/vm_img@auto-20121225.1835-6m failed with warning: cannot send 'forVM/vm_img@auto-20121225.1835-6m': Broken pipe」
      • 如果成功,指令會停在「
        Dec 26 12:33:40 vmstorage03 autorepl.py: [common.pipesubr:49] Executing: (/sbin/zfs send forVM/vm_img@auto-20121225.1835-6m | /usr/bin/ssh -c arcfour256,arcfour128,blowfish-cbc,                                                            BatchMode=yes -o StrictHostKeyChecking=yes -q -p 22 vmstorage04.lib.local "/sbin/zfs receive -F -d disk1/mis/forVMS3_BAK && echo Succeeded.") > /tmp/repl-58971 2>&1」,因為已經開始進行複製
    2.  要跑一陣子,等跑完在接收端的指定dataset之下就會多一個dataset
2013/04/18 add 同步後注意事項
同步後的資料夾的權限是read on,所以如果要拿來利用,請記得
zfs set readonly=off volume/dataset
透過這樣解除只能讀的設定。

留言

熱門文章