Amazon DynamoDB
开发人员指南 (API Version 2012-08-10)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

在 Amazon EC2 上使用 AWS CloudFormation 模板通过 Gremlin Server 启动 适用于 Titan 的 DynamoDB 存储后端

您可以使用 AWS 管理控制台从模板中启动 AWS CloudFormation 堆栈,从而在您选择的 Amazon EC2 实例类型上通过 Gremlin Server 启动 Titan。此堆栈需要预先存在的 IAM 角色,该角色对 gremlin-server.yaml 配置文件拥有 Amazon S3 读取访问权限,并对创建表以及在这些表中读取和写入项目拥有 DynamoDB 完全访问权限。

VPC 的网络 ACL 包含的访问权限只够支持:

  • 到实例的 SSH 连接。

  • EC2 实例从中央存储库下载 yum 更新(HTTP 出站)。

  • EC2 实例从 S3 下载 gremlin-server.yaml 和 Gremlin Server 程序包(HTTPS 出站)。

  • EC2 实例连接到 DynamoDB(HTTPS 出站)。

先决条件

  • Amazon EC2 实例的 SSH 密钥必须位于您计划在其中创建 Gremlin Server 堆栈的区域中。

  • 该区域中具有 Amazon S3 读取访问权限和 DynamoDB 完全访问权限的 IAM 角色的名称和路径,这是运行此 CloudFormation 堆栈要求的最低策略。需要提供 Amazon S3 读取访问权限,以便为 cloud-init 中的堆栈提供 dynamodb.properties 文件。之所以需要 DynamoDB 完全访问权限,是因为 适用于 Titan 的 DynamoDB 存储后端 必须创建和删除表,并在这些表中读取和写入数据。

  • 随附 gremlin-serverdynamodb.properties 文件的 Amazon S3 存储桶包含您的设置。这些文件位于 server/dynamodb-titan100-storage-backend-1.0.0-hadoop1/conf/gremlin-server 中。

    有关创建 Amazon S3 以及向其中上传内容的更多信息,请参阅使用 Amazon S3 存储桶

注意

AWS CloudFormation 模板会下载 titan-1.0.0-hadoop1.ziptitan-dynamodb-0.5.4-hadoop2.ziptitan-dynamodb-server-0.4.4.zip 的重新打包版本。

DynamoDB Storage Backend for Titan 及其依赖项已添加到默认发行版,可从以下网站下载:

在 Amazon EC2 上使用 AWS CloudFormation 启动 Gremlin Server

  1. 选择以下链接,查看可使用 DynamoDB Storage Backend for Titan 创建 Gremlin Server 堆栈的 AWS CloudFormation 模板:

    查看版本 1.0.0 模板

  2. 在您准备好启动堆栈时,请选择此按钮

  3. Select Template 页面上,选择 Next

    注意

    此演练将采用默认设置。但是,此页面可让您自定义 AWS CloudFormation 堆栈的名称,或使用另一个模板。

  4. Specify Parameters 页面上,指定以下内容:

    • EC2 实例类型

    • 适用于 Gremlin Server Websockets 端口的网络白名单模式

    • Gremlin Server 端口,默认为 8182。

    • 指向 dynamodb.properties 配置文件的 S3 URL

    • 预先存在的 EC2 SSH 密钥的名称

    • SSH 协议的网络白名单。您需要允许通过 SSH 的传入连接以启用 SSH 隧道,从而保护到 Gremlin Server 的 Websockets 连接。

      注意

      默认的 CIDR 0.0.0.0/32 会禁止从任何 IP 地址访问 SSH。您需要指定一个适当的地址范围。有关详细信息,请参阅您 Linux 实例的授权入站流量

    • 指向具有最少权限(用于运行此 CloudFormation 脚本和通过 DynamoDB Storage Backend for Titan 运行 Gremlin Server)的 IAM 角色的路径。此角色需要具有 S3 读取访问权限才能获得 dynamodb.properties 文件,需要具有 DynamoDB 完全访问权限才能创建表并读取和向其中写入项目。

    您可以更改网络白名单和 Amazon EC2 实例类型。

  5. Options 页面上,选择 Next

    注意

    在此演练中,您将使用默认设置。

  6. Review 页面上,选择 I acknowledge that this template might cause AWS CloudFormation to create IAM resources,然后选择 Create

    注意

    此 AWS CloudFormation 模板不会创建 IAM 资源。

  7. 部署堆栈时,您可通过转至 AWS CloudFormation 控制台并查看 Amazon EC2 实例的 Status 列来监控其进度。

  8. 完成堆栈创建后,请转至新堆栈的 Outputs 选项卡。

  9. 复制 CloudFormation 脚本 Outputs 上的 SSH 隧道命令,并在完成堆栈部署后,将其用于创建从 localhost 端口 8182 到 EC2 主机上 Gremlin Server 端口 (8182) 的 SSH 隧道。

  10. 从上个主题[ERROR]: xref (Tools.TitanDB.DownloadingAndRunning.Marvel) does not have an endterm or text for the link (target element: procedure). See Tools.TitanDB.GremlinServerEC2 to view the link "" found under "在 Amazon EC2 上使用 AWS CloudFormation 模板通过 Gremlin Server 启动 适用于 Titan 的 DynamoDB 存储后端" id="Tools.TitanDB.GremlinServerEC2" in file 'Tools.xml'.部分中的步骤 5 继续操作。

现在您已在 EC2 上部署 Gremlin Server,接下来便可开始使用 Titan。以下是用于继续操作的一些选项:

遵循《Titan 入门》教程

转至 Titan 入门文档,然后按照该设置流程的其余说明从 Global Graph Indices 部分开始操作。

遵循 Gremlin 示例

要了解有关 Gremlin 的更多信息,请重复执行本节中的步骤并遵循 Gremlin 文档中的示例操作。

重要

您需要为各项命令加上 :> 前缀,以便在 Gremlin Server 终端节点上远程执行这些命令。

试用 Marvel 图形

要使用 Marvel Social Graph 数据,请重复执行本节中的步骤,然后按照 Marvel 图形部分中的步骤 5 到 14 操作。

详细了解 适用于 Titan 的 DynamoDB 存储后端

有关更多信息,请从存储在本地 DynamoDB 中与存储在 Amazon DynamoDB 服务中部分着手。