2016-11-08 56 views
1

是否有可能從實例元數據API獲取對象,或者您是否始終必須直接指向您想要的內容?EC2元數據API是否可以返回對象?

# So I could do this: 
$obj = Invoke-Restmethod -uri http://169.254.169.254/latest/meta-data/ 
$obj.placement.availability-zone 
$obj.hostname 

# Instead of this: 
$zone = Invoke-Restmethod -uri http://169.254.169.254/latest/meta-data/placement/availability-zone 
$name = Invoke-Restmethod -uri http://169.254.169.254/latest/meta-data/hostname 

它很容易沒有對象,但只是好奇,如果其可能

回答

1

你可以嘗試/latest/dynamic/路徑。確切的網址是:

http://169.254.169.254/latest/dynamic/instance-identity/document 

它返回以下形式的JSON:

{ 
    "devpayProductCodes" : null, 
    "privateIp" : "172.31.1.178", 
    "availabilityZone" : "us-east-1c", 
    "accountId" : "XXXXXXXXXXX", 
    "version" : "2010-08-31", 
    "region" : "us-east-1", 
    "instanceId" : "i-XXXXXXXXXX", 
    "billingProducts" : null, 
    "instanceType" : "t2.micro", 
    "pendingTime" : "2016-10-20T16:16:48Z", 
    "imageId" : "ami-XXXXXXXX", 
    "architecture" : "x86_64", 
    "kernelId" : null, 
    "ramdiskId" : null 
} 

需要注意的是它不具有hostname場(並且可以通過meta-data電話訪問的幾個人),但它確實有相當多的信息。

相關問題