【问题标题】:how to launch ec2 instance using AWS SDK and connect to it via AWS CLI如何使用 AWS SDK 启动 ec2 实例并通过 AWS CLI 连接到它
【发布时间】:2016-07-08 04:57:57
【问题描述】:

这是一个新手问题。请多多包涵。

我尝试按照官方教程使用 AWS SDK for JAVA 创建一个实例。当谈到密钥对部分时,我感到困惑:

 CreateKeyPairRequest createKeyPairRequest = new CreateKeyPairRequest();
    createKeyPairRequest.withKeyName("azzouz_key");
    CreateKeyPairResult createKeyPairResult = Client.createKeyPair(createKeyPairRequest);
    KeyPair keyPair = new KeyPair();
    keyPair = createKeyPairResult.getKeyPair();
    String privateKey = keyPair.getKeyMaterial();

    RunInstancesRequest runInstancesRequest = new RunInstancesRequest();

    runInstancesRequest.withImageId("ami-4b814f22")
            .withInstanceType("m1.small")
            .withMinCount(1)
            .withMaxCount(1)
            .withKeyName("azzouz_key")
            .withSecurityGroups("Azzouz_group");

通过这样做,我如何使用 aws cli 连接到我使用 SDK 创建的实例,我的意思是如何定位 .pem 文件(如果它确实存在)。就使用代码创建 ec2 实例并通过 aws cli 管理它而言,我的逻辑是否正确,或者应该都以相同的方式?!

【问题讨论】:

    标签: amazon-web-services amazon-ec2 aws-sdk aws-cli


    【解决方案1】:

    PEM 密钥在您的 privateKey 字符串变量的内容中。您需要将其写入文件,因为这是您唯一可以通过 API 访问它的时间。

    要连接到服务器,您无需使用 AWS CLI。您将使用ssh 命令。我会阅读这个问题的答案以获取有关使用 SSH 连接到 EC2 服务器的更多信息:how to login to ec2 machine?

    【讨论】:

    • 谢谢。我知道我必须使用 ssh 命令,这就是我的意思。所以解决方案是将 privateKey 写入文件。试试这个,如果有帮助,请告诉你。
    • 您在问题中指定了“AWS CLI”,这是 AWS 提供的特定工具的名称。 aws.amazon.com/cli
    猜你喜欢
    • 2023-01-29
    • 1970-01-01
    • 2019-06-26
    • 1970-01-01
    • 1970-01-01
    • 2013-04-20
    • 2022-11-18
    • 2023-03-13
    • 2019-08-08
    相关资源
    最近更新 更多