使用 Amazon CloudFormation 模板启动 Neptune 至 OpenSearch 复制 - Amazon Neptune
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

使用 Amazon CloudFormation 模板启动 Neptune 至 OpenSearch 复制

启动特定于您所在区域的 Amazon CloudFormation 堆栈

以下每个 Amazon CloudFormation 模板都在特定 Amazon 区域中创建一个流使用者应用程序实例。要使用 Amazon CloudFormation 控制台启动相应的堆栈,请选择下表中的启动堆栈按钮之一,具体取决于您要使用的 Amazon 区域:

区域 查看 在 Designer 中查看 发布
美国东部(弗吉尼亚州北部) 视图 在 Designer 中查看
美国东部(俄亥俄州) 视图 在 Designer 中查看
美国西部(北加利福尼亚) 视图 在 Designer 中查看
美国西部(俄勒冈州) 视图 在 Designer 中查看
加拿大(中部) 视图 在 Designer 中查看
南美洲(圣保罗) 视图 在 Designer 中查看
欧洲地区(斯德哥尔摩) 视图 在 Designer 中查看
欧洲地区(爱尔兰) 视图 在 Designer 中查看
欧洲地区(伦敦) 视图 在 Designer 中查看
欧洲地区(巴黎) 视图 在 Designer 中查看
欧洲地区(法兰克福) 视图 在 Designer 中查看
中东(巴林) 视图 在 Designer 中查看
中东(阿联酋) 视图 在 Designer 中查看
以色列(特拉维夫) 视图 在 Designer 中查看
非洲(开普敦) 视图 在 Designer 中查看
亚太地区(香港) 视图 在 Designer 中查看
亚太地区(东京) 视图 在 Designer 中查看
亚太地区(首尔) 视图 在 Designer 中查看
亚太地区(新加坡) 视图 在 Designer 中查看
亚太地区(孟买) 视图 在 Designer 中查看
中国(北京) 视图 在 Designer 中查看
中国(宁夏) 视图 在 Designer 中查看
Amazon GovCloud(美国西部) 视图 在 Designer 中查看
Amazon GovCloud(美国东部) 视图 在 Designer 中查看

Create stack (创建堆栈) 主页上,选择 Next (下一步)

添加有关您正在创建的新 OpenSearch 堆栈的详细信息

指定堆栈详细信息页面提供了属性和参数,可用于控制全文搜索的设置:

堆栈名称 – 您正在创建的新 Amazon CloudFormation 堆栈的名称。通常可以使用默认值 NeptuneStreamPoller

Parameters (参数) 下,提供以下内容:

流使用者运行的 VPC 的网络配置
  • VPC – 提供将运行轮询 Lambda 函数的 VPC 的名称。

  • List of Subnet IDs – 建立网络接口的子网。添加与您的 Neptune 集群对应的子网。

  • List of Security Group Ids – 提供向源 Neptune 数据库集群授予写入入站访问权限的安全组的 ID。

  • List of Route Table Ids – 如果您还没有 Amazon DynamoDB 端点,则需要在 Neptune VPC 中创建一个。您必须提供与子网关联的路由表 ID 的逗号分隔列表。

  • Require to create Dynamo DB VPC Endpoint – 默认为 true 的布尔值。如果您已在 VPC 中创建 DynamoDB 端点,则只需将其更改为 false

  • Require to create Monitoring VPC Endpoint – 默认为 true 的布尔值。如果您已在 VPC 中创建镜像终端节点,则只需将其更改为 false

