- 版本问题
- 因为ElasticSearch 是ELK 组合中的一部分,之前的ELK 中的各个中间件的版本不一致,
- 如:ElasticSearch2.3.4,而Kibana 对应的版本是4.5.3。
- 2016 年秋季,为了方便各中间件方便配合使用,ElasticSearch 直接从2.x 升级到了5.x,保持了和各个中间件版本一致。
- 因此,ElasticSearch 的版本历史是:1.x -> 2.x -> 5.x。
- ElasticSearch 5.5.x 相对以前的2.x 版本,
- 是基于Lucene 6 来构建的,它增加了36%的查询速度,增加了71%的索引速度,
- 并且减少了66%的硬盘空间占用,还较少了85%的内存使用,
- 同时还新增IP 字段,以支持IP4 和IP6,在各方面超越了以往的历史版本。
- 因为ElasticSearch 是ELK 组合中的一部分,之前的ELK 中的各个中间件的版本不一致,
ElasticSearch
- 下载之后,直接解压即可。
- 运行bin 目录下的elasticsearch.bat 文件
- (linux 下需要在root 用户下运行elasticsearch文件),出现如下界面即启动成功。
分布式安装
- 复制两份,将三个目录分别做如下命名:
- 修改主节点的配置,
- 打开elasticsearch-6.5.1-master\config 下的elasticsearch.yml 文件,
- 在底部追加如下内容:
- 坑警告:中文可能会导致配置文件无效,(删掉即可)
-
cluster.name: tom-test #集群名称 node.name: master #节点ID,保证唯一 node.master: true #标记是否为主节点 network.host: 127.0.0.1 #对外公开的IP 地址,如果自动识别配置为0.0.0.0
- 配置slave-1 节点,
- 打开elasticsearch-6.5.1-slave-1\config 下的elasticsearch.yml 文件,
- 在底部追加如下内容:
-
cluster.name: tom-test #集群名称三个节点保持一致 node.name: slave-1 #从节点ID,保证唯一 network.host: 127.0.0.1 #对外公开的IP 地址,如果自动识别配置为0.0.0.0 http.port: 8200 #默认端口为9200,因为我的环境是在同一台机器,因此,指定服务端口号 discovery.zen.ping.unicast.hosts: ["127.0.0.1"] #集群的IP 组,配置主节点IP 即可
- 配置slave-2 节点,
- 打开elasticsearch-5.5.1-slave-2\config 下的elasticsearch.yml 文件,
- 在底部追加如下内容:
-
cluster.name: tom-test #集群名称三个节点保持一致 node.name: slave-2 #从节点ID,保证唯一 network.host: 127.0.0.1 #对外公开的IP 地址,如果自动识别配置为0.0.0.0 http.port: 8000 #默认端口为9200,因为我的环境是在同一台机器,因此,指定服务端口号 discovery.zen.ping.unicast.hosts: ["127.0.0.1"] #集群的IP 组,配置主节点IP 即可
- 分别启动三个节点。
- master started
- slave-1 started
- slave-2 started
- master started
在github上,下载elasticsearch-head-master.zip 包
- 修改master 节点的跨域配置,在elasticsearch.yml 中追加以下内容。
-
http.cors.enabled: true #允许跨域 http.cors.allow-origin: "*"
-
- 使用 Intellij Idea 启动项目
- npm install
- npm start
- 访问http://localhost:9100/ 看到如下界面:
Cerebro 的安装
- Cerebro 一个跨平台的桌面快捷使用工具
- 直接下载cerebro-0.8.1.zip
- 解压,执行bin/cerebro.bat
- 访问 http://localhost:9000/#/connect
- 输入 http://localhost:9200/ 点击 Connect
来源:oschina
链接:https://my.oschina.net/u/3847203/blog/2989979