簡體   English   中英

google-cloud使用python api獲取實例ID和區域

[英]google-cloud get instance id and zone with python api

如何獲取當前運行的instanceId,以及它在運行的Python應用程序中的區域。

在Go和Java中,它是以下面的方式完成的,Python中的等價物是什么?

走,

import metadata "cloud.google.com/go/compute/metadata"

func main(){
    println(metadata.InstanceID))
}

Java的

String instanceId = com.google.cloud.MetadataConfig.getInstanceId()

我找到了一個簡單的解決方

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

在Python中,它需要更多的編碼。 您需要執行以下操作,列出Google Compute Engine中的所有實例。 實例的ID和區域。

  1. 使用Python客戶端庫文檔中,您可以看到CreateListDelete實例的示例代碼。 整個源代碼還有一個指向GitHub的鏈接。
  2. 要列出實例,您需要PROJECT_IDZONE 這意味着你必須列出所有可用ZONES第一,然后列出每個所有實例ZONE (如果可用)。 有關所有可用區域的信息,請參閱Regions和Zones文檔,有關列出它們的Python代碼,請參閱Method:zones.list

我做了一些自我編碼,我有一個適合我的代碼。 你可以在這里找到我的代碼示例

注:該代碼將需要一些時間來執行,因為它是尋找在每個可用的所有可能的可用實例ZONE

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM