目录
上篇介绍了ElasticSearch的相关概念性知识,这篇博客笔者主要介绍ElasticSearch的实战操作,主要包括集群环境搭建以及ElasticSearch和SpringBoot的整合。
1、Linux系统下的相关环境搭建
1.1 环境要求
三台Linux服务器Server1,Server2,Server3,假设ip地址依次对应是ip1,ip2,ip3,首先确保三台服务器上都安装好了jdk环境,笔者用的是jdk1.8的环境。
然后请先自行去官网下载
elasticsearch-6.4.3.tar.gz
kibana-6.4.3-linux-x86_64.tar.gz
并解压到Server1服务器的某个目录下,笔者解压在了/usr/local目录下。
1.2 ElasticSearch集群环境搭建和启动
进入ip1服务器的/usr/local/elasticsearch-6.4.3/config路径,用命令
vi elasticsearch.yml
打开elasticsearch的配置文件,主要修改以下五个地方,其中cluster.name是集群名,node.name是本节点的名称,network.host表示本节点的ip地址,http.port是http端口号,写成9200即可。discovery.zen.minimum_master_nodes设置这个参数来保证集群中的节点可以知道其它N个有master资格的节点。默认为1,对于大的集群来说,可以设置大一点的值(2-4)
cluster.name: myes
node.name: node-1
network.host: ip1
http.port: 9200
discovery.zen.minimum_master_nodes: 1
然后用scp命令把elasticsearch-6.4.3这个文件夹分发到Server2和Server3主机上,如下命令,要把ip2和ip3换成实际相应的ip地址,@前面的root也可以换成自己的用户名。
scp -r /usr/local/elasticsearch-6.4.3 root@ip2:/usr/local/esuser
scp -r /usr/local/elasticsearch-6.4.3 root@ip3:/usr/local/esuser
然后在Server2和Server3上分别修改/usr/local/elasticsearch-6.4.3/config路径下的elasticsearch.yml文件。
node.name: node-2
network.host: ip2
node.name: node-3
network.host: ip3
这样,elasticSearch集群就搭建好了,启动前得保证切换到了一个非root用户下,比如新建一个esuser用户,并给该用户赋予elasticsearch-6.4.3的权限,下图所示的权限就可以。然后在esuser用户下启动elasticsearch。原因是elasticsearch不支持用root用户启动。
分别在三台服务器上使用命令
cd /usr/local/elasticsearch-6.4.3/bin
./elasticsearch -d
启动即可。
注意,你也可以用
./elasticsearch
直接启动,但是这种启动方式不是后台启动,在窗口关闭后,服务就停了,如果要后台启动,还是建议用./elasticsearch -d命令。
接下来,在linux中输入j