我在下面的c#:
中使用了AWSSDK for .netvar img_desc= Amazon.EC2.Util.ImageUtilities.WINDOWS_2008_BASE;
string imageId = ImageUtilities.FindImage(ec2Client, img_desc).ImageId;
允许我将图像名称映射到ami id。 但由于一些奇怪的原因,他们只为Windows而不是Linux做过。 是否有类似的方式(api或公共共享地图),我可以从这样的linux发行版中查找ami id?
string ami_id = ???.findImage("Ubuntu10.4");
答案 0 :(得分:0)
我明白了:
var filter1 = new Filter("description", new List<string> { "*SUSE*" });
var req = new DescribeImagesRequest();
req.Filters.Add(filter1);
req.Owners.Add("amazon");
var imgs = ec2Client.DescribeImages(req);
foreach(Amazon.EC2.Model.Image img in imgs.Images)
{
Console.WriteLine(img.Name + " , " + img.ImageId + " , " + img.Description + " , " + img.Platform + " , " + img.Architecture);
}
请注意,您必须使用过滤器,否则您必须等待加载33000张图像。 另请注意,许多图片没有设置平台属性,因此您必须在名称和说明中进行搜索。