教程:对 DynamoDB 使用 VPC 终端节点 - Amazon DynamoDB
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

教程:对 DynamoDB 使用 VPC 终端节点

本部分演示如何为 DynamoDB 设置和使用 VPC 终端节点。

步骤 1:启动 Amazon EC2 实例

在此步骤中,您将在默认 Amazon EC2 中启动 Amazon VPC 实例。然后,您可以为 DynamoDB 创建和使用 VPC 终端节点。

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 选择 Launch Instance,然后执行以下操作:

    步骤 1:选择 Amazon 系统映像 (AMI)

    • 在 AMIs 列表的顶部,转到 Amazon Linux AMI,然后选择 Select (选择)

    步骤 2:选择一个实例类型

    • 在实例类型列表的顶部,选择 t2.micro

    • 选择 Next: (下一步:)。 配置实例详细信息

    步骤 3:配置实例详细信息

    • 转至 Network (网络) 并选择您的默认 VPC。

      选择 Next: (下一步:)。 添加存储

    步骤 4:添加存储

    • 通过选择 Next: (下一步:) 跳过此步骤 标记实例

    步骤 5:Tag Instance

    • 通过选择 Next: (下一步:) 跳过此步骤 配置安全组

    步骤 6:配置安全组

    • 选择 Select an existing security group

    • 在安全组列表中,选择 default。这是您的 VPC 的默认安全组。

    • 选择 Next: (下一步:)。 审核和启动

    步骤 7:核查实例启动

    • 选择 Launch

  3. Select an existing key pair or create a new key pair 窗口中,执行下列操作之一:

    • 如果您没有 Amazon EC2 密钥对,请选择 Create a new key pair (创建新密钥对),然后按照说明操作。系统会要求您下载私有密钥文件(.pem 文件);您稍后在登录 Amazon EC2 实例时将需要此文件。

    • 如果您现在已有 Amazon EC2 密钥对,请转至 Select a key pair (选择密钥对),然后从列表中选择您的密钥对。您必须有可用的私有密钥文件(.pem 文件)才能登录 Amazon EC2 实例。

  4. 在配置密钥对后,选择 Launch Instances (启动实例)

  5. 返回 Amazon EC2 控制台主页并选择您启动的实例。在下方窗格中的 Description (描述) 选项卡上,找到实例的 Public DNS (公有 DNS)。例如:ec2-00-00-00-00.us-east-1.compute.amazonaws.com

    记下此公有 DNS 名称,因为您将在本教程的下一步 (步骤 2:配置 Amazon EC2 实例) 中用到它。

注意

您的 Amazon EC2 实例需要几分钟才能变为可用。在继续下一步之前,请确保 Instance State (实例状态)running,并且已通过其所有 Status Checks (状态检查)

步骤 2:配置 Amazon EC2 实例

当您的 Amazon EC2 实例可用时,您将能够登录它并准备供首次使用。

注意

以下步骤假设您从运行 Linux 的计算机连接到您的 Amazon EC2 实例。有关其他连接方法,请参阅 中的连接到 Linux 实例Amazon EC2 用户指南(适用于 Linux 实例)。

  1. 您需要授权到 Amazon EC2 实例的入站 SSH 流量。为此,您将创建一个新的 EC2 安全组,然后将该安全组分配到您的 EC2 实例。

    1. 在导航窗格中,选择 Security Groups

    2. 选择 Create Security Group。在 Create Security Group 窗口中,执行以下操作:

      • 安全组名称键入安全组的名称。—例如:my-ssh-access

      • 描述键入安全组的简短描述。—

      • VPC 选择您的默认 VPC。—

      • Security group rules (安全组规则) 部分中,选择 Add Rule (添加规则) 并执行以下操作:

        • 类型 选择 SSH。—

        • 选择“My IP (我的 IP)”。—

      根据需要进行设置后,选择 Create (创建)

    3. 在导航窗格中,选择 Instances (实例)

    4. 选择您在Amazon EC2中启动的 步骤 1:启动 Amazon EC2 实例 实例。

    5. 选择 Actions --> Networking --> Change Security Groups

    6. Change Security Groups (更改安全组) 中,选择您在此过程的前面创建的安全组(例如:my-ssh-access)。还应选择现有 default 安全组。根据需要完成设置后,选择 Assign Security Groups

  2. 使用 ssh 命令登录您的 Amazon EC2 实例,如以下示例所示。

    ssh -i my-keypair.pem ec2-user@public-dns-name

    您需要指定私有密钥文件(.pem 文件)和实例的公有 DNS 名称。(请参阅步骤 1:启动 Amazon EC2 实例)。

    登录 ID 为 ec2-user。 不需要密码。

  3. 配置您的 AWS 凭证,如下所示。在系统提示时,输入您的 AWS 访问密钥 ID、私有密钥和默认区域名称。

    aws configure AWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLE AWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY Default region name [None]: us-east-1 Default output format [None]:

您现在已准备好为 DynamoDB 创建 VPC 终端节点。

步骤 3:为 DynamoDB 创建 VPC 终端节点

在此步骤中,您将为 DynamoDB 创建一个 VPC 终端节点并测试它以确保它正常工作。

  1. 在开始之前,请确认您可以使用 DynamoDB 的公有终端节点与之进行通信。

    aws dynamodb list-tables

    输出将显示您当前拥有的 DynamoDB 表的列表。(如果您没有任何表,则该列表将为空。)

  2. 验证 DynamoDB 是否为在当前 AWS 区域中创建 VPC 终端节点的可用服务。(命令以加粗文本显示,后跟示例输出。)

    aws ec2 describe-vpc-endpoint-services { "ServiceNames": [ "com.amazonaws.us-east-1.s3", "com.amazonaws.us-east-1.dynamodb" ] }

    在示例输出中,DynamoDB 是可用服务之一,因此您可以继续为其创建 VPC 终端节点。

  3. 确定您的 VPC 标识符。

    aws ec2 describe-vpcs { "Vpcs": [ { "VpcId": "vpc-0bbc736e", "InstanceTenancy": "default", "State": "available", "DhcpOptionsId": "dopt-8454b7e1", "CidrBlock": "172.31.0.0/16", "IsDefault": true } ] }

    在示例输出中,VPC ID 为 vpc-0bbc736e

  4. 创建 VPC 终端节点。对于 --vpc-id 参数,指定上一步中的 VPC ID。使用 --route-table-ids 参数将终端节点与路由表相关联。

    aws ec2 create-vpc-endpoint --vpc-id vpc-0bbc736e --service-name com.amazonaws.us-east-1.dynamodb --route-table-ids rtb-11aa22bb { "VpcEndpoint": { "PolicyDocument": "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":\"*\",\"Action\":\"*\",\"Resource\":\"*\"}]}", "VpcId": "vpc-0bbc736e", "State": "available", "ServiceName": "com.amazonaws.us-east-1.dynamodb", "RouteTableIds": [ "rtb-11aa22bb" ], "VpcEndpointId": "vpce-9b15e2f2", "CreationTimestamp": "2017-07-26T22:00:14Z" } }
  5. 验证您是否可以通过 VPC 终端节点访问 DynamoDB。

    aws dynamodb list-tables

    如果需要,您可以尝试对 AWS CLI 使用其他一些 DynamoDB 命令。有关更多信息,请参阅 AWS CLI Command Reference

步骤 4:(可选)清除

如果要删除您在本教程中创建的资源,请按照以下过程操作:

删除 DynamoDB 的 VPC 终端节点

  1. 登录 Amazon EC2 实例。

  2. 确定 VPC 终端节点 ID。

    aws ec2 describe-vpc-endpoints { "VpcEndpoint": { "PolicyDocument": "{\"Version\":\"2008-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":\"*\",\"Action\":\"*\",\"Resource\":\"*\"}]}", "VpcId": "vpc-0bbc736e", "State": "available", "ServiceName": "com.amazonaws.us-east-1.dynamodb", "RouteTableIds": [], "VpcEndpointId": "vpce-9b15e2f2", "CreationTimestamp": "2017-07-26T22:00:14Z" } }

    在示例输出中,VPC 终端节点 ID 为 vpce-9b15e2f2

  3. 删除 VPC 终端节点。

    aws ec2 delete-vpc-endpoints --vpc-endpoint-ids vpce-9b15e2f2 { "Unsuccessful": [] }

    空数组 [] 指示成功 (没有不成功的请求)。

终止您的 Amazon EC2 实例

  1. 打开 Amazon EC2 控制台 https://console.amazonaws.cn/ec2/

  2. 在导航窗格中,选择 Instances (实例)

  3. 选择您的 Amazon EC2 实例。

  4. 依次选择 Actions (操作)Instance State (实例状态)Terminate (终止)

  5. 在确认窗口中,选择 Yes, Terminate