【问题标题】:no default vpc for this user with .net SDK此用户没有使用 .net SDK 的默认 vpc
【发布时间】:2014-10-16 01:42:22
【问题描述】:

我正在尝试构建一个简单的 Web 表单来启动 EC2 实例。但是当 describesecuritygroup 响应附加到 ec2client 对象时出现错误。 “此用户没有默认 VPC”
任何想法,代码的sn-p:

    protected void Button_Build_Click(object sender, EventArgs e)
    {
        var ec2client = new AmazonEC2Client(RegionEndpoint.USWest1);


        DescribeVpcsRequest foo1 = new DescribeVpcsRequest()
        {
            VpcIds = new List<string> { "vpc-XXXXXX" }
        };

        DescribeVpcsResponse foo2 = ec2client.DescribeVpcs(foo1);
        ec2client.DescribeVpcs(foo1);            
        var secGroupRequest = new DescribeSecurityGroupsRequest()


        {
            GroupNames = new List<String> { securitygroup }

        };


        DescribeSecurityGroupsResponse secGroupResponse = ec2client.DescribeSecurityGroups(secGroupRequest);

       SecurityGroup secGroup = secGroupResponse.SecurityGroups[0]; 



       var runInstancesRequest = new RunInstancesRequest()
       {
           ImageId = ami,
           InstanceType = size,
           MinCount = 1,
           MaxCount = 1,
           KeyName = keypair,
           SubnetId = subnetid



       };
       runInstancesRequest.SecurityGroups.Add(securitygroup);
       runInstancesRequest.SubnetId = subnetid;

【问题讨论】:

    标签: .net amazon-web-services amazon-ec2 amazon-vpc


    【解决方案1】:

    在此处查看 AWS 文档中的示例代码: http://docs.aws.amazon.com/AWSSdkDocsNET/latest/DeveloperGuide/run-instance.html

    特别是,您需要创建一个 InstanceNetworkInterfaceSpecification 对象并将其添加到 RunInstancesRequest。

    (1) 创建对象...

    List<string> groups = new List<string>() { secGroup.GroupId };
    var eni = new InstanceNetworkInterfaceSpecification()
    {
        DeviceIndex = 0,
        SubnetId = subnetID,
        Groups = groups,
        AssociatePublicIpAddress = true
    };
    List<InstanceNetworkInterfaceSpecification> enis = new List<InstanceNetworkInterfaceSpecification>() {eni};
    

    (2) 将其添加到请求中...

       var runInstancesRequest = new RunInstancesRequest()
       {
           ImageId = ami,
           InstanceType = size,
           MinCount = 1,
           MaxCount = 1,
           KeyName = keypair,
           SubnetId = subnetid,
    
           //***created above***
           NetworkInterfaces = enis
    
       };
    

    【讨论】:

      猜你喜欢
      • 2015-12-14
      • 2018-09-01
      • 2022-09-30
      • 2021-12-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多