Google-Cloud-Platform
在 Google Cloud Platform 上執行每日備份
我有一個在 Google Cloud 上執行的系統。該系統有一個執行後端伺服器虛擬機的數據庫虛擬機和實例組。所有 VM 都使用
cos-stable
VM 映像,並執行一個包含其邏輯的 docker 容器。DB VM 執行一個包含 MariaDB 數據庫的 docker 映像。
我想執行一個備份數據庫並將其儲存在儲存桶中的日常作業。我不知道如何解決這個問題。我沒有可以處理 cronjobs 的 VM,我不想讓另一個 VM 一直在執行,只是為了日常備份。此外,我想使用 FUSE 將儲存桶掛載到備份 VM,而不是使用 Google API 寫入儲存。
我可以在其中一個成本穩定的 VM 上設置 FUSE 和 cronjob 嗎?如果沒有,我可以擁有一個每天啟動然後自行關閉的虛擬機嗎?我在 Google Cloud Console 上找到的調度程序用於應用程序引擎或發布/訂閱通知,而不是用於啟動 VM。
理想情況下,您應該將數據庫放在 Cloud SQL 上並利用其自動備份功能。
或者,您可以設置一個 cronjob 來執行 mysqldump 命令並備份它。
實現它的一種選擇是:
- 使用適當的 MySQL 客戶端和執行連接到 MariaDB 實例的mysqldump的備份腳本創建 VM 映像並將其保存到 Cloud Store 儲存桶 - 您可以將此腳本設置為在啟動時執行並在之後關閉實例
- 創建一個雲函式以啟動或啟動將執行備份常式的 VM
- 創建一個Cloud Scheduler作業以在每天的特定時間觸發您的 Cloud Function