[精讚] [會員登入]
701

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

你可能感興趣的文章

[web] 自訂模組-打字機與跑馬燈效果 自訂模組-打字機效果

openldap資料移到 docker 拉docker 上的 image 回來 docker pull osixia/openldap 在正在運行的openld

利用expect script 查詢ap數量,再送到google sheet及line群組通知 利用expect script 查詢ap數量

臺中市校務雲端系統與Windows AD帳號整合(1) active directory,ldaps,雲端校務系統

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

臺中市雲端校務系統與Windows AD帳號整合(2) 安裝Active Directory網域服務

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

vim 特定範圍行數開頭加上# 註解 vim 特定範圍行數開頭加上# 註解

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

雲端校務系統與OPENLDAP帳號整合(3) 二 建置更改密碼服務 下載校端更改密碼程式: 連結 檢查是否安裝java 8 #java -version 安裝open

在docker裡跑spring boot+mongo(一) 系統安裝docker ce centos7 + docker ce https://docs.docker.com/in

google sheet 限制使用者以點選的方式填答 google sheet 限制使用者以點選的方式填答