Elasticsearch是一个使用Java编程语言在Apache Lucene基础架构上开发的全文本搜索引擎和分析工具。
Lucene是为了在一台机器上对巨大的文本文件进行搜索而开发的,Elasticsearch的出现是因为它在即时数据和分布式系统的搜索中存在不足;它以其灵活的结构、在分布式系统中处理实时数据的能力在短时间内得到了普及。
Elasticsearch的基础知识和设置进度
首先,我们需要从Elasticsearch的官方网站下载安装文件。无论我们需要什么版本,我们都需要下载这个版本。这里所说的版本是指,我们可以下载项目中使用的版本,以便不在我们使用的项目中进行额外的开发或更新。
我们可以通过按上面的Windows按钮开始下载过程。如果我们想下载一个不同的版本,点击右边"摘要"标题下的"查看过去的版本"链接,就可以看到过去的版本,并从那里下载我们想要的版本。
作为下载的结果,我们将下载一个压缩文件。我们将安装Elasticsearch应用程序的驱动器是我们需要提取安装文件的地方。
然后,进入下载文件夹中的bin文件夹,运行elasticsearch.bat文件,我们可以通过在安装Elasticsearch Windows Service之前运行它,看看它是否给出任何错误或警告。
我们还可以通过运行以下命令看到同样的结果。
.\bin\elasticsearch.bat
通过这个命令,如果我们的配置没有问题,或者在命令行上没有看到任何错误信息,我们就可以认为Elasticsearch已经运行。
你可以在命令屏幕上看到一个链接,显示应用程序的活动位置。
如果你在安装阶段遇到任何问题,或者你认为有什么问题,最好直接看一下日志文件。如果有错误,你可以在这里清楚地看到它(信息、警告和错误)。如果我们不指定任何名称,这个名称通常形成为elasticsearch.log文件。
日志文件根部的路径和细节
在检查完一切,看到没有错误之后,让我们按Ctrl+C键退出我们为测试而打开的命令行。
开始服务设置
现在我们可以接触一些配置问题,并开始服务设置。
配置文件的名称是 elasticsearch.yml,它位于主目录的config文件夹中。相关的设置是在这个文件中进行的,如果服务正在运行,必须重新启动服务才能使设置生效。
- cluster.name: Cluster意味着我们设置的Elasticsearch由一台服务器或多台服务器组成。如果我们在一台服务器上安装,我们创建一个由单个节点组成的集群;如果我们在三台服务器上安装,我们创建一个由三台服务器组成的集群。我们将在这里给出的名字是我们集群的名称,我们需要在每台服务器上给出相同的名字。
- node.name:它指定了我们将建立的服务器的名称将出现在我们将创建的集群中。
- path.data: 这个设置指定了Elasticsearch应用程序将存储的数据的路径。我们可以确保我们的数据被收集在每个服务器的不同目录中。为此,只需写入数据文件夹的路径即可。
- path.logs: 这个设置指出了写入日志文件的位置。如果我们不能在默认目录下看到日志文件,我们可以从.yml文件中按照这个路径来访问日志文件。
- network.host:在这里我们写上我们安装的服务器的地址。
- http.port: 通过这个设置,我们实际上是指定了一个端口。换句话说,在从浏览器中输入IP地址或机器名称后,它代表我将在最后写上的端口(例如,http://GBUTFS002:9200)。如果你不改变它,其默认值是**9200**。
- discovery.seed_hosts: 如果我们的集群中有不止一个节点(服务器),我们在这里把所有服务器的地址作为一个数组加入。因此,集群中的机器将能够相互通信。例如:["host1", "host2"] 或者 ["192.10.11.12", "192.19.11.13"]
- cluster.initial_master_nodes:这里我们指定集群中的哪些节点将成为主节点。主节点是集群中管理同步的重要节点。当我们写一个以上的节点时,其中一个会被自动分配为主节点。当其中任何一个节点被动时,另一个节点会自动成为主节点:例如。["节点-1","节点-2"]。
Windows服务的安装
现在让我们开始我们的Windows服务安装。
为此,我们再次打开我们的命令行。然后我们从命令行中进入主目录中的bin文件夹,输入elasticsearch-service install 命令,在那里运行elasticsearch-service.bat 文件,然后按回车键。如果我们想给服务起一个不同的名字,我们可以按照命令elasticsearch-service install servicename 。在这个过程之后,该服务将被安装,并将被列在Windows服务列表中。
在这一步之后,我们可以启动该服务,并从浏览器中看到我们的服务正在运行。