簡述
備份和災害備份還原是保護您的數據和系統完整性的關鍵措施。在發生系統故障、數據丟失或其他災難性事件時,備份能夠幫助您快速恢復運營,減少停機時間和業務損失。
Mavis 使用 Velero 開源解決方案
Mavis 使用 Velero 作為開源備份解決方案。Velero 支持多種對象存儲方案,可以輕鬆地將集群資源保存到雲端或本地存儲。預設支持的對象存儲包括 AWS、Azure、GCP,以及兼容 S3 協議的本地存儲,如 Minio。說明 Mavis 的備份流程:
- 支援的存儲方案
-
AWS S3:透過配置 AWS 憑證與 S3 存儲桶。
-
Google Cloud Storage (GCS):透過配置 GCP 憑證與存儲桶。
-
Azure Blob Storage:透過配置 Azure 憑證與容器。
-
Minio:本地部署的 S3 兼容存儲解決方案。
-
- Velero 的備份流程:
- 安裝與配置:安裝 Velero 並配置所需的對象存儲位置,如 AWS S3、Google Cloud Storage 或本地的 Minio。
-
創建備份:使用 Velero CLI 創建一個新的備份,指定要備份的資源。
-
執行備份:Velero 將資源和數據備份到指定的對象存儲中,包括持久性的快照。
-
監控備份狀態:監控備份的進度和結果,以確保備份成功完成。Mavis 使用 Velero 的備份流程圖:
圖片來源:https://blog.cloudtechner.com/kubernetes-backup-and-restore-using-velero-6f7b3add5b57
-
- 執行還原:使用 Velero 還原備份以恢復資源和數據。Velero 恢復操作允許您從先前創建的備份中恢復所有的物件和持久性卷。您也可以僅恢復一個過濾後的物件和持久性卷子集。
Mavis 支援的災害備份還原
我們的系統提供備份和災害備份還原功能,支持以下備份方式:
- 方式一:Mavis 全部備份與還原:進行全面的系統備份,涵蓋所有數據和配置。備份檔案的名稱(包含當天日期):
-
xxxx-xx-xx-xxxx-backup-full
-
- 方式二:Mavis 分開備份與還原:專注於提高 Mavis 系統的恢復時間,先進行 Mavis 系統的備份,後續再執行日誌回放紀錄的備份,以確保盡快恢復系統使用。備份檔案的名稱(包含當天日期):
- Mavis 系統及資料庫備份與還原(不含日誌回放、...)
-
xxxx-xx-xx-xxxx-backup-exclude-storage
-
- Mavis 儲存空間備份與還原(主要包含檔案:日誌回放、...)
-
xxxx-xx-xx-xxxx-backup-only-storage
-
- Mavis 系統及資料庫備份與還原(不含日誌回放、...)
Mavis 執行備份與還原的操作步驟,請參考文件:Mavis 備份與還原操作
FAQ
Q1:Mavis 系統支援哪些類型的備份?
A1:Mavis 系統支援兩種類型的備份:
- 全部備份
- Mavis 系統 + 日誌回放分開備份
Q2:Mavis 備份支援哪些存儲方案?
A2:支援以下存儲方案:
- AWS S3 及兼容 S3 的存儲:包括 Minio(本地端)。
- Google Cloud 存儲(GCS)
Q3:Mavis 全系統備份如何運作?
A3:全部備份是一個完整的系統快照,包括所有配置、數據和應用程序。此類備份確保您在災難發生時能夠將整個系統恢復到原始狀態。
Q4:Mavis 系統 + 日誌回放分開備份包含哪些內容?
A4:Mavis 系統 + 日誌回放分開備份包括:
- 先執行,核心 Mavis 系統組件的備份。
- 再進行,系統日誌的回放紀錄備份,因錄影檔恢復需更多時間。
Q5:如何在 AWS S3 上設置備份存儲?
A5:在 AWS S3 上設置備份存儲的步驟如下:
- 登入 AWS 管理控制台。
- 創建新的 S3 存儲桶或選擇現有的存儲桶。
- 配置備份軟體,提供存儲桶名稱和訪問憑證。
Q6:如何使用 Minio 進行本地備份存儲?
A6:使用 Minio 進行本地備份存儲的方法如下:
- 安裝 Minio 在本地伺服器上。
- 配置 Minio,設置訪問密鑰和存儲策略。
- 使用 Minio 的端點和憑證,設定備份軟體。
Q7:我可以使用 Google Cloud Storage 進行備份嗎?
A7:是的,您可以使用 Google Cloud Storage(GCS)進行備份:
- 登入 Google Cloud 控制台。
- 創建新的 GCS 存儲桶。
- 配置備份軟體,提供必要的憑證和存儲桶名稱。
Q8:請問 AWS S3 需要開啟的最低權限有哪些?
A7:S3 Bucket 內 Policy 最低權限如下,
"s3:GetObject",
"s3:DeleteObject",
"s3:PutObject",
"s3:AbortMultipartUpload",
"s3:ListMultipartUploadParts"