使用 OpenSearch Fedora Linux

OpenSearch 是亚马逊的开源搜索引擎和分析套件。 个人、企业和组织可以使用该服务搜索范围广泛的信息,并使用可视化工具更好地了解用户行为和搜索趋势。 本文将讨论如何使用 OpenSearch Fedora Linux。

先决条件

OpenSearch 能做什么?

OpenSearch 提供多种功能和工具。 这些都是:

  • 监控和调试集群的应用程序。
  • 管理安全和事件信息。
  • 实现无缝、个性化的搜索结果。
  • 用于搜索和浏览搜索结果的基于 Web 的用户界面。
  • 在文档或网页中搜索特定术语或短语的能力。
  • 按日期、相关性或其他条件过滤搜索结果的能力。
  • 创建和保存搜索供以后使用的能力。
  • 自定义搜索结果页面的外观和功能的能力。
  • 高级分析和报告工具可帮助用户了解和分析搜索流量和用户行为。

以下部分将指导您完成创建域、上传测试数据和使用 OpenSearch 仪表板可视化信息的基础知识。

什么是 OpenSearch 服务域?

OpenSearch 服务域是 AWS 提供的一项服务,允许您使用 AWS 控制台或 AWS 命令​​行界面 (CLI) 创建、管理和配置您的集群。 本教程将使用 AWS 控制台创建和配置您的域。

入门

要开始域设置,请启动您的首选浏览器并登录到您的 AWS 控制台。 导航到 Amazon OpenSearch Service 页面,然后单击创建域。

选择您的域名并取消选中启用自定义端点框。

OpenSearch 是 Elasticsearch 7.10 版的一个分支。 除了 OpenSearch 版本之外,您还可以选择 Elasticsearch 版本 7.10 的任何版本。

为您的部署类型、最新的 OpenSearch 版本选择开发和测试,并启用兼容性。

创建域页面段,其中包含启用自动调整或添加维护窗口的选项。

启用自动调谐并取消标记添加维护窗口。

创建域页面段,其中包含根据应用程序的需要配置节点的选项。

数据节点选项允许您根据应用程序的需要自定义节点:

  • 可用区 (AZ)
    • Amazon Web Services (AWS) 可用区是 AWS 区域内物理上独立且隔离的数据中心位置。 每个可用区都设计为具有容错能力,具有冗余电源、网络和冷却基础设施。
  • 实例类型:
    • 指的是您希望用于您的应用程序的虚拟服务器类型。
  • 节点数:
    • 您要分配给每个可用区的节点数。

由于我们在小型开发环境中运行,请将 AZ 设置为 2,将实例类型设置为 t3.small.search,将节点数设置为 2。不要更改存储类型、EBS 卷类型的默认设置,每个节点的 EBS 存储大小。

创建域页面段,其中包含用于选择热数据存储和冷数据存储以及您要使用的主节点数量的选项。 热数据存储和冷数据存储是存储大量数据的经济高效的解决方案,集群快照的默认频率是每小时一次。

现在忽略这些选项,但继续阅读以获取更多信息:

  • 冷热数据存储:
    • 适用于需要经济高效的解决方案来存储大量非可变数据的用例。
  • 专用主节点
    • 允许您选择要为您的域使用多少个主节点。
  • 快照配置:
    • 默认设置为每小时。
创建具有选项的域页面段,以设置您要使用的网络访问类型并启用对数据的精细级别控制。

生产环境建议使用 VPC 访问。 您还需要创建主用户登录才能访问 OpenSearch 的数据可视化工具 OpenSearch Dashboards。 我们将在您配置域后讨论如何使用 OpenSearch 仪表板。

选择公共访问和创建主用户,并设置您的登录名。

创建域页面段,其中包含用于集成您现有的身份验证和 Amazon Cognito 身份验证的选项,并设置您的域的访问策略。

保留准备 SAML 身份验证和启用 Amazon Cognito 身份验证选项框未选中,并选择仅对您的访问策略使用细粒度访问控制。

创建域页面段,其中包含用于设置您希望域使用的加密类型的选项。