流轮询器
  • Application Name – 您通常可以将此设置保留为默认值 (NeptuneStream)。如果您使用不同的名称,则该名称必须是唯一的。

  • Memory size for Lambda Poller – 用于设置 lambda 轮询器函数可用的内存大小。默认值为 2,048 MB。

  • Lambda Runtime – 从 Neptune 流中检索项目的 Lambda 函数使用的语言。您可以将其设置为 python3.9java8

  • S3 Bucket having Lambda code artifacts – 除非您使用从其它 S3 桶加载的自定义 Lambda 轮询函数,否则将此设置保留为空。

  • S3 Key corresponding to Lambda Code artifacts – 除非您使用自定义 Lambda 轮询函数,否则将此设置保留为空。

  • StartingCheckpoint – 流轮询器的起始检查点。默认值为 0:0,表示从 Neptune 流的开头开始。

  • StreamPollerInitialState – 轮询器的初始状态。默认值为 ENABLED,这意味着流复制将在整个堆栈创建完成后立即开始。

  • Logging level for Lambda – 通常,将此设置保留为默认值 INFO

  • Managed Policies for Lambda Execution – 通常,除非您使用自定义 Lambda 轮询函数,否则将此设置保留为空。

  • Stream Records Handler – 通常,除非您为 Neptune 流中的记录使用自定义处理程序,否则将此设置保留为空。

  • Maximum records Fetched from Stream – 您可以使用此参数来优化性能。默认值 (100) 是一个很好的开始。允许的最大值为 10,000。数字越大,从流读取记录所需的网络调用就越少,但处理记录所需的内存越多。

  • Max wait time between two Polls (in Seconds) – 确定调用 Lambda 轮询器来轮询 Neptune 流的频率。将此值设置为 0 以进行连续轮询。最大值为 3600 秒(1 小时)。默认值(60 秒)是一个很好的开始,具体取决于图形数据更改的速度。

  • Maximum Continuous polling period (in Seconds) – 用于设置 Lambda 轮询函数的超时。它应该是 5 秒到 900 秒之间。默认值(600 秒)是一个很好的开始。

  • Step Function Fallback Period – 等待轮询器的 step-function-fallback-period(步进函数回退时间)单位数,之后将通过 Amazon CloudWatch Events 调用步进函数以从故障中恢复。默认值(5 分钟)是一个很好的开始。

  • Step Function Fallback Period Unit –用于测量上述 Step Function Fallback Period 的时间单位(分钟、小时、天)。默认值(分钟)通常就足够了。

  • Data replication scope – 确定是要将节点和边缘还是仅将节点复制到 OpenSearch(仅适用于 Gremlin 引擎数据)。默认值(All (全部))通常是一个很好的开始。

  • Ignore OpenSearch missing document error – 用于确定是否可以忽略 OpenSearch 中的缺少文档错误的标志。缺少文档错误很少发生,但如果不忽略,则需要手动干预。默认值(True)通常是一个很好的开始。

  • Enable Non-String Indexing – 用于启用或禁用对没有字符串内容的字段编制索引的标志。如果此标志设置为 true,则在 OpenSearch 中对非字符串字段编制索引,或者如果为 false,则仅对字符串字段编制索引。默认为 true

  • Properties to exclude from being inserted into OpenSearch – 要从 OpenSearch 索引编制中排除的属性或谓词键的逗号分隔列表。如果将此 CFN 参数值留空,则会对所有属性键编制索引。

  • Datatypes to exclude from being inserted into OpenSearch – 要从 OpenSearch 索引编制中排除的属性或谓词数据类型的逗号分隔列表。如果将此 CFN 参数值留空,则会对所有可以安全转换为 OpenSearch 数据类型的属性值编制索引。

Neptune 流
  • Endpoint of source Neptune Stream –(必需)采用以下两种形式之一:

    • https://your DB cluster:port/propertygraph/stream(或其别名 https://your DB cluster:port/pg/stream)。

    • https://your DB cluster:port/sparql/stream

  • Neptune Query Engine – 选择 Gremlin 或 SPARQL。

  • Is IAM Auth Enabled? – 如果您的 Neptune 数据库集群使用 IAM 身份验证,请将此参数设置为 true

  • Neptune Cluster Resource Id – 如果您的 Neptune 数据库集群使用 IAM 身份验证,请将此参数设置为集群资源 ID。资源 ID 与集群 ID 不同。相反,它采取的形式是:cluster- 后跟 28 个字母数字字符。可以在 Neptune 控制台的集群详细信息下找到它。

目标 OpenSearch 集群
  • Endpoint for OpenSearch service –(必需)为 VPC 中的 OpenSearch Service 提供端点。

  • Number of Shards for OpenSearch Index – 默认值 (5) 通常是一个很好的开始。

  • Number of Replicas for OpenSearch Index – 默认值 (1) 通常是一个很好的开始。

  • Geo Location Fields for Mapping – 如果您使用的是地理位置字段,请在此处列出属性键。

警报
  • Require to create Cloud watch Alarm – 如果要为新堆栈创建 CloudWatch 警报,请将此属性设置为 true

  • SNS Topic ARN for Cloudwatch Alarm Notifications – 应在其中发送 CloudWatch 警报通知的 SNS 主题 ARN(仅在启用警报时才需要)。

  • Email for Alarm Notifications – 应向其发送警报通知的电子邮件地址(仅在启用警报时才需要)。

对于警报通知的目标,您可以添加仅限 SNS、仅限电子邮件或同时使用 SNS 和电子邮件。

运行 Amazon CloudFormation 模板

现在,您可以完成预调配 Neptune 流使用者应用程序实例的过程,如下所示:

  1. 在 Amazon CloudFormation 中的 Specify Stack Details (指定堆栈详细信息) 页面上,选择 Next (下一步)

  2. 选项页面上,选择下一步

  3. 审核页面上,选中第一个复选框以确认 Amazon CloudFormation 将创建 IAM 资源。选中第二个复选框以确认新堆栈的 CAPABILITY_AUTO_EXPAND

    注意

    CAPABILITY_AUTO_EXPAND 明确确认在创建堆栈时将扩展宏,而无需事先审核。用户通常通过处理的模板创建更改集,以便在实际创建堆栈之前对宏所做的更改进行审核。有关更多信息,请参阅《Amazon CloudFormation API 参考》中的 Amazon CloudFormation CreateStack API 操作。

    然后选择创建