2016-11-08 15 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/パスを試すことができます。正確なURLは次のとおりです。

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コールを介してアクセスすることができますいくつかの他)、それにはかなりの情報があります。