C# 在实例本身中获取EC2实例属性的最简单方法

C# 在实例本身中获取EC2实例属性的最简单方法,c#,amazon-ec2,amazon-web-services,C#,Amazon Ec2,Amazon Web Services,你们能告诉我如何从我运行代码的地方检索instanceId、dns公共名称和当前EC2实例的类型吗 我正在玩DescribeInstanceAttribute(),但它需要为请求提供instanceId,我找不到如何获取当前运行实例的id。有一个返回计算机信息的Web服务。通路 http://169.254.169.254/latest/meta-data/instance-id 检索实例id的步骤 可以很方便。您也可以使用例如Amazon.EC2.Util.EC2Metadata.Insta

你们能告诉我如何从我运行代码的地方检索instanceId、dns公共名称和当前EC2实例的类型吗


我正在玩
DescribeInstanceAttribute()
,但它需要为请求提供instanceId,我找不到如何获取当前运行实例的id。

有一个返回计算机信息的Web服务。通路

http://169.254.169.254/latest/meta-data/instance-id
检索实例id的步骤


可以很方便。

您也可以使用例如
Amazon.EC2.Util.EC2Metadata.InstanceId.ToString()

有一种比调用web API简单得多的方法,.NET SDK

例如,如果需要InstanceId,可以使用:

Amazon.Util.EC2InstanceMetadata.InstanceId.ToString();
所有其他属性都以类似的方式提供


请注意,SDK以前有Amazon.EC2.Utils—这在2015年被弃用,并移动到Amazon.Util命名空间

nice。所以我必须做一个简单的
HttpWebRequest
。。。更感谢的是,将AWS提供的SDK用于此特定目的(请参见下面Michael Wheeler的回答)注意,自Michael的帖子发布以来,事情已经发生了变化。.NET SDK已经更新,属性现在位于:Amazon.Util.EC2InstanceMetadataThank you sir。我知道怎么做,但我真正想要的是怎么做。Amazon.EC2.Util现在已经被弃用了,请参阅我上面的帖子,了解.NET SDK中属性的当前位置。上面列出的文档从2017年5月起被移动。