- blogs:
- cles::blog
« PS2 出荷終了へ :: ヒョウ柄の東京ばな奈をお土産に »
2012/12/29

ghettoVCB がハングするのでスクリプトをちょっと手直ししてみた

ESXi 上の VM のバックアップを取るときには以前から ghettoVCB を使っているのですが、いくつかのマシンで途中でスクリプトがだんまりになってしまって、うまくバックアップがとれないという症状が発生していました。
これまでいろいろと試行錯誤してみて分かったことは、
・ESXi のバージョンに依存した問題で、該当のマシンであれば 100% ハングする。
・ハングはスナップショットの削除待ちの部分。手動でスナップショットを削除してやれば、スクリプトは何事もなかったように動き出す。
という2点でした。
さすがにちょっと手動で vmdk のバックアップを取るのも面倒になってきたので本格的に対策をしようと思って調べてみたところ、同じような問題にぶち当たって解決しているエントリ*1*2を見つけたので、これを参考に対策をしてみることにしました。
† スクリプトの改造点
以前作った qmail 向けのパッチと合わせたのが下記のパッチです。
僕のところではこれで正常にバックアップが取れることを確認しました。
diff -u ghettoVCB.sh.org ghettoVCB.sh
--- ghettoVCB.sh.org 2012-12-28 23:28:15.844038192 +0900
+++ ghettoVCB.sh 2012-12-28 23:36:57.009311583 +0900
@@ -932,7 +932,7 @@
SNAPSHOT_ID=$(${VMWARE_CMD} vmsvc/snapshot.get ${VM_ID} | grep -E '(Snapshot Name|Snapshot Id)' | grep -A1 ${SNAPSHOT_NAME} | grep "Snapshot Id" | awk -F ":" '{print $2}' | sed -e 's/^[[:blank:]]*//;s/[[:blank:]]*$//')
${VMWARE_CMD} vmsvc/snapshot.remove ${VM_ID} ${SNAPSHOT_ID} > /dev/null 2>&1
else
- ${VMWARE_CMD} vmsvc/snapshot.remove ${VM_ID} > /dev/null 2>&1
+ ${VMWARE_CMD} vmsvc/snapshot.removeall ${VM_ID} > /dev/null 2>&1
fi
#do not continue until all snapshots have been committed
@@ -1119,7 +1119,8 @@
for i in ${EMAIL_TO};
do
buildHeaders ${i}
- "${NC_BIN}" -i "${EMAIL_DELAY_INTERVAL}" "${EMAIL_SERVER}" "${EMAIL_SERVER_PORT}" < "${EMAIL_LOG_CONTENT}" > /dev/null 2>&1
+# "${NC_BIN}" "${EMAIL_SERVER}" "${EMAIL_SERVER_PORT}" < "${EMAIL_LOG_CONTENT}" > /dev/null 2>&1
+ awk '{gsub(/\r/,""); gsub(/$/,"\r"); print $0;}' "${EMAIL_LOG_CONTENT}" | "${NC_BIN}" -v -C -i 1 "${EMAIL_SERVER}" "${EMAIL_SERVER_PORT}" > /dev/null 2>&1
if [ $? -eq 1 ]; then
logger "info" "ERROR: Failed to email log output to ${EMAIL_SERVER}:${EMAIL_SERVER_PORT} to ${EMAIL_TO}\n"
fi
@@ -1127,7 +1128,8 @@
unset IFS
else
buildHeaders ${EMAIL_TO}
- "${NC_BIN}" -i "${EMAIL_DELAY_INTERVAL}" "${EMAIL_SERVER}" "${EMAIL_SERVER_PORT}" < "${EMAIL_LOG_CONTENT}" > /dev/null 2>&1
+# "${NC_BIN}" "${EMAIL_SERVER}" "${EMAIL_SERVER_PORT}" < "${EMAIL_LOG_CONTENT}" > /dev/null 2>&1
+ awk '{gsub(/\r/,""); gsub(/$/,"\r"); print $0;}' "${EMAIL_LOG_CONTENT}" | "${NC_BIN}" -C -v -i 1 "${EMAIL_SERVER}" "${EMAIL_SERVER_PORT}" > /dev/null 2>&1
if [ $? -eq 1 ]; then
logger "info" "ERROR: Failed to email log output to ${EMAIL_SERVER}:${EMAIL_SERVER_PORT} to ${EMAIL_TO}\n"
fi
- *1: ghettoVCB が動作せず、バックアップできない問題 - rain -しとしと降る雨の夜に-
- *2: VMware Communities: ghettoVCB.sh hangs when trying to...
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/5474
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
« PS2 出荷終了へ :: ヒョウ柄の東京ばな奈をお土産に »
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(112307)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110946)
3 . 年次の人間ドックへ(110510)
4 . 2023 年分の確定申告完了!(1つめ)(110059)
5 . 三菱鉛筆がラミーを買収(109960)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(110946)
3 . 年次の人間ドックへ(110510)
4 . 2023 年分の確定申告完了!(1つめ)(110059)
5 . 三菱鉛筆がラミーを買収(109960)
cles::blogについて
Referrers