[精讚] [會員登入]
1053

proxmox zfs 建立異地備份與還原

zfs最吸引人的地方就是可以建立快照並傳輸到遠端机器, 達到增量備份, 並且隨時從任一備份檔還原 完全不怕勒索病毒 將v

分享此文連結 //n.sfs.tw/15056

分享連結 proxmox zfs 建立異地備份與還原@igogo
(文章歡迎轉載,務必尊重版權註明連結來源)
2021-04-22 15:00:05 最後編修
2021-04-22 13:42:18 By igogo
 

 

zfs最吸引人的地方就是可以建立快照並傳輸到遠端机器, 達到增量備份, 並且隨時從任一備份檔還原

完全不怕勒索病毒

 

將vm 建立在zfs碟上

 

Step 1

建立一vm 的基準快照

zfs snapshot zfspool/vm-9991-disk-0@base

 

Step 2

傳送到遠端, 異地備份

zfs send rpool/data/vm-9991-disk-0@base | ssh 192.168.2.17 zfs recv local-zfs/vm-9991-disk-0

確認是否將資料傳輸過去

host b

zfs list

 

Step 3

建立批次備份

3-1

ssh 自動登入

#ssh-keygen

將產生的 ~/.ssh/id_rsa.pub 上傳到 host b中, 並加入

authorized_keys 中

 

#cat id_rsa.pub >> ~/.ssh/authorized_keys

 

3-2 建立批次檔

#!/bin/bash

#host a 上的 file system
hostazfs="zfspool/vm-9991-disk-0"

#host b 上欲備份的位置
hostbzfs="local-zfs/vm-9991-disk-0"

#第一個建立的snapshot
base_snapshot="base"

#遠端備份机的ip
remote_ip="192.168.2.17"

#產生時間戳記做為 tag   %N做為測試用, 定期備份用%F日期區分即可
timestamp="$(date +"%F-%N")"

#以下不用變更
/sbin/zfs snapshot "$hostazfs@$timestamp"

echo "$hostazfs@$timestamp has been created"

zfs send -RI $base_snapshot "$hostazfs@$timestamp" | ssh $remote_ip zfs recv $hostbzfs

echo "$hostazfs@$timestamp has been sent"

 

 

Step 4

restore

on hostb,

pick  a snapshot,  and clone as a file

zfs clone local-zfs/vm-9991-disk-0@2021-04-22-188237971  local-zfs/vm-9991-disk-99

create a new vm, send and receive to new vm disk, force.

# zfs send local-zfs/vm-9991-disk-99 | zfs recv -F local-zfs/vm-100-disk-0

 

END

你可能感興趣的文章

管理Google共用雲端硬碟 管理Google共用雲端硬碟

apache 反向代理 80轉443轉8080 apache, proxy pass

如何檢查網站憑證是否過期 檢查網站憑證

利用openssl 一行文產生私鑰及憑證請求檔 openssl 一行產生私鑰及憑證請求檔

雲端校務系統與OPENLDAP帳號整合(2) openldap,雲端校務

臺中市雲端校務系統與Windows AD帳號整合(6) 修改Windows AD 密碼原則

隨機好文

[vue.js] 設定 content type 今天在wickt 端怎麼就是收不到vue.js 以post 傳過來的資料 找了好久才發現 application/jso

[vue.js] input event Form-Input-Components-using-Custom-Events

資料表更改為多個primary key, MariaDB [database]> describe TABLENAME; 想由本來是兩個PRIMARY KE

java.time 時間 instant java.time

ArrayList 想移除特定值 想移出water, 使用lambda 的方式如下 List<String> fruits = new Arr