• slider image 168
:::
條列式新聞
新聞載入中,請稍後...

7-5-1 ZFS send / receive 將 zfs 分割區 直接複製

簡要說明:

  1. 製作快照:將要傳送的資料池(dataset, 相當於分割區的概念)製作快照
  2. 將製作的快照傳送到另一台主機(pve)

實作:

  1. 將虛擬機 LXC 201 的 dataset VM2/vz/subvol-201-disk-1 先建立快照
    zfs snapshot VM2/vz/subvol-201-disk-1@today-2017-01-17

     
  2. 將虛擬機 LXC 201 的      dataset VM2/vz/subvol-201-disk-1@today-2017-01-17
    直接以zfs 複製/備份 到
    另一台主機 pve 的 VM1/vz/ 底下的 dataset subvol-101-disk-1

    來源:本  機   LXC 201
    zfs dataset:VM2/vz/subvol-201-disk-1@today-2017-01-17
    目的:遠端主機 pve LXC 101
    zfs dataset:VM1/vz/subvol-101-disk-1

    開始傳送
    # zfs send -v VM2/vz/subvol-201-disk-1@today-2017-01-17 | ssh pve zfs receive VM1/vz/subvol-101-disk-1

    說明:
    1. 1.zfs zfs檔案系統提供的處理指令
    2. @today-2017-01-17 dataset 因為還掛載於系統上(使用中),所以先製作快照,zfs會將這個dataset 的時間點快照複製到遠端主機,這樣才不會影響到系統對這個dataset的讀寫
    3. send 傳送
    4.  -v 參數可持續顯示目前的進度
    5. ssh pve 透過ssh 連線到 主機 pve
    6. receive 接收
    7. 遠端主機(接收方)的目的 dataset (VM1/vz/subvol-101-disk-1)原本不存在,zfs會自動建立。
    8. 但遠端目的dataset文件系統若已經存在,為避免將遠端覆蓋zfs會自動停止傳送,可加上 -F 參數強制 覆蓋.
      # zfs send VM2/vz/subvol-201-disk-1 | ssh pve zfs receive VM1/vz/subvol-101-disk-1  -F
         
  3. 將虛擬機設定檔(201.conf)複製到遠端主機,並更名為  101.conf
    # scp /etc/pve/lxc/201.conf   root@pve:/etc/pve/lxc/101.conf

    修改複製到遠端主機的虛擬機的設定檔
    # ssh root@pve
    # pico /etc/pve/lxc/101.conf

    依不同主機的zfspool Storage及 dataset 將第1行修改成第2行
    本機端的設定:
    onboot: 1
    rootfs: PVE2:subvol-201-disk-1,size=6G
    遠端主機的設定
    onboot: 0
    rootfs: PVE:subvol-101-disk-1,size=6G

    這樣,同一台虛擬機就完成備份在兩台不同實體 Proxmox VE 主機。
    下次要再同步備份時只要執行
    # zfs send VM2/vz/subvol-201-disk-1 | ssh pve zfs receive VM1/vz/subvol-101-disk-1  -F
    就能將虛擬機在兩台實體主機之間同步。(來源端)

    說明:
    1. onboot:1    Proxmox VE 實體主機開機時即自動開啟虛擬機
      onboot:0    Proxmox VE 實體主機開機時  不開啟虛擬機
      避免兩台(以上)的Proxmox VE 實體主機開機時會開啟相同的的虛擬機,造成看到的虛擬機或登打的資料不同步的問題。


       
  4. 下次要同步步驟
    1. 製作快照
    2. 傳送快照到pve主機

:::
展開 | 闔起

文章類別

書籍目錄

展開 | 闔起

線上使用者

11人線上 (11人在瀏覽線上書籍)

會員: 0

訪客: 11

更多…