Elasticsearch 7.9 之 Get Elasticsearch up and running

301 阅读4分钟

要将 Elasticsearch 用作测试,您可以在 Elasticsearch Service 上创建 hosted deployment ,或在您自己的 Linux ,macOS 或 Windows 计算机上设置多节点 Elasticsearch 集群。

在 Elastic Cloud 上运行 Elasticsearch

在 Elasticsearch Service 上创建部署时,该服务与 Kibana 和 APM 一起配合提供一个三节点 Elasticsearch 集群。

要创建部署:

  1. 注册免费试用版,然后验证您的电子邮件地址。
  2. 为您的帐户设置密码。
  3. 单击 Create Deployment

创建部署后,就可以为一些文档建立索引了。

在 Linux,macOS 或 Windows 上本地运行 Elasticsearch

在 Elasticsearch Service 上创建部署时,将自动设置一个主节点和两个数据节点。通过从 tar 或 zip 压缩包进行安装的用户,您可以在本地启动 Elasticsearch 的多个实例,以查看多节点集群的行为。

要在本地运行三节点的 Elasticsearch 集群:

  1. 下载适用于您的操作系统的 Elasticsearch 压缩包:

    Linux:elasticsearch-7.9.3-linux-x86_64.tar.gz

     curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.3-linux-x86_64.tar.gz
     
    

    macOS:elasticsearch-7.9.3-darwin-x86_64.tar.gz

     curl -L -O https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.3-darwin-x86_64.tar.gz
     
    

    Windows:elasticsearch-7.9.3-windows-x86_64.zip

  2. 解压安装包:

    Linux:

     tar -xvf elasticsearch-7.9.3-linux-x86_64.tar.gz
    

    macOS:

     tar -xvf elasticsearch-7.9.3-darwin-x86_64.tar.gz
     
    

    Windows PowerShell:

     Expand-Archive elasticsearch-7.9.3-windows-x86_64.zip
    
  3. 从 bin 目录启动 Elasticsearch:

    Linux 和 macOS:

     cd elasticsearch-7.9.3/bin
     ./elasticsearch
    

    windows:

     cd elasticsearch-7.9.3\bin
     .\elasticsearch.bat
    

现在,您已经建立并运行了一个单节点 Elasticsearch 集群!

  1. 启动另外两个 Elasticsearch 实例,以便您可以看到典型的多节点集群的行为。您需要为每个节点指定唯一的数据和日志路径。

    Linux 和 macOS:

     ./elasticsearch -Epath.data = data2 -Epath.logs = log2
     ./elasticsearch -Epath.data = data3 -Epath.logs = log3
    

    Windows:

     .\elasticsearch.bat -E path.data = data2 -E path.logs = log2
     .\elasticsearch.bat -E path.data = data3 -E path.logs = log3
    

附加的节点被分配了唯一的 ID 。因为您在本地运行所有三个节点,所以它们会自动与第一个节点一起加入群集。

  1. 使用 cat health API 验证三节点集群是否正在运行。 cat API 以比原始 JSON 更易于阅读的格式返回有关集群和索引的信息。

    您可以通过向 Elasticsearch REST API 提交 HTTP 请求来直接与集群交互。如果已安装并正在运行 Kibana ,则也可以打开 Kibana 并通过 Dev Console 提交请求。

    TIP: 准备在您自己的应用程序中开始使用 Elasticsearch 时,您将需要查看 Elasticsearch language clients

     GET /_cat/health?v
    

    该响应应表明 Elasticsearch 集群的状态为绿色,并且具有三个节点:

     epoch      timestamp cluster       status node.total node.data shards pri relo init unassign pending_tasks max_task_wait_time active_shards_percent
     1565052807 00:53:27  elasticsearch green           3         3      6   3    0    0        0             0                  -                100.0%
    

    NOTE: 如果您仅运行单个 Elasticsearch 实例,则集群状态将保持黄色。单节点群集具有完整的功能,但是无法将数据复制到另一个节点以提供弹性。如果群集状态想变为绿色则副本分片必须可用。如果群集状态为红色,则某些数据不可用。

使用 cURL 命令与 Elasticsearch 对话

本指南中的大多数示例使您能够复制适当的 cURL 命令并将请求从命令行提交到本地 Elasticsearch 实例。

对 Elasticsearch 的请求包含与任何 HTTP 请求相同的部分:

curl -X<VERB> '<PROTOCOL>://<HOST>:<PORT>/<PATH>?<QUERY_STRING>' -d '<BODY>'

本示例使用以下变量:

<VERB>

适当的 HTTP 方法或动词。例如,GET,POST,PUT,HEAD 或 DELETE。

<PROTOCOL>

http 或 https。如果您在 Elasticsearch 前面有一个 HTTPS 代理,或者您使用 Elasticsearch 安全功能来加密 HTTP 通信,请使用后者。

<HOST>

Elasticsearch 集群中任何节点的主机名。或者,将 localhost 用于本地计算机上的节点。

<PORT>

运行 Elasticsearch HTTP 服务的端口,默认为 9200。

<PATH>

API 端点,可以包含多个组件,例如 _cluster/stats 或 _nodes/stats/jvm。

<QUERY_STRING>

任何可选的查询字符串参数。例如,?pretty 将漂亮地打印 JSON 响应以使其更易于阅读。

<BODY>

JSON 编码的请求正文(如有必要)。

如果启用了 Elasticsearch 安全功能,则还必须提供有权运行 API 的有效用户名(和密码)。 例如,使用 -u 或 --u cURL 命令参数。 有关运行每个 API 所需的安全特权的详细信息,请参阅 REST API

Elasticsearch 使用 HTTP 状态代码(例如 200 OK )响应每个 API 请求。 除 HEAD 请求外,它还返回 JSON 编码的响应主体。

其他安装选项

从压缩包安装 Elasticsearch使 您可以轻松地在本地安装和运行多个实例,以便您可以尝试一下。 要运行一个实例,您可以在 Docker 容器中运行 Elasticsearch ,在 Linux 上使用 DEB 或 RPM 软件包安装 Elasticsearch ,在 macOS 上使用 Homebrew 进行安装,或者在 Windows 上使用 MSI 软件包安装程序进行安装。 有关更多信息,请参见 Installing Elasticsearch

详情见官网:www.elastic.co/guide/en/el…

翻译不准请多指教,翻译不易请勿盗用,如使用请标明出处