use of com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult in project GNS by MobilityFirst.
the class AWSStatusCheck method main.
/**
*
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
init();
/*
* Amazon EC2
*/
for (String endpoint : endpoints) {
try {
ec2.setEndpoint(endpoint);
System.out.println("**** Endpoint: " + endpoint);
DescribeAvailabilityZonesResult availabilityZonesResult = ec2.describeAvailabilityZones();
System.out.println("You have access to " + availabilityZonesResult.getAvailabilityZones().size() + " Availability Zones.");
for (AvailabilityZone zone : availabilityZonesResult.getAvailabilityZones()) {
System.out.println(zone.getZoneName());
}
DescribeInstancesResult describeInstancesRequest = ec2.describeInstances();
List<Reservation> reservations = describeInstancesRequest.getReservations();
Set<Instance> instances = new HashSet<Instance>();
System.out.println("Instances: ");
for (Reservation reservation : reservations) {
for (Instance instance : reservation.getInstances()) {
instances.add(instance);
System.out.println(instance.getPublicDnsName() + " is " + instance.getState().getName());
}
}
System.out.println("Security groups: ");
DescribeSecurityGroupsResult describeSecurityGroupsResult = ec2.describeSecurityGroups();
for (SecurityGroup securityGroup : describeSecurityGroupsResult.getSecurityGroups()) {
System.out.println(securityGroup.getGroupName());
}
//System.out.println("You have " + instances.size() + " Amazon EC2 instance(s) running.");
} catch (AmazonServiceException ase) {
System.out.println("Caught Exception: " + ase.getMessage());
System.out.println("Reponse Status Code: " + ase.getStatusCode());
System.out.println("Error Code: " + ase.getErrorCode());
System.out.println("Request ID: " + ase.getRequestId());
}
/*
* Amazon SimpleDB
*
*/
try {
ListDomainsRequest sdbRequest = new ListDomainsRequest().withMaxNumberOfDomains(100);
ListDomainsResult sdbResult = sdb.listDomains(sdbRequest);
int totalItems = 0;
for (String domainName : sdbResult.getDomainNames()) {
DomainMetadataRequest metadataRequest = new DomainMetadataRequest().withDomainName(domainName);
DomainMetadataResult domainMetadata = sdb.domainMetadata(metadataRequest);
totalItems += domainMetadata.getItemCount();
}
System.out.println("You have " + sdbResult.getDomainNames().size() + " Amazon SimpleDB domain(s)" + "containing a total of " + totalItems + " items.");
} catch (AmazonServiceException ase) {
System.out.println("Caught Exception: " + ase.getMessage());
System.out.println("Reponse Status Code: " + ase.getStatusCode());
System.out.println("Error Code: " + ase.getErrorCode());
System.out.println("Request ID: " + ase.getRequestId());
}
/*
* Amazon S3
*.
*/
try {
List<Bucket> buckets = s3.listBuckets();
long totalSize = 0;
int totalItems = 0;
for (Bucket bucket : buckets) {
/*
* In order to save bandwidth, an S3 object listing does not
* contain every object in the bucket; after a certain point the
* S3ObjectListing is truncated, and further pages must be
* obtained with the AmazonS3Client.listNextBatchOfObjects()
* method.
*/
ObjectListing objects = s3.listObjects(bucket.getName());
do {
for (S3ObjectSummary objectSummary : objects.getObjectSummaries()) {
totalSize += objectSummary.getSize();
totalItems++;
}
objects = s3.listNextBatchOfObjects(objects);
} while (objects.isTruncated());
}
System.out.println("You have " + buckets.size() + " Amazon S3 bucket(s), " + "containing " + totalItems + " objects with a total size of " + totalSize + " bytes.");
} catch (AmazonServiceException ase) {
/*
* AmazonServiceExceptions represent an error response from an AWS
* services, i.e. your request made it to AWS, but the AWS service
* either found it invalid or encountered an error trying to execute
* it.
*/
System.out.println("Error Message: " + ase.getMessage());
System.out.println("HTTP Status Code: " + ase.getStatusCode());
System.out.println("AWS Error Code: " + ase.getErrorCode());
System.out.println("Error Type: " + ase.getErrorType());
System.out.println("Request ID: " + ase.getRequestId());
} catch (AmazonClientException ace) {
/*
* AmazonClientExceptions represent an error that occurred inside
* the client on the local host, either while trying to send the
* request to AWS or interpret the response. For example, if no
* network connection is available, the client won't be able to
* connect to AWS to execute a request and will throw an
* AmazonClientException.
*/
System.out.println("Error Message: " + ace.getMessage());
}
}
}
use of com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult in project Synapse-Stack-Builder by Sage-Bionetworks.
the class EC2SecuritySetup method describeResources.
public void describeResources() {
DescribeSecurityGroupsRequest req = new DescribeSecurityGroupsRequest();
req.setGroupNames(Arrays.asList(config.getElasticSecurityGroupName()));
DescribeSecurityGroupsResult res = ec2Client.describeSecurityGroups(req);
if ((res.getSecurityGroups() != null) && res.getSecurityGroups().size() == 1) {
SecurityGroup grp = res.getSecurityGroups().get(0);
resources.setElasticBeanstalkEC2SecurityGroup(grp);
String kpName = config.getStackKeyPairName();
KeyPairInfo inf = describeKeyPair();
if (inf != null) {
resources.setStackKeyPair(inf);
}
} else {
throw new IllegalStateException("Did not find one and ony one EC2 secruity group with the name: " + req.getGroupNames());
}
}
use of com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult in project Synapse-Stack-Builder by Sage-Bionetworks.
the class EC2SecuritySetupTest method testSetupElasticBeanstalkEC2SecutiryGroup.
@Test
public void testSetupElasticBeanstalkEC2SecutiryGroup() {
String expectedDescription = config.getElasticSecurityGroupDescription();
String expectedGroupName = config.getElasticSecurityGroupName();
DescribeSecurityGroupsResult result = new DescribeSecurityGroupsResult();
SecurityGroup expectedGroup = new SecurityGroup().withGroupName(expectedGroupName).withOwnerId("123");
result.withSecurityGroups(expectedGroup);
when(mockEC2Client.describeSecurityGroups(any(DescribeSecurityGroupsRequest.class))).thenReturn(result);
DescribeKeyPairsResult kpr = new DescribeKeyPairsResult().withKeyPairs(new KeyPairInfo().withKeyName("123"));
when(mockEC2Client.describeKeyPairs(any(DescribeKeyPairsRequest.class))).thenReturn(kpr);
// Create the security group.
ec2SecuritySetup.setupResources();
SecurityGroup group = resources.getElasticBeanstalkEC2SecurityGroup();
assertEquals(expectedGroup, group);
String groupName = group.getGroupName();
assertNotNull(groupName);
assertEquals(expectedGroupName, groupName);
CreateSecurityGroupRequest groupRequest = new CreateSecurityGroupRequest(expectedGroupName, expectedDescription);
// The create group should be called
verify(mockEC2Client).createSecurityGroup(groupRequest);
// Three permission should be set
// http
List<IpPermission> list = new LinkedList<IpPermission>();
list.add(new IpPermission().withIpProtocol(IP_PROTOCOL_TCP).withFromPort(PORT_HTTP).withToPort(PORT_HTTP).withIpRanges(CIDR_ALL_IP));
AuthorizeSecurityGroupIngressRequest request = new AuthorizeSecurityGroupIngressRequest(groupName, list);
verify(mockEC2Client).authorizeSecurityGroupIngress(request);
// https
list = new LinkedList<IpPermission>();
list.add(new IpPermission().withIpProtocol(IP_PROTOCOL_TCP).withFromPort(PORT_HTTPS).withToPort(PORT_HTTPS).withIpRanges(CIDR_ALL_IP));
request = new AuthorizeSecurityGroupIngressRequest(groupName, list);
verify(mockEC2Client).authorizeSecurityGroupIngress(request);
// ssh
list = new LinkedList<IpPermission>();
list.add(new IpPermission().withIpProtocol(IP_PROTOCOL_TCP).withFromPort(PORT_SSH).withToPort(PORT_SSH).withIpRanges(config.getCIDRForSSH()));
request = new AuthorizeSecurityGroupIngressRequest(groupName, list);
verify(mockEC2Client).authorizeSecurityGroupIngress(request);
// Make sure this is set
assertNotNull(resources.getElasticBeanstalkEC2SecurityGroup());
}
use of com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult in project photon-model by vmware.
the class AWSSecurityGroupClient method getSecurityGroupById.
public SecurityGroup getSecurityGroupById(String groupId) {
SecurityGroup cellGroup = null;
DescribeSecurityGroupsRequest req = new DescribeSecurityGroupsRequest().withGroupIds(groupId);
DescribeSecurityGroupsResult cellGroups = this.client.describeSecurityGroups(req);
if (cellGroups != null) {
cellGroup = cellGroups.getSecurityGroups().get(0);
}
return cellGroup;
}
use of com.amazonaws.services.ec2.model.DescribeSecurityGroupsResult in project photon-model by vmware.
the class TestAWSSetupUtils method getSecurityGroupsIdUsingEC2Client.
public static SecurityGroup getSecurityGroupsIdUsingEC2Client(AmazonEC2AsyncClient client, String awsGroupId) {
if (awsGroupId == null) {
return null;
}
DescribeSecurityGroupsRequest describeSGsRequest = new DescribeSecurityGroupsRequest().withFilters(new Filter(AWSConstants.AWS_GROUP_ID_FILTER, Collections.singletonList(awsGroupId)));
DescribeSecurityGroupsResult describeSGResult = client.describeSecurityGroups(describeSGsRequest);
if (describeSGResult.getSecurityGroups().size() > 0) {
return describeSGResult.getSecurityGroups().get(0);
} else {
return null;
}
}
Aggregations