ElasticSearch是一个开源的分布式搜索引擎。
下载
下载地址: https://www.elastic.co/downloads/elasticsearch
当前版本:Elasticsearch 2.1.1
JAVA环境配置
下载java jdk:
http://download.oracle.com/otn-pub/java/jdk/8u72-b15/jdk-8u72-windows-x64.exe
安装成功后,配置环境变量:
- 在“系统变量”选项区域新增JAVA_HOME变量,输入JDK安装路径,如C:Program FilesJavajdk1.8.0_72
- 在“系统变量”选项区域中查看PATH变量,如果不存在,则新建变量 PATH,否则选中该变量,单击“编辑”按钮,在“变量值”文本框的最后位置追加“%JAVA_HOME%in;”
- 在cmd中,使用 javac命令测试
ELasticSearch配置
- 解压缩ELasticSearch工具包到指定目录
- 在cmd中,进入指定目录,运行elasticsearch.bat,注意管理员权限
- 在浏览器中测试结果http://localhost:9200
设置配置项:注意前面需要有空格;
- script.inline: on
- script.indexed: on
- script.engine.groovy.inline.aggs: on
- script.file: on
- 参考http://mobz.github.io/elasticsearch-head/ 安装ElasticSearch Head插件
- 在cmd中,进入指定目录,运行plugin install mobz/elasticsearch-head,会自动下载安装
- 查看结果http://localhost:9200/_plugin/head/
- 可选操作,安装Marvel 插件,参考https://www.elastic.co/downloads/marvel
- 查看结果http://localhost:5601/app/marvel
ElasticSearch插件
ElasticSearch集群设置
1. 新增机器后,按照前述步骤安装好ES
2. 打开安装目录config文件夹下的elasticsearch.yml文件进行配置,使用写字板打开
3. #号表示注释该行,删除#号使该行配置生效
4. 设置集群名称,cluster.name,集群的所有机器必须使用一样的名称
5. 设置节点名称,node.name,名称必须在集群中唯一
6. 如果同一个局域网里,只要集群名称一样会自动识别添加
7. 如果不在一个子网,还需设置network.host为本机公网ip,并且设置discovery.zen.ping.unicast.hosts,让集群互相发现,例如:
network.host: 172.16.58.54
discovery.zen.ping.unicast.hosts: ["172.16.58.54", "172.16.58.55"]
8. 不在一个子网的情况下,添加了新机器,需要更改所有机器的配置,并重新启动ES
9. discovery.zen.ping.timeout: 120s
10. discovery.zen.ping.multicast.enabled: false
11. discovery.zen.ping.unicast.hosts: ["172.16.58.56", "172.16.58.57"]
12. # discovery.zen.ping.multicast.port: 54328
13. script.inline: on
14. script.indexed: on
15. script.engine.groovy.inline.aggs: on
16. script.file: on
最后,不要忘了,在linux下打开9200 9300端口,否则集群不会生效;
service.bat install