创建 Amazon EC2 实例 - Amazon SDK for JavaScript
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

Amazon SDK for JavaScriptV3 API 参考指南详细描述了Amazon SDK for JavaScript版本 3 (V3) 的所有 API 操作。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

创建 Amazon EC2 实例

JavaScript code example that applies to Node.js execution

此 Node.js 代码示例演示:

  • 如何从公用 Amazon 系统映像 (AMI) 创建 Amazon EC2 实例。

  • 如何创建标签并将其分配到新的 Amazon EC2 实例为的。

关于示例

在本示例中,您使用 Node.js 模块来创建 Amazon EC2 实例并将key pair 和标签分配到其上。该代码使用 SDK 用于 JavaScript 使用 Amazon EC2 客户端类的以下方法来创建和标记实例:

先先先先先

要设置和运行此示例,请先完成以下任务。

重要

这些示例使用 ecmasCript6 (ES6)。这需要 Node.js 版本 13.x 或更高版本。要下载并安装最新版本的 Node.js,请参阅Node.js 可以在下载内容:。.

但是,如果你更喜欢使用 CommonJS 语法,请参考JavaScript es6/CommonJS 语法

创建和标记实例

创建libs目录,创建文件的 Node.js 模块ec2Client.js. 将以下代码复制并粘贴到其中,这将创建 Amazon EC2 客户端对象。Replace领域使用的Amazon区域。

const { EC2Client } = require( "@aws-sdk/client-ec2"); // Set the AWS Region. const REGION = "REGION"; //e.g. "us-east-1" // Create anAmazon EC2 service client object. const ec2Client = new EC2Client({ region: REGION }); module.exports = { ec2Client };

可以在以下网站找到下载内容:此处 GitHub.

创建文件名为 ec2_createinstances.js 的 Node.js 模块。请确保按前面所示配置开发工具包,包括安装所需的客户端和软件包。

创建对象,为的RunInstancesCommandMethodEC2客户端类,包括要分配的key pair 的名称以及要运行的 AMI 的 ID。调用RunInstancesCommand方法,创建异步函数来调用 Amazon EC2 客户端服务对象并传递参数。

接下来,代码添加了一个Name标签到新实例,Amazon EC2 控制台可识别标签并显示在名称实例列表的字段。您可以添加最多 50 个标签添加到某个实例,所有标签可以通过调用一次 CreateTagsCommand 方法来添加。

注意

ReplaceAMI_ID为的 Amazon 系统映像 (AMI) 的 ID 为的KEY_PAIR_NAME要分配给 AMI ID 的key pair。

// Import required AWS SDK clients and commands for Node.js const { CreateTagsCommand, RunInstancesCommand, } = require("@aws-sdk/client-ec2"); import { ec2Client } from "./libs/ec2Client"; // Set the parameters const instanceParams = { ImageId: "AMI_ID", //AMI_ID InstanceType: "t2.micro", KeyName: "KEY_PAIR_NAME", //KEY_PAIR_NAME MinCount: 1, MaxCount: 1, }; const run = async () => { try { const data = await ec2Client.send(new RunInstancesCommand(instanceParams)); console.log(data.Instances[0].InstanceId); const instanceId = data.Instances[0].InstanceId; console.log("Created instance", instanceId); // Add tags to the instance const tagParams = { Resources: [instanceId], Tags: [ { Key: "Name", Value: "SDK Sample", }, ], }; try { await ec2Client.send(new CreateTagsCommand(tagParams)); console.log("Instance tagged"); } catch (err) { console.log("Error", err); } } catch (err) { console.log("Error", err); } }; run();

要运行示例,请在命令提示符处输入以下内容。

node ec2_createinstances.js

可以在以下网站找到下载内容:此处 GitHub.