选择使用 AWS 拥有的密钥,忽略可选配置,单击创建创建您的域,然后等待您的域激活。

使用 OpenSearch 仪表板

OpenSearch Dashboards 是一种工具,可让您创建和自定义交互式仪表板,以可视化您的站点从用户交互中接收的数据。 这些仪表板是来自各种来源(例如日志、指标和安全事件)的数据的可视化表示,可以对其进行自定义以满足您的特定需求,包括:

  • 将不同类型的可视化效果(例如图形、地图和表格)拖放到仪表板上。
  • 过滤和处理数据以突出显示特定趋势或模式。
  • 与其他用户共享仪表板或将它们嵌入到其他应用程序中。
  • 在同一仪表板上与其他用户实时协作。

导航到域并从列表中选择它。

您的域列表,提供有关集群运行状况、可搜索文档、总可用空间等指标的信息。

单击 OpenSearch 仪表板 URL 以访问您的 OpenSearch 仪表板。

列出一般信息(例如名称和集群运行状况)和集群配置的域页面。

登录仪表板后,您将看到以下屏幕之一:

OpenSearch Dashboard 初始登录提示。 提示询问您是否要添加数据或浏览平台。首次登录时
OpenSearch 仪表板主页。 具有添加示例数据或与 OpenSearch API 交互的选项在后续登录时

可视化选项

单击添加示例数据以添加 AWS 提供的示例数据。

显示 3 个示例数据选项的页面,您可以上传到您的域。 选项是电子商务订单。 飞行数据和网络日志。

您可以选择三个选项中的任何一个。 此处将使用示例 Web 日志选项来查看可用于分析数据的可视化选项类型的示例。

OpenSearch 仪表板可视化,包括唯一身份访问者、操作系统访问者以及用于搜索其他国家/地区的操作系统用户使用的搜索查询。
OpenSearch 仪表板可视化,其中包括随时间变化的响应代码 + 注释和唯一访问者与平均字节数。
OpenSearch Dashboard 可视化效果,其中包括一个文件类型散点图,以及一个显示哪些主机、多少字节和站点在过去一小时内收到的唯一访问者的表格。
OpenSearch Dashboard 可视化,它显示了全天访问者来自哪个国家/地区的热图。
OpenSearch Dashboard 可视化,显示访问者从世界哪个部分查看网站的地图。
显示源和目标桑基图的 OpenSearch 仪表板可视化。

单击新建以添加更多可视化选项:

分析自己的数据来分析

您可以通过 CLI 输入命令来上传一份或多份文档。

添加单个文档

curl -XPUT -u 'master-user:[master-user-password]' 'domain-endpoint/[domain name]/_doc/1' -d '{"field1": "string1", "field2": ["string3","string4"]}' -H 'Content-Type: application/json'

添加多个文档

使用您的文档创建一个 JSON 文件并运行一个命令来添加多个文档:

JSON文件格式:

{ "index" : { "_index": "indexname", "_id" : "2" } }
{"field1": "string1", "field2": ["string2", "string3", "string4"], "field3": 1234, "field4": ["String, 5", "String, 6"]}
{ "index" : { "_index": "indexname", "_id" : "3" } }
{"field5": "string7", "field6": ["string8", "string9", "string10"], "field7": 5678, "field8": ["String, 11", "String, 12"]}
{ "index" : { "_index": "indexname", "_id" : "4" } }
{"field9": "string13", "field10": ["string14", "string15", "string16"], "field11": 1011, "field12": ["String, 17", "String, 18"]}

JSON文件命名限制:

  • 所有字母必须小写。
  • 索引名称不能以 _ 或 – 开头。
  • 索引名称不能包含空格、逗号、:、”、*、+、/、、| , ? 、#、> 或 <。

运行命令:

curl -XPOST -u 'master-user:[master-user-password]' 'domain-endpoint/_bulk' --data-binary @bulk_[domain name].json -H 'Content-Type: application/json'

您现在可以创建和配置自己的域,并使用 OpenSearch Dashboards 可视化您的域接收的数据。