前提
本文是以在單節點上配置elasticsearch作爲前提而進行下面工作的。單節點安裝elasticsearch之前已經完成了,有需要的網友可以前往查看。單節點安裝elasticsearch
1.分發文件
將elasticsearch 文件夾進行分發。
[dendan@master module]$ scp -r elasticsearch-5.6.1/ slave01:`pwd`
[dendan@master module]$ scp -r elasticsearch-5.6.1/ slave02:`pwd`
2.修改配置文件中的集羣配置
主節點的elasticsearche.yml文件
追加:
node.master: true
node.data: true
從節點的elasticsearche.yml文件
slave01:
追加 :
node.master: false
node.data: true
修改:
node.name: node-112
network.host: 192.168.1.112
slave02:
追加 :
node.master: false
node.data: true
修改:
node.name: node-113
network.host: 192.168.1.113
3.刪除原來的數據
[dendan@master elasticsearch-5.6.1]$ rm -rf data/ logs/ && mkdir data/ logs/
[dendan@slave01 elasticsearch-5.6.1]$ rm -rf data/ logs/ && mkdir data/ logs/
[dendan@slave02 elasticsearch-5.6.1]$ rm -rf data/ logs/ && mkdir data/ logs/
4.啓動集羣
[dendan@master elasticsearch-5.6.1]$ bin/elasticsearch
[dendan@slave01 elasticsearch-5.6.1]$ bin/elasticsearch
[dendan@slave02 elasticsearch-5.6.1]$ bin/elasticsearch
slave01與slave02都會報錯:
ERROR: [3] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max number of threads [1024] for user [dendan] is too low, increase to at least [2048]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
通過分析可知,是沒有配置linux的設置,故需要在這兩個節點上做如下配置:
在slave01上使用root用戶修改linux系統配置,slave02操作雷同。
[dendan@slave01 elasticsearch-5.6.1]$ exit
[root@ slave01 logs]# vi /etc/security/limits.conf
添加如下內容:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
[root@ slave01 logs]# vi /etc/security/limits.d/90-nproc.conf
修改如下內容:
* soft nproc 1024
#修改爲
* soft nproc 2048
[root@ slave01 logs]# vi /etc/sysctl.conf
添加下面配置:
vm.max_map_count=655360
並執行命令:
[root@ slave01 logs]# sysctl -p
5.添加索引
/**
* 創建索引
*/
@Test
public void createIndex() {
//執行創建索引操作
client.admin().indices().prepareCreate("blog").get();
client.close();
}
在瀏覽器端可以看到如下信息: