AWSSDK linux AMI查找

时间:2014-12-22 04:31:43

标签: c#

我在下面的c#:

中使用了AWSSDK for .net
var 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");

1 个答案:

答案 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张图像。 另请注意,许多图片没有设置平台属性,因此您必须在名称和说明中进行搜索。