GCE Application Consistency Snapshot
目的
使用 GCE Application consistency snapshot 可在建立快照前、後執行相關腳本。
注意事項
- 如果沒有進行任何設定會出錯,因此不可與無使用 Application consistency 功能的 VM 混用

- 指令中
gcloud compute disks snapshot disk name --guest-flush 的 --guest-flush是Application consistency等同勾選起來的意思
操作步驟
- 首先須留意是否支援作業系統,並安裝或更新 agent 後於 /etc/default/instance_configs.cfg 加入以下設定
1[Snapshots]2enabled = true3timeout_in_seconds = 60 # 0-300 sec- 建立設定檔
其中 /etc/google/snapshots/pre.sh 與 /etc/google/snapshots/post.sh 檔名不可換,分別代表快照前、後要執行的指令與工作,一般可下 sync 將磁碟同步寫入之類的工作
1mkdir -p /etc/google/snapshots/2echo '#!/bin/bash3DATE=`date`4echo "${DATE} start"' >> /tmp/snapshot.log' > /etc/google/snapshots/pre.sh5
6echo '#!/bin/bash7DATE=`date`8echo "${DATE} finish"' >> /tmp/snapshot.log' > /etc/google/snapshots/post.sh- 設定執行權限,沒有設定會無法快照
1chmod +x /etc/google/snapshots/pre.sh2chmod +x /etc/google/snapshots/post.sh如腳本無提供執行權限,會出現以下錯誤

- 重起服務
1sudo systemctl restart google-guest-agent.service- 執行快照後可以發現腳本執行狀態
