List of usage examples for com.amazonaws.services.ec2.model DescribeSubnetsResult getSubnets
public java.util.List<Subnet> getSubnets()
Information about one or more subnets.
From source file:com.cloudera.director.aws.ec2.ebs.EBSAllocator.java
License:Apache License
/** * Get the availability zone from a Subnet ID. * * @param subnetId the id of the subnet/*from w w w . ja v a 2s .com*/ * @return the availability zone of the subnet */ private String getAvailabilityZoneFromSubnetId(String subnetId) { DescribeSubnetsRequest request = new DescribeSubnetsRequest().withSubnetIds(subnetId); DescribeSubnetsResult result = client.describeSubnets(request); Subnet subnet = Iterables.getOnlyElement(result.getSubnets()); return subnet.getAvailabilityZone(); }
From source file:com.cloudera.director.aws.ec2.EC2InstanceTemplateConfigurationValidator.java
License:Apache License
/** * Validates the configured subnet ID./* w ww. j a v a 2 s. c o m*/ * * @param client the EC2 client * @param configuration the configuration to be validated * @param accumulator the exception condition accumulator * @param localizationContext the localization context */ @VisibleForTesting void checkSubnetId(AmazonEC2Client client, Configured configuration, PluginExceptionConditionAccumulator accumulator, LocalizationContext localizationContext) { String subnetId = configuration.getConfigurationValue(SUBNET_ID, localizationContext); LOG.info(">> Describing subnet '{}'", subnetId); try { DescribeSubnetsResult result = client .describeSubnets(new DescribeSubnetsRequest().withSubnetIds(subnetId)); checkCount(accumulator, SUBNET_ID, localizationContext, "Subnet", result.getSubnets()); } catch (AmazonServiceException e) { if (e.getErrorCode().startsWith(INVALID_SUBNET_ID)) { addError(accumulator, SUBNET_ID, localizationContext, null, INVALID_SUBNET_MSG, subnetId); } else { throw Throwables.propagate(e); } } }
From source file:com.infinitechaos.vpcviewer.service.impl.VpcServiceImpl.java
License:Open Source License
@Override @Cacheable(value = CachingConfiguration.SUBNET_CACHE, key = "#vpcId", condition = "#bypassCache == false") public List<Subnet> getSubnetsForVpcInRegion(String vpcId, final String region, boolean bypassCache) { Preconditions.checkArgument(StringUtils.isNotBlank(vpcId), "vpcId may not be null or blank"); Preconditions.checkArgument(StringUtils.isNotBlank(region), "region may not be null or blank"); LOG.info("Retrieving subnets for VPC {} in region {} ({})", vpcId, region, bypassCache); DescribeSubnetsRequest request = new DescribeSubnetsRequest() .withFilters(new Filter().withName("vpc-id").withValues(vpcId)); DescribeSubnetsResult result = getClientForRegion(region).describeSubnets(request); return result.getSubnets(); }
From source file:com.pinterest.arcee.handler.SpecsHandler.java
License:Apache License
public List<SpecBean> getSubnets() { DescribeSubnetsRequest request = new DescribeSubnetsRequest(); request.setFilters(//from w w w . j av a2s.c o m Arrays.asList(new Filter[] { new Filter("VpcId", Arrays.asList(new String[] { VPC_ID })) })); DescribeSubnetsResult result = client.describeSubnets(); List<Subnet> subnets = result.getSubnets(); ArrayList<SpecBean> subnetsName = new ArrayList<>(); for (Subnet subnet : subnets) { SpecBean specBean = new SpecBean(); specBean.setSpecId(subnet.getSubnetId()); specBean.addInfo("zone", subnet.getAvailabilityZone()); if (subnet.getTags().isEmpty()) { specBean.addInfo("tag", ""); } else { specBean.addInfo("tag", subnet.getTags().get(0).getValue()); } subnetsName.add(specBean); } return subnetsName; }
From source file:com.pinterest.clusterservice.aws.AwsManagerImpl.java
License:Apache License
@Override public int getAvailableCapacityInSubnet(String subnetId) throws Exception { DescribeSubnetsRequest subnetsRequest = new DescribeSubnetsRequest(); subnetsRequest.setSubnetIds(Arrays.asList(subnetId)); DescribeSubnetsResult subnetsResult = ec2Client.describeSubnets(subnetsRequest); List<Subnet> subnets = subnetsResult.getSubnets(); if (subnets.isEmpty()) { return 0; }//from w ww . ja v a 2s. c o m Subnet subnet = subnets.get(0); return subnet.getAvailableIpAddressCount(); }
From source file:com.tvarit.plugin.SubnetFinder.java
License:Open Source License
public void find(MavenProject project, AmazonEC2Client amazonEC2Client, String projectName, final StringBuilder publicSubnetIdBuilder, final StringBuilder publicSubnetAzsBuilder, final String subnetType) { final DescribeSubnetsRequest describeAppSubnetsRequest = new DescribeSubnetsRequest(); final Filter subnetFilter = new Filter().withName("tag-key").withValues(projectName + ":" + subnetType); describeAppSubnetsRequest.withFilters(subnetFilter); final DescribeSubnetsResult describeSubnetsResult = amazonEC2Client .describeSubnets(describeAppSubnetsRequest); describeSubnetsResult.getSubnets().stream().forEach(eachSubnet -> { publicSubnetAzsBuilder.append(eachSubnet.getAvailabilityZone()).append(","); publicSubnetIdBuilder.append(eachSubnet.getSubnetId()).append(","); });/*from ww w. ja v a 2 s . c om*/ publicSubnetIdBuilder.deleteCharAt(publicSubnetIdBuilder.length() - 1); publicSubnetAzsBuilder.deleteCharAt(publicSubnetAzsBuilder.length() - 1); }
From source file:com.urbancode.terraform.tasks.aws.helpers.AWSHelper.java
License:Apache License
/** * * @param subnetIds/* www. ja va2 s . c o m*/ * @param ec2Client * @return */ public List<Subnet> getSubnets(List<String> subnetIds, AmazonEC2 ec2Client) { DescribeSubnetsRequest request = new DescribeSubnetsRequest(); if (subnetIds != null && !subnetIds.isEmpty()) { request = request.withSubnetIds(subnetIds); } DescribeSubnetsResult result = ec2Client.describeSubnets(request); return result.getSubnets(); }
From source file:com.vmware.photon.controller.model.adapters.awsadapter.AWSNetworkService.java
License:Open Source License
public Subnet getSubnet(String subnetID, AmazonEC2AsyncClient client) { DescribeSubnetsRequest req = new DescribeSubnetsRequest().withSubnetIds(subnetID); DescribeSubnetsResult subnetResult = client.describeSubnets(req); // if subnet not found an error thrown List<Subnet> subs = subnetResult.getSubnets(); return subs.get(0); }
From source file:de.unibi.cebitec.bibigrid.meta.aws.CreateClusterEnvironmentAWS.java
@Override public CreateClusterEnvironmentAWS createSubnet() { /////////////////////////////////////////////////////////////////////// ///// check for unused Subnet Cidr and create one DescribeSubnetsRequest describesubnetsreq = new DescribeSubnetsRequest(); DescribeSubnetsResult describesubnetres = cluster.getEc2().describeSubnets(describesubnetsreq); List<Subnet> loSubnets = describesubnetres.getSubnets(); List<String> listofUsedCidr = new ArrayList<>(); // contains all subnet.cidr which are in current vpc for (Subnet sn : loSubnets) { if (sn.getVpcId().equals(vpc.getVpcId())) { listofUsedCidr.add(sn.getCidrBlock()); }//from ww w.j a v a2 s . c om } SubNets subnets = new SubNets(vpc.getCidrBlock(), 24); String SUBNETCIDR = subnets.nextCidr(listofUsedCidr); log.debug(V, "Use {} for generated SubNet.", SUBNETCIDR); // create new subnetdir CreateSubnetRequest createsubnetreq = new CreateSubnetRequest(vpc.getVpcId(), SUBNETCIDR); createsubnetreq.withAvailabilityZone(cluster.getConfig().getAvailabilityZone()); CreateSubnetResult createsubnetres = cluster.getEc2().createSubnet(createsubnetreq); subnet = createsubnetres.getSubnet(); return this; }
From source file:hudson.plugins.ec2.SlaveTemplate.java
License:Open Source License
/** * Get a list of security group ids for the slave *//*from ww w. ja va2s . c om*/ private List<String> getEc2SecurityGroups(AmazonEC2 ec2) throws AmazonClientException { List<String> group_ids = new ArrayList<String>(); DescribeSecurityGroupsResult group_result = getSecurityGroupsBy("group-name", securityGroupSet, ec2); if (group_result.getSecurityGroups().size() == 0) { group_result = getSecurityGroupsBy("group-id", securityGroupSet, ec2); } for (SecurityGroup group : group_result.getSecurityGroups()) { if (group.getVpcId() != null && !group.getVpcId().isEmpty()) { List<Filter> filters = new ArrayList<Filter>(); filters.add(new Filter("vpc-id").withValues(group.getVpcId())); filters.add(new Filter("state").withValues("available")); filters.add(new Filter("subnet-id").withValues(getSubnetId())); DescribeSubnetsRequest subnet_req = new DescribeSubnetsRequest(); subnet_req.withFilters(filters); DescribeSubnetsResult subnet_result = ec2.describeSubnets(subnet_req); List<Subnet> subnets = subnet_result.getSubnets(); if (subnets != null && !subnets.isEmpty()) { group_ids.add(group.getGroupId()); } } } if (securityGroupSet.size() != group_ids.size()) { throw new AmazonClientException( "Security groups must all be VPC security groups to work in a VPC context"); } return group_ids; }