Amazon SDK for JavaScriptV3 API 参考指南详细描述了Amazon SDK for JavaScript版本 3 (V3) 的所有 API 操作。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建 Amazon EC2 实例
此 Node.js 代码示例演示:
如何从公用 Amazon 系统映像 (AMI) 创建 Amazon EC2 实例。
如何创建标签并将其分配到新的 Amazon EC2 实例为的。
关于示例
在本示例中,您使用 Node.js 模块来创建 Amazon EC2 实例并将key pair 和标签分配到其上。该代码使用 SDK 用于 JavaScript 使用 Amazon EC2 客户端类的以下方法来创建和标记实例:
先先先先先
要设置和运行此示例,请先完成以下任务。
使用用户凭证创建共享配置文件。有关提供共享凭证文件的更多信息,请参阅从共享凭证文件加载 Node.js 中的凭证。
创建密钥对。有关详细信息,请参阅使用 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 模块。请确保按前面所示配置开发工具包,包括安装所需的客户端和软件包。
创建对象,为的RunInstancesCommand
MethodEC2
客户端类,包括要分配的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