インスタンス起動時にサーバー固有の設定を行うのに、startup-script(cloud-init?)という機能があります。
スタートアップスクリプト、シャットダウンスクリプトをinstance-template等で以下で指定できます。AWSだと、userdata scriptが相当しますが、AWSの場合、Launch Configrationに組み込まれてしまっており、userdata scriptを変更する際、Launch Configrationの作り直しが必要だが、GCEではGoogle Cloud Storageなど、instance-templateから分けることができますので、scriptだけ変更することも可能。anoymous accessを使うため、Google Cloud Storageにscriptを置く際、public-readできるようにしておく必要があります。→ここ
また、shutdown-scriptは、AWSだとAutoScaling lifecycle hookに相当するものと思われます。
--metadata startup-script-url=gs://h-XXXX-XXXX/startup.sh shutdown-script-url=gs://h-XXXX-XXXX/mackerel-retire.sh
登録されると、WEB UI等に下記のように確認することができます。
画面(上記のSerial console output)、CLI commandでstartupscriptのログを確認することができます。コンソール出力だと「startupscript:」の行がスタートアップスクリプトのログになります。
gcloud compute instances <instance id> get-serial-port-output instance-1