我可以借助访问密钥和密钥使用jClouds API创建AWS-EC2实例,
AWS_ACCESS_KEY = this.config.getString("aws_access_key");
AWS_SECRET_ACCESS_KEY = this.config.getString("aws_secret_access_key");
if (AWS_ACCESS_KEY == null || AWS_SECRET_ACCESS_KEY == null) {
throw new InstantiationError("Invalid AWS Credentails");
}
ec2Api = ContextBuilder.newBuilder(AWS_EC2).credentials(AWS_ACCESS_KEY, AWS_SECRET_ACCESS_KEY).buildApi(EC2Api.class);
instanceApi = ec2Api.getInstanceApi().get();
当用户第一次创建实例(jCloud API)时,如何在AWS-EC2上创建密钥对。 我们是否需要为每个新实例使用现有的访问密钥和密钥。
任何人都可以帮助我建议如何为每个新实例创建一个新的密钥对。
答案 0 :(得分:3)
Template template = compute.templateBuilder()
.hardwareId(InstanceType.T1_MICRO)
.imageId("us-east-1/ami-ccf615a5")
.osFamily(OsFamily.AMZN_LINUX)
.locationId("us-east-1")
.osVersionMatches("12.10")
.build();
Template template = templateBuilder.build();
TemplateOptions templateOptions = template.getOptions();
AWSEC2TemplateOptions awsTemplateOption= templateOptions.as(AWSEC2TemplateOptions.class);
awsTemplateOption.securityGroups("securityGroupName");
awsTemplateOption.keyPair("keyPairName");
try {
Set<? extends NodeMetadata> nodes = compute.createNodesInGroup(groupName,1,template);
}