Elasticsearch可以在Windows中使用安装.zip
包。这配备了一个elasticsearch-service.bat
命令,它会安装Elasticsearch来作为服务运行。
Elasticsearch的最新稳定版本可以在上找到 下载Elasticsearch页面。其它版本可以在上找到 过去的版本页面。
Elasticsearch需要Java 8或更高版本。使用 Oracle官方分发 或作为开放源代码的分布的OpenJDK。
.zip
包下载.zip
的Elasticsearch V5.0.1档案来源:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.0.1.zip
你最喜欢的解压缩工具解压。这将创建一个文件夹叫 elasticsearch-5.0.1
,我们称其为 %ES_HOME%
。在终端窗口,cd``%ES_HOME%
目录,例如:
cd C:\ elasticsearch-5.0.1
Elasticsearch可以从命令行启动,如下所示:
.\bin\elasticsearch
默认情况下,Elasticsearch在前台运行,打印其日志STDOUT
,并可以按停止Ctrl-C
。
Elasticsearch加载从它的配置%ES_HOME%/config/elasticsearch.yml
默认文件。这个配置文件的格式说明配置Elasticsearch。
可以在配置文件中指定的任何设置,也可以在命令行上指定,使用-E
的语法如下:
./bin/elasticsearch -Ecluster.name=my_cluster -Enode.name=node_1
包含空格的值必须用引号括起来。例如-Epath.logs="C:\My Logs\logs"
。
通常情况下,任何集群范围的设置(例如[cluster.name](http://cluster.name)
)应该被加入到elasticsearch.yml
配置文件,而任何特定于节点的设置,例如[node.name](http://node.name)
可以在命令行上被指定。
您可以测试你的Elasticsearch节点通过发送一个HTTP请求到端口上运行9200
的localhost
:
GET /
返回值,如下:
{
"name" : "Cp8oag6",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "AT69_T_DTp-1qgIJlatQqA",
"version" : {
"number" : "5.0.1",
"build_hash" : "f27399d",
"build_date" : "2016-03-30T09:51:41.449Z",
"build_snapshot" : false,
"lucene_version" : "6.2.1"
},
"tagline" : "You Know, for Search"
}
Elasticsearch可以作为服务安装在后台运行,或在启动时自动启动,无需任何用户交互。这可以通过实现elasticsearch-service.bat
的脚本bin\
,使人们安装,删除,管理或配置服务和潜在的启动和停止服务文件夹中,全部由命令行。
c:\elasticsearch-5.0.1\bin>elasticsearch-service
Usage: elasticsearch-service.bat install|remove|start|stop|manager [SERVICE_ID]
该脚本需要一个参数(要执行的命令),后跟一个可选一表示服务ID(用于安装多个Elasticsearch服务时)。
可用的命令如下:
| install
| 安装Elasticsearch作为服务 |
| remove
| 删除已安装的Elasticsearch服务(并停止该服务,如果启动) |
| start
| 启动Elasticsearch服务(如果安装) |
| stop
| 停止Elasticsearch服务(如果已启动) |
| manager
| 启动GUI管理安装服务 |
根据现有的JDK / JRE(通过设置的体系结构JAVA_HOME
),相应的64位(x64)或32位(x86)的服务将被安装。此信息是安装过程中提供:
c:\elasticsearch-5.0.1\bin>elasticsearch-service install
Installing service : "elasticsearch-service-x64"
Using JAVA_HOME (64-bit): "c:\jvm\jdk1.8"
The service 'elasticsearch-service-x64' has been installed.
该服务安装程序要求线程堆栈大小设置在jvm.options进行配置之前安装的服务。在32位的Windows,你应该添加-Xss320k
到jvm.options文件,并在64位Windows您应该添加-Xss1m
到jvm.options文件。
而JRE可用于Elasticsearch服务,由于其使用的客户机虚拟机(而不是服务器JVM这对于长期运行的应用提供了更好的性能)其使用不鼓励和一个将发出警告。
升级(或降级)的JVM版本不需要重新安装服务。但是,跨JVM升级类型(如JRE与SE)是不支持,而且确实需要的服务,重新安装。
该Elasticsearch服务可以在安装之前通过设置以下环境变量(可以使用配置set命令在命令行,或通过System Properties->Environment Variables
GUI)。
| SERVICE_ID
| 的唯一标识符的服务。有用的,如果同一计算机上安装多个实例。默认为elasticsearch-service-x86
(在32位Windows)或elasticsearch-service-x64
(在64位Windows)。 |
| SERVICE_USERNAME
| 用户身份运行,默认为本地系统帐户。 |
| SERVICE_PASSWORD
| 的密码中指定的用户%SERVICE_USERNAME%
。 |
| SERVICE_DISPLAY_NAME
| 该服务的名称。默认为Elasticsearch <version> %SERVICE_ID%
。 |
| SERVICE_DESCRIPTION
| 该服务的描述。默认为Elasticsearch <version> Windows Service - [https://elastic.co](https://elastic.co)
。 |
| JAVA_HOME
| 所需的JVM的安装目录下运行该服务。 |
| LOG_DIR
| 日志目录,默认为%ES_HOME%\logs
。 |
| DATA_DIR
| Data目录,默认为%ES_HOME%\data
。 |
| CONF_DIR
| 配置文件目录(其中必须包括elasticsearch.yml
和log4j2.properties
文件),默认为%ES_HOME%\conf
。 |
| ES_JAVA_OPTS
| 任何额外的JVM系统属性,你可能要应用。 |
| ES_START_TYPE
| 启动模式的服务。可以是auto
或者manual
(默认)。 |
| ES_STOP_TIMEOUT
| 以秒procrun服务等待超时正常退出。默认为0
。 |
在其核心,elasticsearch-service.bat
依赖于Apache的百科全书守护工程安装服务。该服务在安装之前设置环境变量被复制,并会在服务生命周期中使用。这意味着在安装后对他们所做的任何更改将不被拾起,除非该服务被重新安装。
在Windows中,堆大小可以被配置为用于从所述命令行运行Elasticsearch时,或安装Elasticsearch作为首次一个服务时的任何其他Elasticsearch安装。要调整堆大小已安装的服务,使用服务管理器:bin\elasticsearch-service.bat manager
。
使用管理器GUI也可以配置服务,它已经使用管理GUI(安装后elasticsearch-service-mgr.exe),它提供了洞察安装的服务,包括其状态,启动类型,JVM启动和停止除其他事项外设置。简单地调用elasticsearch-service.bat manager在命令行会打开管理器窗口:
通过管理程序的GUI做的大多数更改(如JVM设置),将要求服务重新启动才能生效。
.zip
分析该.zip
包是完全独立的。所有的文件和目录,默认情况下,包含在%ES_HOME%
-解压缩存档时创建的目录。
这是非常方便,因为你没有创建任何目录开始使用Elasticsearch和卸载Elasticsearch是去掉了容易%ES_HOME%
目录。不过,最好是改变config目录,数据目录和日志目录的默认位置,这样你就不会删除以后重要的数据。
类型 | 描述 | 默认位置 | 设置 |
---|---|---|---|
**home | |||
** | Elasticsearch主目录或 %ES_HOME% |
目录由解包归档创建 | |
**bin | |||
** | 二进制脚本包括elasticsearch 启动一个节点,并elasticsearch-plugin 安装插件 |
%ES_HOME%\bin |
|
**conf | |||
** | 配置文件,包括 elasticsearch.yml |
%ES_HOME%\config |
path.conf |
**data | |||
** | 节点上分配的各索引/碎片的数据文件的位置。可以容纳多个位置。 | %ES_HOME%\data |
path.data |
**logs | |||
** | 日志文件的位置。 | %ES_HOME%\logs |
path.logs |
**plugins | |||
** | 插件文件的位置。每一个插件将被包含在一个子目录。 | %ES_HOME%\plugins |
|
**repo | |||
** | 共享文件系统存储库位置。可以容纳多个位置。文件系统存储库可以放在这里指定的任意目录中的任何子目录。 | 未配置 | path.repo |
**script | |||
** | 脚本文件位置。 | %ES_HOME%\scripts |
path.scripts |
现在,您有一个测试环境Elasticsearch成立。开始之前严重的发展或进入生产与Elasticsearch,你需要做一些额外的设置: