ES安装前提:需要JDK1.8及以上环境
一、下载安装ElasticSearch
ElasticSearch的windows版本下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-5.6.1.zip
由于我用的是5.6.1版本,需要什么版本直接在链接中更改版本号即可。
将下载的zip文件解压后,直接运行bin下的elasticsearch批处理文件(或者在cmd中进入bin目录然后输入elasticsearch),然后访问本机的127.0.0.1:9200,出现以下图说明es安装成功。
二、安装nodejs
下载地址:https://nodejs.org/en/download/ 根据自己系统下载相应的msi,双击安装。
安装时建议,先在磁盘进行安装,再以压缩包形式打包到ElasticSearch文件夹中解压
(据说将nodejs安装在了es的安装目录之外(同级目录),在安装head插件时,执行npm - install的时候发现npm这个目录异常消失了,然后重新安装nodejs,安装过程中如果将安装目录直接放在es目录中会报文件名路径过长的问题,导致安装失败 )
在cmd中测试一下版本信息
三、安装grunt
grunt构建工具,可以进行打包压缩、测试、执行等等的工作,head插件就是通过grunt启动的。因此需要安装grunt:
注意:路径切到安装的nodejs下。
npm install -g grunt-cli
-g代表全局安装。
把head插件的源码git clone下来(建议下载到ElasticSearch文件夹下,或者下载后移到ElasticSearch文件夹):
git clone git://github.com/mobz/elasticsearch-head.git
四、修改head源码
由于head的代码还是2.6版本的,直接执行有很多限制,比如无法跨机器访问。因此需要用户修改两个地方:
目录:elasticsearch-head/Gruntfile.js:
connect: {
server: {
options: {
port: 9100,
hostname: '*',
base: '.',
keepalive: true
}
}
}
增加hostname属性,设置为*
五、修改elasticsearch的参数
修改一下es使用的参数。编辑config/elasticsearch.yml:
(这里要注意,只支持utf-8编码格式,如果你用的是Nodepad++、EditPlus3等工具,由于它们默认的是ANSI格式,如果直接修改保存会报错,因此修改时要先把编码格式改成utf-8)
# 换个集群的名字,免得跟别人的集群混在一起
cluster.name: es-5.0-test
# 换个节点名字
node.name: master
# 修改一下ES的监听地址,这样别的机器也可以访问
network.host: 0.0.0.0
# 默认的就好
http.port: 9200
# 增加新的参数,这样head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"
注意,设置参数的时候:后面要有空格!
启动效果:
然后在head源码目录中,执行npm install 下载的包:
npm install
效果如图:
最后,在head源代码目录下启动nodejs:
grunt server
效果如图:
六、访问9100端口
这个时候,访问http://localhost:9100
就可以访问head插件了:
现在开始搭建集群
首先,复制两份纯净的ElasticSearch文件(注意是纯洁的!就是你从官网下载的没有动过的,不然会报错)
然后找到另外两个文件 的config/elasticsearch.yml,编辑
# 换个集群的名字,免得跟别人的集群混在一起
cluster.name: es-5.0-test
# 换个节点名字
node.name: node_2
# 修改一下ES的监听地址,这样别的机器也可以访问
network.host: 0.0.0.0
transport.tcp.port: 9302
# 默认的就好
http.port: 9202
#设置集群自动发现机器ip集合
discovery.zen.ping.unicast.hosts: ["0.0.0.0:9300"]
# 增加新的参数,这样head插件可以访问es
http.cors.enabled: true
http.cors.allow-origin: "*"
注意,其实只需要修改三个东西
node.name: node-2 transport.tcp.port: 9301 http.port: 9201 这三个,保证与其它节点的值不同
然后再找到各自的启动文件进行启动
最后刷新9100端口
大功告成!!
安装ik中文分词器
(1)下载https://github.com/medcl/elasticsearch-analysis-ik/releases(注意要和 Elasticsearch版本一致)
解压复制到elasticsearch-5.6.1\plugins\ik (自己新建文件夹ik)
最后重新启动
!