Elasticsearch安装详解
本文只介绍在windows上的安装和配置,其他安装和配置请参见官方文档
ES在windows上安装需下载zip安装包,解压后bin目录下有个 elasticsearch-service.bat 文件。运行此文件ES就会启动服务。
Elasticsearch需要Java 8或更高版本。
具体安装请参见Elasticsearch和Kibana安装
在命令行中配置ES
约定:以后我们把解压后的目录存放地址称作 %ES_HOME% ,比如 D:\ProgramFiles\elasticsearch-5.4.
ES默认从 %ES_HOME%\config\elasticsearch.yml 文件加载配置。具体配置请参考 Configuring Elasticsearch.
只要能在配置文件中指定的配置,在命令行中也能实现。像下面这样使用 -E 语法:
.\bin\elasticsearch.bat -Ecluster.name=my_cluster -Enode.name=node_1
包含空格的值必须用引号括起来,比如 -Epath.logs="C:\My Logs\logs"。
通常,集群范围内的设置(如cluster.name)应该在elasticsearch.yml配置文件中配置,而任何特定于节点的设置(如node.name),可以在命令行中指定。
检查ES是否正在运行
发送一个http请求到9200端口,比如 http://localhost:9200/ 。或者在kibana中执行 GET /
会返回以下内容:
{
"name": "9fzvF2H",
"cluster_name": "elasticsearch",
"cluster_uuid": "xBoSQEYqQSaJjzzpmAj7aw",
"version": {
"number": "5.4.1",
"build_hash": "2cfe0df",
"build_date": "2017-05-29T16:05:51.443Z",
"build_snapshot": false,
"lucene_version": "6.5.1"
},
"tagline": "You Know, for Search"
}
在windows上安装ES服务
ES可以作为服务安装,在后台运行,也可以在系统启动时自动启动,无需任何用户交互。通过 %ES_HOME% 下的bin目录下的elasticsearch-service.bat脚本来实现,该脚本可以从命令行安装,删除,管理或配置服务并潜在地启动和停止服务。
c:\elasticsearch-5.4.\bin>elasticsearch-service Usage: elasticsearch-service.bat install|remove|start|stop|manager [SERVICE_ID]
该脚本需要一个参数(要执行的命令),然后是一个可选的指示服务的标识(在安装多个ES服务时很有用)。
可用的命令有:
|
|
作为服务安装ES |
|
|
删除已安装的ES服务(如果启动则停止服务) |
|
|
启动ES服务(如果已安装) |
|
|
停止ES服务(如果启动) |
|
|
启动GUI来管理已安装的服务 |
根据安装的java JDK / JRE架构,将安装适当的64位(x64)或32位(x86)服务。
D:\ProgramFiles\elasticsearch-5.4.\bin>elasticsearch-service install
Installing service : "elasticsearch-service-x64"
Using JAVA_HOME (-bit): "D:\ProgramFiles\Java\jdk1.8.0_131"
The service 'elasticsearch-service-x64' has been installed.
虽然JRE可用于Elasticsearch服务,但由于是客户端VM(而不是为长期运行应用程序提供更好性能的服务器JVM),因此不鼓励使用它,并而且会发出警告。
应将环境变量JAVA_HOME设置为要使服务使用的JDK的安装路径。如果升级JDK,则不需要重新安装服务,但必须将JAVA_HOME为设置为新JDK安装的路径。不支持跨JVM类型升级(例如JRE与SE),而且需要重新安装该服务。
自定义服务设置
ES服务在安装前可以设置以下环境变量,可以在命令行中使用 set 命令,也可以直接在环境变量中配置。
|
|
服务的唯一标识. 对于在同一台机器上安装多个ES服务很有用.默认为 |
|
|
使用服务的用户名称, 默认为本机账户. |
|
|
用户为 |
|
|
服务的名称,默认为 |
|
|
对服务的描述.默认为 |
|
|
所需JVM的安装目录 |
|
|
日志存放目录, 默认 |
|
|
数据存放目录,默认 |
|
|
配置文件存放目录 (包括 |
|
|
可能需要应用的任何其他JVM系统属性。 |
|
|
服务启动方式, |
|
|
procrun等待服务正常退出的超时时间。默认为 |
elasticsearch-service.bat 依赖 Apache Commons Daemon 去安装服务. 先前为安装服务设置的环境变量将被复制,以在服务运行期间被使用. 也就是说,服务安装之后,对环境变量所做的修改将不会生效,除非重装服务。
在Windows上,当从命令行运行ES时,或者首次将ES作为服务安装时,可以将堆大小配置为任何其他Elasticsearch安装。此处不明白什么意思,原文:
On Windows, the heap size can be configured as for any other Elasticsearch installation when running Elasticsearch from the command line, or when installing Elasticsearch as a service for the first time.
要调整已安装服务的堆大小,请使用服务管理器: bin\elasticsearch-service.bat manager 。
使用Manager GUI
也可以使用manager GUI (elasticsearch-service-mgr.exe)在安装了服务之后,进行一系列配置。 Manager GUI可以观察已安装的服务,包括服务状态,启动类型,JVM,启动和停止等。可以使用
elasticsearch-service.bat manager 从命令行启动manager GUI。

通过manager GUI进行的大多数更改(如JVM设置)将需要重新启动服务才能生效。
ES的目录结构
下载的.zip 包是完全独立的。解压后,默认情况下,所有文件和目录都包含在%ES_HOME%中。
这是非常方便的,因为使用ES不必创建任何目录,并且卸载ES与删除目录一样简单%ES_HOME%目录。但是,建议更改config目录,数据目录和logs目录的默认位置,以便以后不会误删重要数据。
| Type | Description | Default Location | Setting |
| home | ES的根目录或%ES_HOME% | zip解压的位置 | |
| 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 |
Shared file system repository locations.Can hold multiple locations. A file system repository can be placed in to any subdirectory of any directory specified here. (没看懂,直接上原文) |
Not configured | path.repo |
| script | 脚本文件的位置 | %ES_HOME%\scripts | path.scripts |
下一步
已经安装了ES的测试环境,在进行开发或者用在生成环境之前,还需要做一些配置:
- 了解如何配置ES
- 配置重要的ES设置
- 配置重要的系统设置
Elasticsearch安装详解的更多相关文章
- Elasticsearch配置详解、文档元数据
目录 返回目录:http://www.cnblogs.com/hanyinglong/p/5464604.html 1.Elasticsearch配置文件详解 a. 在上面博客中,我们已经安装并且成功 ...
- 搜索引擎框架之ElasticSearch基础详解(非原创)
文章大纲 一.搜索引擎框架基础介绍二.ElasticSearch的简介三.ElasticSearch安装(Windows版本)四.ElasticSearch操作客户端工具--Kibana五.ES的常用 ...
- Linux ssh登录和软件安装详解
阿哲Style Linux第一天 ssh登录和软件安装详解 Linux学习第一天 操作环境: Ubuntu 16.04 Win10系统,使用putty_V0.63 本身学习Linux就是想在服务器 ...
- 【转】Linux下Android ADB驱动安装详解
原文网址:http://blog.csdn.net/zhenwenxian/article/details/5901350 Linux下Android ADB驱动安装详解 概述 最近由于内置的合作商比 ...
- scribefire 多博客管理利器 安装详解
scribefire 多博客管理利器 安装详解 一.ScribeFire介绍 ScribeFire 是 Firefox (火狐浏览器)上著名的博客写作工具,目前已跨平台支持多浏览器(Firefox,C ...
- CentOS 6.5的安装详解
CentOS 6.5的安装详解 主流: 目前的Linux操作系统主要应用于生产环境, 主流企业级Linux系统仍旧是RedHat或者CentOS 免费: RedHat 和CentOS差别不大,Cent ...
- Linux下tomcat的安装详解
Linux下tomcat的安装详解 来源: ChinaUnix博客 日期: 2007.01.21 22:59 (共有0条评论) 我要评论 一,安装前的准备:1,Linux版本:我的是企业版.(至于红帽 ...
- Phoenix和SQuirrel安装详解
Phoenix安装详解 描述 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等.今天的主角是Phoenix. phoenix,中文译为“凤凰” ...
- zabbix agent安装详解
安装 Installing repository configuration package Zabbix 2.2 for RHEL5, Oracle Linux 5, CentOS 5: rpm - ...
随机推荐
- 使用AspNetPager控件分页
页面后台写法 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { BindData(); } } pro ...
- css属性详解
一.字体属性 字体 font-family可以把多个字体名称作为一个“回退”系统来保存.如果浏览器不支持第一个字体,则会尝试下一个.浏览器会使用它可识别的第一个值. body { font-famil ...
- CentOS持久化二进制日志(systemd日志)
1.创建日志存储文件 /var/log/journal 2.改变存储文件属主属组 chown root:systemd-journal /var/log/journal/ 3.修改文件权限 chmod ...
- Keras官方中文文档:序贯模型API
Sequential模型接口 如果刚开始学习Sequential模型,请首先移步这里阅读文档,本节内容是Sequential的API和参数介绍. 常用Sequential属性 model.layers ...
- Luogu Dynamic Ranking (带修改的主席树)
题目大意: 网址:https://www.luogu.org/problemnew/show/2617 给定一个序列a[1].a[2].....a[N],完成M个操作,操作有两种: [1]Q i j ...
- [SCOI2008]斜堆
题目大意 1.题目描述 斜堆(skew heap)是一种常用的数据结构. 它也是二叉树,且满足与二叉堆相同的堆性质: 每个非根结点的值都比它父亲大.因此在整棵斜堆中,根的值最小. . 但斜堆不必是平衡 ...
- Java interview questions(No1)
1.什么是构造和析构方法?功能是? 答: 构造方法: 每个类至少有一个构造方法,类初始化时调用的方法 1.方法名和类名相同 2.无返回值类型 格式:访问权限 类名(参数列表) {}; 1.自己定义构造 ...
- java 关键字final static native详解
java 关键字native static final详解 一.final 根据程序上下文环境,Java关键字final有"这是无法改变的"或者"终态的"含义, ...
- sqlserver中压缩日志文件
最近在转移数据,sqlserver的日志文件ldf,占用空间特别大,为了还原库,节省空间,所以压缩日志文件迫在眉睫.在网上找了一段代码: USE [master] GO ALTER DATABASE ...
- 求数组中最小的k个数
题目:输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. package test; import java.util.Arra ...