このドキュメントでは、Compute Engine VM インスタンスの更新時に発生する可能性のある一般的な問題の解決策について説明します。VM を更新する一般的な手順については、インスタンス プロパティを更新するをご覧ください。
ベスト プラクティス
VM の更新時に発生する一般的な問題を回避するには、次のベスト プラクティスに従ってください。
update-from-file
ワークフローを使用します。インスタンス構成をファイルにエクスポートし、ファイルを変更してから、gcloud compute instances update-from-file
コマンドを使用して変更を適用します。このアプローチは、手動コマンドによるエラーを防ぐのに役立ちます。most-disruptive-allowed-action
フラグを使用する: このフラグは、誤って再起動することを防ぎます。変更をテストする場合はNO_EFFECT
、中断のない更新の場合はREFRESH
、再起動が許容されることが確実な場合はRESTART
に設定します。
一般的な問題
このセクションでは、VM の更新時に発生する可能性のあるエラーと、その解決方法について説明します。
メタデータのフィンガープリントが一致しない
このエラーは、VM インスタンスを更新しようとしたときに、最後にページを更新したかインスタンス データを取得した後に、別のプロセスによって VM のメタデータが更新された場合に発生します。
エラー メッセージ:
Supplied fingerprint does not match current metadata fingerprint
解決策:
リクエストのインスタンス フィンガープリント プロパティが、インスタンスの現在のフィンガープリントと一致している。これにより、同時更新リクエストが相互に上書きされるのを防ぐことができます。次のようにしてください。
ページを更新する: Google Cloud コンソールを使用している場合は、変更を行う前に VM インスタンスの [詳細] ページを更新します。
--no-etag-cache
Google Cloud CLI フラグを使用する: Google Cloud CLI を使用している場合は、gcloud compute instances update
コマンドで--no-etag-cache
フラグを使用します。数分後に再試行する: 最終手段として、VM を停止し、数分待ってから、もう一度変更を試してください。