google cloud使用python api获取实例id和区域

google cloud使用python api获取实例id和区域,python,google-cloud-platform,google-cloud-python,Python,Google Cloud Platform,Google Cloud Python,如何获取当前正在运行的instanceId,以及它在正在运行的Python应用程序中的区域 在Go和Java中,它是通过以下方式完成的,Python中的等价物是什么 去, 爪哇 在Python中,它需要更多的编码。下面是您需要做的,列出Google Compute Engine中的所有实例。实例的ID和区域 在文档中,您可以看到创建、列表和删除实例的示例代码。还有一个指向GitHub的链接,可以查看整个源代码 要列出实例,您需要项目ID和区域。这意味着您必须首先列出所有可用的区域,然后列出每个区

如何获取当前正在运行的instanceId,以及它在正在运行的Python应用程序中的区域

在Go和Java中,它是通过以下方式完成的,Python中的等价物是什么

去,

爪哇


在Python中,它需要更多的编码。下面是您需要做的,列出Google Compute Engine中的所有实例。实例的ID和区域

  • 在文档中,您可以看到
    创建
    列表
    删除
    实例的示例代码。还有一个指向GitHub的链接,可以查看整个源代码
  • 要列出实例,您需要
    项目ID
    区域
    。这意味着您必须首先列出所有可用的
    区域
    ,然后列出每个
    区域
    中的所有实例(如果可用)。请参阅所有可用区域的文档,并参阅以获取列出它们的Python代码
  • 我做了一点自我编码,我有一个适合我的代码。你可以找到我的


    注意:代码将需要一些时间来执行,因为它正在每个可用的
    区域中查找所有可能的可用实例

    我找到了一个简单的解决方案:

     requests.get("http://metadata/computeMetadata/v1/instance/id",
             headers={'Metadata-Flavor': 'Google'}).text
    

    元数据服务不是通过更高级别的语言SDK一致公开的。但是,直接构造HTTP请求以获取所需的实例元数据非常简单。请看这里:
    String instanceId = com.google.cloud.MetadataConfig.getInstanceId()
    
     requests.get("http://metadata/computeMetadata/v1/instance/id",
             headers={'Metadata-Flavor': 'Google'}).text