我可以在访问密钥和秘密密钥的帮助下使用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();


用户首次创建实例时如何在AWS-EC2上创建密钥对(jCloud API)。
我们是否需要为每个新实例使用现有的访问密钥和秘密密钥。

谁能帮助我建议如何为每个新实例创建一个新的密钥对。

最佳答案

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);
}

10-08 20:25