文章目录
Elasticsearch 单机安装
安装window版本的Elasticsearch 7.8.0
1. 下载Elasticsearch 7.8.0
Elasticsearch 官网:https://www.elastic.co/cn/
打开官网
2.安装
下载好之后,解压压缩包,会得到一个文件夹。
启动文件
打开bin目录,下面有一个elasticsearch.bat,双击打开即可。
我这边打开会乱码,但是不影响使用。
注意:9300 端口为 Elasticsearch 集群间组件的通信端口,9200 端口为浏览器访问的 http协议 RESTful 端口。
3.测试
打开浏览器(推荐使用谷歌浏览器),输入地址:http://localhost:9200
这样就成功了。
Elasticsearch 集群安装
需求:我们要配置3台节点
1. 配置第一台节点
先把下载好的压缩包,解压到一个目录下面,为了好区分我把目录改名为node-1001
然后是配置集群,我们需要找到config/elasticsearch.yml文件,然后用记事本打开,修改需要配置集群的信息。
配置集群遇到的问题:字符编码保存问题
然后把下面信息粘贴到最下面:
#节点 1 的配置信息:
#集群名称,节点之间要保持一致
cluster.name: my-elasticsearch
#节点名称,集群内要唯一
node.name: node-1001
node.master: true
node.data: true
#ip 地址
network.host: localhost
#http 端口
http.port: 1001
#tcp 监听端口
transport.tcp.port: 9301
#discovery.seed_hosts: ["localhost:9301", "localhost:9302","localhost:9303"]
#discovery.zen.fd.ping_timeout: 1m
#discovery.zen.fd.ping_retries: 5
#集群内的可以被选为主节点的节点列表
#cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
#跨域配置
#action.destructive_requires_name: true
http.cors.enabled: true
http.cors.allow-origin: "*"
然后启动elasticsearch,找到bin/elasticsearch.bat,双击打开。
启动成功啦。
测一下:
打开postman,发送Get请求:http://localhost:1001/_cluster/health
2. 配置第二台节点
直接复制node-1001,命名为node-1002
删除data/ 下面的节点信息,还有log日志信息
然后配置config/elasticsearch.yml文件,把下面信息复制进去。
#节点 1 的配置信息:
#集群名称,节点之间要保持一致
cluster.name: my-elasticsearch
#节点名称,集群内要唯一
node.name: node-1002
node.master: true
node.data: true
#ip 地址
network.host: localhost
#http 端口
http.port: 1002
#tcp 监听端口
transport.tcp.port: 9302
discovery.seed_hosts: ["localhost:9301"]
discovery.zen.fd.ping_timeout: 1m
discovery.zen.fd.ping_retries: 5
#集群内的可以被选为主节点的节点列表
#cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
#跨域配置
#action.destructive_requires_name: true
http.cors.enabled: true
http.cors.allow-origin: "*"
这个跟第一台的区别就是,第一台他不需要配置监听的配置,第二台启动的时候,他需要知道有谁启动了,那么就需要监听第一台节点
这个是新增的信息:
然后启动elasticsearch,找到bin/elasticsearch.bat,双击打开。
启动成功啦!
3. 配置第三台节点
直接复制node-1002,命名为node-1003
删除data/ 下面的节点信息,还有log日志信息
然后配置config/elasticsearch.yml文件,把下面信息复制进去。
#节点 1 的配置信息:
#集群名称,节点之间要保持一致
cluster.name: my-elasticsearch
#节点名称,集群内要唯一
node.name: node-1003
node.master: true
node.data: true
#ip 地址
network.host: localhost
#http 端口
http.port: 1003
#tcp 监听端口
transport.tcp.port: 9303
discovery.seed_hosts: ["localhost:9301","localhost:9302"]
discovery.zen.fd.ping_timeout: 1m
discovery.zen.fd.ping_retries: 5
#集群内的可以被选为主节点的节点列表
#cluster.initial_master_nodes: ["node-1", "node-2","node-3"]
#跨域配置
#action.destructive_requires_name: true
http.cors.enabled: true
http.cors.allow-origin: "*"
同理,节点三需要监听节点一和节点二的信息
启动成功啦!
4. 测试
status 字段指示着当前集群在总体上是否工作正常。它的三种颜色含义如下:
gree: 所有的主分片和副本分片都正常运行
yellw: 所有的主分片都正常运行,但不是所有的副本分片都正常运行
red: 有主分片没能正常运行
向集群中的 node-1001 节点增加索引
向集群中的 node-1002 节点查询索引