use of software.amazon.awssdk.services.ec2.model.CreateKeyPairRequest in project GNS by MobilityFirst.
the class AWSEC2 method createKeyPair.
/**
* Create a New Key Pair
*
* @param ec2
* @param name
* @return the keypair
*/
public static KeyPair createKeyPair(AmazonEC2 ec2, String name) {
CreateKeyPairRequest newKeyRequest = new CreateKeyPairRequest();
newKeyRequest.setKeyName(name);
CreateKeyPairResult keyresult = ec2.createKeyPair(newKeyRequest);
/**
* **********************print the properties of this key****************
*/
KeyPair keyPair = keyresult.getKeyPair();
System.out.println("The key we created is = " + keyPair.toString());
/**
* ***************store the key in a .pem file ***************
*/
try {
String fileName = KEYHOME + FILESEPARATOR + name + PRIVATEKEYFILEEXTENSION;
File distFile = new File(fileName);
BufferedReader bufferedReader = new BufferedReader(new StringReader(keyPair.getKeyMaterial()));
BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(distFile));
char[] buf = new char[1024];
int len;
while ((len = bufferedReader.read(buf)) != -1) {
bufferedWriter.write(buf, 0, len);
}
bufferedWriter.flush();
bufferedReader.close();
bufferedWriter.close();
} catch (IOException e) {
e.printStackTrace();
}
return keyPair;
}
use of software.amazon.awssdk.services.ec2.model.CreateKeyPairRequest in project Synapse-Stack-Builder by Sage-Bionetworks.
the class EC2SecuritySetup method createOrGetKeyPair.
/**
* Create the key par
* @return
*/
public KeyPairInfo createOrGetKeyPair() {
String name = config.getStackKeyPairName();
KeyPairInfo info = describeKeyPair();
if (info == null) {
log.debug("Creating the Stack KeyPair: " + name + " for the first time");
CreateKeyPairResult kpResult = ec2Client.createKeyPair(new CreateKeyPairRequest(name));
File temp = null;
FileOutputStream fos = null;
try {
temp = File.createTempFile("Temp", ".tmp");
fos = new FileOutputStream(temp);
// Write the material to the file.
fos.write(kpResult.getKeyPair().getKeyMaterial().getBytes("UTF-8"));
fos.close();
// Now write the file to S3
s3Client.putObject(new PutObjectRequest(config.getStackConfigS3BucketName(), config.getStackKeyPairS3File(), temp));
} catch (IOException e) {
// convert to runtime
throw new RuntimeException(e);
} finally {
if (fos != null) {
try {
fos.close();
} catch (IOException e) {
}
}
if (temp != null) {
temp.delete();
}
}
return describeKeyPair();
} else {
log.debug("Stack KeyPair: " + name + " already exists");
return info;
}
}
use of software.amazon.awssdk.services.ec2.model.CreateKeyPairRequest in project aws-doc-sdk-examples by awsdocs.
the class CreateKeyPair method main.
public static void main(String[] args) {
final String USAGE = "To run this example, supply a key pair name\n" + "Ex: CreateKeyPair <key-pair-name>\n";
if (args.length != 1) {
System.out.println(USAGE);
System.exit(1);
}
String key_name = args[0];
final AmazonEC2 ec2 = AmazonEC2ClientBuilder.defaultClient();
CreateKeyPairRequest request = new CreateKeyPairRequest().withKeyName(key_name);
CreateKeyPairResult response = ec2.createKeyPair(request);
System.out.printf("Successfully created key pair named %s", key_name);
}
use of software.amazon.awssdk.services.ec2.model.CreateKeyPairRequest in project aws-doc-sdk-examples by awsdocs.
the class CreateKeyPair method createEC2KeyPair.
// snippet-start:[ec2.java2.create_key_pair.main]
public static void createEC2KeyPair(Ec2Client ec2, String keyName) {
try {
CreateKeyPairRequest request = CreateKeyPairRequest.builder().keyName(keyName).build();
ec2.createKeyPair(request);
System.out.printf("Successfully created key pair named %s", keyName);
} catch (Ec2Exception e) {
System.err.println(e.awsErrorDetails().errorMessage());
System.exit(1);
}
}
use of software.amazon.awssdk.services.ec2.model.CreateKeyPairRequest in project tutorials by eugenp.
the class EC2Application method main.
public static void main(String[] args) {
// Set up the client
AmazonEC2 ec2Client = AmazonEC2ClientBuilder.standard().withCredentials(new AWSStaticCredentialsProvider(credentials)).withRegion(Regions.US_EAST_1).build();
// Create a security group
CreateSecurityGroupRequest createSecurityGroupRequest = new CreateSecurityGroupRequest().withGroupName("BaeldungSecurityGroup").withDescription("Baeldung Security Group");
ec2Client.createSecurityGroup(createSecurityGroupRequest);
// Allow HTTP and SSH traffic
IpRange ipRange1 = new IpRange().withCidrIp("0.0.0.0/0");
IpPermission ipPermission1 = new IpPermission().withIpv4Ranges(Arrays.asList(new IpRange[] { ipRange1 })).withIpProtocol("tcp").withFromPort(80).withToPort(80);
IpPermission ipPermission2 = new IpPermission().withIpv4Ranges(Arrays.asList(new IpRange[] { ipRange1 })).withIpProtocol("tcp").withFromPort(22).withToPort(22);
AuthorizeSecurityGroupIngressRequest authorizeSecurityGroupIngressRequest = new AuthorizeSecurityGroupIngressRequest().withGroupName("BaeldungSecurityGroup").withIpPermissions(ipPermission1, ipPermission2);
ec2Client.authorizeSecurityGroupIngress(authorizeSecurityGroupIngressRequest);
// Create KeyPair
CreateKeyPairRequest createKeyPairRequest = new CreateKeyPairRequest().withKeyName("baeldung-key-pair");
CreateKeyPairResult createKeyPairResult = ec2Client.createKeyPair(createKeyPairRequest);
String privateKey = createKeyPairResult.getKeyPair().getKeyMaterial();
// See what key-pairs you've got
DescribeKeyPairsRequest describeKeyPairsRequest = new DescribeKeyPairsRequest();
DescribeKeyPairsResult describeKeyPairsResult = ec2Client.describeKeyPairs(describeKeyPairsRequest);
// Launch an Amazon Instance
RunInstancesRequest runInstancesRequest = // https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html | https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/usingsharedamis-finding.html
new RunInstancesRequest().withImageId("ami-97785bed").withInstanceType(// https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
"t2.micro").withMinCount(1).withMaxCount(1).withKeyName(// optional - if not present, can't connect to instance
"baeldung-key-pair").withSecurityGroups("BaeldungSecurityGroup");
String yourInstanceId = ec2Client.runInstances(runInstancesRequest).getReservation().getInstances().get(0).getInstanceId();
// Start an Instance
StartInstancesRequest startInstancesRequest = new StartInstancesRequest().withInstanceIds(yourInstanceId);
ec2Client.startInstances(startInstancesRequest);
// Monitor Instances
MonitorInstancesRequest monitorInstancesRequest = new MonitorInstancesRequest().withInstanceIds(yourInstanceId);
ec2Client.monitorInstances(monitorInstancesRequest);
UnmonitorInstancesRequest unmonitorInstancesRequest = new UnmonitorInstancesRequest().withInstanceIds(yourInstanceId);
ec2Client.unmonitorInstances(unmonitorInstancesRequest);
// Reboot an Instance
RebootInstancesRequest rebootInstancesRequest = new RebootInstancesRequest().withInstanceIds(yourInstanceId);
ec2Client.rebootInstances(rebootInstancesRequest);
// Stop an Instance
StopInstancesRequest stopInstancesRequest = new StopInstancesRequest().withInstanceIds(yourInstanceId);
ec2Client.stopInstances(stopInstancesRequest).getStoppingInstances().get(0).getPreviousState().getName();
// Describe an Instance
DescribeInstancesRequest describeInstancesRequest = new DescribeInstancesRequest();
DescribeInstancesResult response = ec2Client.describeInstances(describeInstancesRequest);
System.out.println(response.getReservations().get(0).getInstances().get(0).getKernelId());
}
Aggregations