我尝试在计算引擎.net API中使用启动脚本启动实例。 这是我使用的代码 -
var start = new Google.Apis.Compute.v1.Data.Metadata.ItemsData();
start.Key = "startup-script";
start.Value = "C:\\Users\\User\\Desktop\\script.sh";
newinst.Metadata = new Google.Apis.Compute.v1.Data.Metadata();
newinst.Metadata.Items = new List<Google.Apis.Compute.v1.Data.Metadata.ItemsData>();
newinst.Metadata.Items.Add(start);
这是我的脚本 -
#! /bin/sh
gsutil cp gs://bucket/file dir
dir是图像中的现有目录。实例启动但没有运行该命令的跟踪。
进一步信息:从查看日志信息看起来,在元数据中找到了一个脚本,并且实例认为它正在运行它但没有执行任何命令
答案 0 :(得分:1)
对于任何有兴趣的人,我需要的是添加 -
newinst.Metadata.Kind = "compute#metadata";
在执行InsertRequest之前,或者它不会使用脚本。