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

教程:将 VPC 终端节点用于 DynamoDB

此部分引导您完成设置和使用 DynamoDB 的 VPC 终端节点的过程。

步骤 1:启动 Amazon EC2 实例

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

  1. 通过以下网址打开 Amazon EC2 控制台:https://console.aws.amazon.com/ec2/

  2. 选择启动实例,然后执行以下操作:

    步骤 1:选择 Amazon Machine Image (AMI)

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

    步骤 2:选择实例类型

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

    • 选择下一步:配置实例详细信息

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

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

      选择下一步:添加存储

    步骤 4:添加存储

    • 通过选择 Next: Tag Instance 来跳过此步骤。

    步骤 5:标记实例

    • 选择下一步:配置安全组,跳过此步骤。

    步骤 6:配置安全组

    • 选择选择现有安全组

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

    • 选择下一步:审核和启动

    步骤 7:审核实例启动

    • 选择启动

  3. 选择现有密钥对或创建新密钥对窗口中,执行下列操作之一:

    • 如果您没有 Amazon EC2 密钥对,请选择创建新的密钥对并遵循说明。系统将要求您下载私有密钥文件 (.pem 文件);您在登录 Amazon EC2 实例时需要此文件。

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

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

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

    记下此公共 DNS 名称,因为您需要在本教程的下一步中使用该名称 (步骤 2:配置 Amazon EC2 实例)。

注意

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

步骤 2:配置 Amazon EC2 实例

当您的 Amazon EC2 实例可用时,您将能够登录该实例并为首次使用做好准备。

注意

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

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

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

    2. 选择 Create Security Group。在 Create Security Group (创建安全组) 窗口中,执行以下操作:

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

      • 说明—键入新安全组的描述。

      • VPC—选择您的默认 VPC。

      • 安全组规则部分,选择添加规则并执行以下操作:

        • 类型-选择 SSH。

        • 来源—选择我的 IP。

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

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

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

    5. 选择操作 --> 联网 --> 更改安全组

    6. 更改安全组中,选择您在此过程之前创建的安全组(例如:my-ssh-access)。还应选择现有 default 安全组。根据需要进行设置后,选择分配安全组

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

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

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

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

  3. 配置Amazon凭据,如下所示。提示后,输入您的Amazon访问密钥 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 的公共终端节点与 DynamoDB 进行通信。

    aws dynamodb list-tables

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

  2. 验证 DynamoDB 是否可用于在当前Amazon区域创建 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

    如果需要,您可以为 DynamoDB 尝试其他 Amazon CLI 命令。有关更多信息,请参阅 Amazon CLI 命令参考

步骤 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.aws.amazon.com/ec2/

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

  3. 选择您的 Amazon EC2 实例。

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

  5. 在确认窗口中,选择是,终止