Advertisement
Guest User

Untitled

a guest
Jun 26th, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.37 KB | None | 0 0
  1. import java.io.IOException;
  2. import java.util.Arrays;
  3. import java.util.List;
  4.  
  5. import com.amazonaws.auth.AWSCredentials;
  6. import com.amazonaws.auth.PropertiesCredentials;
  7. import com.amazonaws.services.ec2.AmazonEC2Client;
  8. import com.amazonaws.services.ec2.model.DescribeInstancesRequest;
  9. import com.amazonaws.services.ec2.model.DescribeInstancesResult;
  10. import com.amazonaws.services.ec2.model.Filter;
  11. import com.amazonaws.services.ec2.model.Instance;
  12. import com.amazonaws.services.ec2.model.Reservation;
  13.  
  14. /**
  15. * app that calls AWS API to get instance state by tag name
  16. * To use this, just create "AwsCredentials.properties" file with following info in it
  17. * accessKey:
  18. * secretKey:
  19. */
  20. public class AwsConsoleApp {
  21.  
  22. static AmazonEC2Client amazonEC2Client;
  23.  
  24. public static void main(String args[]) throws IOException {
  25.  
  26. //load aws credentials from properties file
  27. AWSCredentials credentials = new PropertiesCredentials(
  28. AwsConsoleApp.class
  29. .getResourceAsStream("AwsCredentials.properties"));
  30. System.out.println("after loading aws credentials");
  31.  
  32. //create ec2 client using the credentials
  33. amazonEC2Client = new AmazonEC2Client(credentials);
  34. System.out.println("created amazonEC2Client");
  35.  
  36. //set server location
  37. amazonEC2Client.setEndpoint("ec2.us-west-2.amazonaws.com");
  38.  
  39. //create filter to fetch instance list by tag key
  40. Filter filter = new Filter();
  41. String tagFilterName = "tag-key";//tag-key is predefined name of filter to use when using tag keys
  42. filter.setName(tagFilterName);
  43.  
  44. String[] tagKey = { "Name" };//specify the name of tags key here
  45. filter.setValues(Arrays.asList(tagKey));
  46.  
  47. //create a instance request object and set filter to it
  48. DescribeInstancesRequest request = new DescribeInstancesRequest();
  49. // request.setInstanceIds(Arrays.asList(instances));
  50. request.setFilters(Arrays.asList(filter));
  51.  
  52. //perform aws query to get the instance result
  53. DescribeInstancesResult response = amazonEC2Client
  54. .describeInstances(request);
  55. System.out.println("after requesting aws for instances result");
  56.  
  57. //now iterate over the result
  58. List<Reservation> reservations = response.getReservations();
  59. for (Reservation reservation : reservations) {
  60. for (Instance instance : reservation.getInstances()) {
  61. System.out.println("instance keyname=" + instance.getKeyName()
  62. + ";id=" + instance.getInstanceId() + ";tags="
  63. + instance.getTags());
  64. }
  65. }
  66. }
  67. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement