实例环境变量

reg*_*low 15 metadata google-compute-engine

我有几个Google Compute Engine实例,并且已经在每个实例上设置了实例元数据,假设它们在实例本身可用作环境变量,但它们不会显示.然后我在这里读到我需要向元数据服务器查询这些数据,但是当从实例本身运行时,这只会返回403.有没有办法将元数据作为环境变量访问?

Chr*_*irt 22

可能值得研究元数据查询更多,但我的猜测是你试图获得自定义元数据,这导致它找不到.确保使用该attributes目录访问任何自定义元数据.

例如,这将获得内置tags元数据:

curl "http://metadata.google.internal/computeMetadata/v1/instance/tags" \
    -H "Metadata-Flavor: Google"
Run Code Online (Sandbox Code Playgroud)

虽然这将获取属性的自定义元数据foo:

curl "http://metadata.google.internal/computeMetadata/v1/<instance|project>/attributes/foo" \
    -H "Metadata-Flavor: Google"
Run Code Online (Sandbox Code Playgroud)

  • 您可能以为,因为某些元数据实际上确实作为环境变量被加载到实例中,而其他一些实际上被加载到文件中。如果愿意,您可以创建一个启动脚本以及一个cron作业,该作业可以通过key =&gt; value提取所有元数据并以相同的方式设置环境变量,但是某些元数据比您的标准大得多环境变量:) (2认同)