我正在尝试使用 Google Cloud 计算 VM 执行关闭脚本。
我在运行时看到此输出gcloud compute connect-to-serial-port startup-test-v
Apr 8 22:01:25 startup-test-v shutdown-script: INFO Starting shutdown scripts.
Apr 8 22:01:25 startup-test-v shutdown-script: INFO Found shutdown-script in metadata.
Apr 8 22:01:26 startup-test-v shutdown-script: INFO shutdown-script: No change requested; skipping update for [startup-test-v].
Apr 8 22:01:27 startup-test-v shutdown-script: INFO shutdown-script: Return code 0.
Apr 8 22:01:27 startup-test-v shutdown-script: INFO Finished running shutdown scripts.
我从命令行创建抢占式实例并在 GUI 中将其关闭。
gcloud compute instances create $INSTANCE_NAME \
--zone=$ZONE \
--image-family=$IMAGE_FAMILY \
--image-project=deeplearning-platform-release \
--maintenance-policy=TERMINATE \
--machine-type=$INSTANCE_TYPE \
--boot-disk-size=50GB \
--metadata="install-nvidia-driver=True" \
--preemptible \
--scopes="storage-rw,cloud-platform" \
--metadata-from-file="shutdown-script=gce/shutdown_test.sh"
shutdown_test.sh
很简单:
#!/bin/bash
echo "+++ Shutdown test +++"
exit 0
启动脚本按预期工作。我也尝试将--metadata-from-file
标志交换--metadata-from-file shutdown-script=gce/shutdown_test.sh
为,没有任何变化。
想法?似乎 GCE 正在寻找关闭脚本,但没有执行它。