List of usage examples for com.amazonaws.services.autoscaling.model LaunchConfiguration getSecurityGroups
public java.util.List<String> getSecurityGroups()
A list that contains the security groups to assign to the instances in the Auto Scaling group.
From source file:com.haskins.cloudtrailviewer.dialog.resourcedetail.detailpanels.AsLaunchDetail.java
License:Open Source License
private void buildUI(DescribeLaunchConfigurationsResult detail) { this.add(primaryScrollPane, BorderLayout.CENTER); if (!detail.getLaunchConfigurations().isEmpty()) { List<LaunchConfiguration> lcs = detail.getLaunchConfigurations(); LaunchConfiguration lc = lcs.get(0); if (lc.getAssociatePublicIpAddress() != null) { primaryTableModel.addRow(new Object[] { "Has EIP", lc.getAssociatePublicIpAddress() }); }/* w w w . ja v a2s . c o m*/ if (lc.getClassicLinkVPCId() != null) { primaryTableModel.addRow(new Object[] { "Classic Link VPC Id", lc.getClassicLinkVPCId() }); } if (!lc.getClassicLinkVPCSecurityGroups().isEmpty()) { StringBuilder sgs = new StringBuilder(); for (String sg : lc.getClassicLinkVPCSecurityGroups()) { sgs.append(sg).append(", "); } primaryTableModel.addRow(new Object[] { "Classic Link VPC Security Groups", sgs.toString() }); } if (lc.getCreatedTime() != null) { primaryTableModel.addRow(new Object[] { "Created", getDateString(lc.getCreatedTime()) }); } if (lc.getEbsOptimized() != null) { primaryTableModel.addRow(new Object[] { "EBS Optimised", lc.getEbsOptimized() }); } if (lc.getIamInstanceProfile() != null) { primaryTableModel.addRow(new Object[] { "Instance Profile", lc.getIamInstanceProfile() }); } if (lc.getImageId() != null) { primaryTableModel.addRow(new Object[] { "Image Id", lc.getImageId() }); } if (lc.getInstanceType() != null) { primaryTableModel.addRow(new Object[] { "Instance Type", lc.getInstanceType() }); } if (lc.getKernelId() != null) { primaryTableModel.addRow(new Object[] { "Kernal Id", lc.getKernelId() }); } if (lc.getKeyName() != null) { primaryTableModel.addRow(new Object[] { "Key Name", lc.getKeyName() }); } if (lc.getLaunchConfigurationARN() != null) { primaryTableModel .addRow(new Object[] { "Launch Configuration Arn", lc.getLaunchConfigurationARN() }); } if (lc.getLaunchConfigurationName() != null) { primaryTableModel .addRow(new Object[] { "Launch Configuration Name", lc.getLaunchConfigurationName() }); } if (lc.getPlacementTenancy() != null) { primaryTableModel.addRow(new Object[] { "Placement Tenancy", lc.getPlacementTenancy() }); } if (lc.getRamdiskId() != null) { primaryTableModel.addRow(new Object[] { "Ram Disk ID", lc.getRamdiskId() }); } if (!lc.getSecurityGroups().isEmpty()) { StringBuilder sgs = new StringBuilder(); for (String sg : lc.getSecurityGroups()) { sgs.append(sg).append(", "); } primaryTableModel.addRow(new Object[] { "Security Groups", sgs.toString() }); } if (lc.getSpotPrice() != null) { primaryTableModel.addRow(new Object[] { "Spot Price", lc.getSpotPrice() }); } } }
From source file:com.netflix.spinnaker.clouddriver.aws.deploy.handlers.MigrateServerGroupStrategy.java
License:Apache License
protected List<MigrateSecurityGroupResult> generateTargetSecurityGroups(LaunchConfiguration sourceLaunchConfig, MigrateServerGroupResult result) { sourceLaunchConfig.getSecurityGroups().stream() .filter(g -> !sourceLookup.getSecurityGroupById(source.getCredentialAccount(), g, source.getVpcId()) .isPresent())/*from www .j av a 2 s. c om*/ .forEach(m -> result.getWarnings().add( "Skipping creation of security group: " + m + " (could not be found in source location)")); List<String> securityGroupNames = sourceLaunchConfig.getSecurityGroups().stream() .filter(g -> sourceLookup.getSecurityGroupById(source.getCredentialAccount(), g, source.getVpcId()) .isPresent()) .map(g -> sourceLookup.getSecurityGroupById(source.getCredentialAccount(), g, source.getVpcId()) .get()) .map(g -> g.getSecurityGroup().getGroupName()).collect(Collectors.toList()); List<MigrateSecurityGroupResult> targetSecurityGroups = securityGroupNames.stream() .map(group -> getMigrateSecurityGroupResult(group)).collect(Collectors.toList()); if (getDeployDefaults().getAddAppGroupToServerGroup()) { Names names = Names.parseName(source.getName()); // if the app security group is already present, don't include it twice Optional<MigrateSecurityGroupResult> appGroup = targetSecurityGroups.stream() .filter(r -> names.getApp().equals(r.getTarget().getTargetName())).findFirst(); if (!appGroup.isPresent()) { appGroup = Optional.of(generateAppSecurityGroup()); targetSecurityGroups.add(appGroup.get()); } handleClassicLinkIngress(appGroup.get().getTarget().getTargetId()); } return targetSecurityGroups; }
From source file:com.pinterest.arcee.autoscaling.AwsAutoScaleGroupManager.java
License:Apache License
@Override public GroupBean getLaunchConfigByName(String configId) throws Exception { GroupBean groupBean = new GroupBean(); if (configId == null) { return groupBean; }// w w w . jav a2 s .co m DescribeLaunchConfigurationsRequest configurationsRequest = new DescribeLaunchConfigurationsRequest(); configurationsRequest.setLaunchConfigurationNames(Arrays.asList(configId)); DescribeLaunchConfigurationsResult configurationsResult = aasClient .describeLaunchConfigurations(configurationsRequest); List<LaunchConfiguration> configs = configurationsResult.getLaunchConfigurations(); if (configs.isEmpty()) { return groupBean; } LaunchConfiguration config = configs.get(0); groupBean.setInstance_type(config.getInstanceType()); groupBean.setImage_id(config.getImageId()); if (!config.getSecurityGroups().isEmpty()) { groupBean.setSecurity_group(config.getSecurityGroups().get(0)); } groupBean.setUser_data(new String(Base64.decodeBase64(config.getUserData()))); groupBean.setIam_role(config.getIamInstanceProfile()); if (config.isAssociatePublicIpAddress() != null) { groupBean.setAssign_public_ip(config.getAssociatePublicIpAddress()); } else { // default value to false groupBean.setAssign_public_ip(false); } return groupBean; }
From source file:com.pinterest.arcee.autoscaling.AwsAutoScalingManager.java
License:Apache License
@Override public AwsVmBean getLaunchConfigInfo(String launchConfigId) throws Exception { DescribeLaunchConfigurationsRequest configRequest = new DescribeLaunchConfigurationsRequest(); configRequest.setLaunchConfigurationNames(Arrays.asList(launchConfigId)); DescribeLaunchConfigurationsResult configResult = aasClient.describeLaunchConfigurations(configRequest); List<LaunchConfiguration> configs = configResult.getLaunchConfigurations(); if (configs.isEmpty()) { LOG.error(String.format("Failed to get cluster: Launch config %s does not exist", launchConfigId)); return null; }/* w w w. j a v a 2 s. c om*/ LaunchConfiguration config = configs.get(0); AwsVmBean awsVmBean = new AwsVmBean(); awsVmBean.setImage(config.getImageId()); awsVmBean.setHostType(config.getInstanceType()); awsVmBean.setSecurityZone(config.getSecurityGroups().get(0)); awsVmBean.setAssignPublicIp(config.getAssociatePublicIpAddress()); awsVmBean.setLaunchConfigId(config.getLaunchConfigurationName()); String roleName = config.getIamInstanceProfile(); if (roleName.contains("/")) { awsVmBean.setRole(roleName.split("/")[1]); } else { awsVmBean.setRole(roleName); } String userData = new String(Base64.decodeBase64(config.getUserData())); awsVmBean.setRawUserDataString(userData); return awsVmBean; }
From source file:com.pinterest.clusterservice.cm.AwsVmManager.java
License:Apache License
@Override public AwsVmBean getCluster(String clusterName) throws Exception { AutoScalingGroup group = getAutoScalingGroup(clusterName); if (group == null) { LOG.warn(String.format("Failed to get cluster %s: auto scaling group %s does not exist", clusterName, clusterName));/*from w ww.j av a 2 s. co m*/ return null; } LaunchConfiguration config = getLaunchConfig(group.getLaunchConfigurationName()); if (config == null) { LOG.warn(String.format("Failed to get cluster: Launch config %s does not exist", group.getLaunchConfigurationName())); return null; } AwsVmBean awsVmBean = new AwsVmBean(); awsVmBean.setClusterName(clusterName); awsVmBean.setImage(config.getImageId()); awsVmBean.setHostType(config.getInstanceType()); awsVmBean.setSecurityZone(config.getSecurityGroups().get(0)); awsVmBean.setAssignPublicIp(config.getAssociatePublicIpAddress()); awsVmBean.setLaunchConfigId(config.getLaunchConfigurationName()); String roleName = config.getIamInstanceProfile(); awsVmBean.setRole(roleName.split("/")[1]); String userData = new String(Base64.decodeBase64(config.getUserData())); awsVmBean.setUserDataConfigs(transformUserDataToConfigMap(clusterName, userData)); awsVmBean.setSubnet(group.getVPCZoneIdentifier()); awsVmBean.setMinSize(group.getMinSize()); awsVmBean.setMaxSize(group.getMaxSize()); return awsVmBean; }