ElasticSearch6.2.2 单机部署多实例环境

通常我们认为一个集群是一组拥有相同cluster_name的节点组成的,因此也可以变相的认为单节点就构成了一个集群。

下边直接上elasticsearch.yml文件的配置:

# 集群的名字  
cluster.name: elasticsearch
# 节点名字  
node.name: node-1   
# 数据存储目录(多个路径用逗号分隔)  
path.data: /path/to/data  
# 日志目录  
path.logs: /path/to/logs 
#本机的ip地址
network.host: 192.168.1.204  
#设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
discovery.zen.ping.unicast.hosts: ["192.168.1.204:9300"]
# 设置节点间交互的tcp端口(集群),(默认9300)  
transport.tcp.port: 9300  
# 监听端口(默认)  
http.port: 9200  
# 增加参数,使head插件可以访问es  
http.cors.enabled: true  
http.cors.allow-origin: "*"
#默认情况下单机不允许开启多个node,该配置限制了单节点上可以开启的es实例个数
node.max_local_storage_nodes: 10  

放一张部署完成的3个节点集群状态图:

ElasticSearch6.2.2 单机部署多实例环境_第1张图片

注意点1:

每个实例的 node.name、transport.tcp.port、http.port 配置项都需要相应改下。。。

 

注意点2:

discovery.zen.ping.unicast.hosts:设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点

node.max_local_storage_nodes:默认情况下单机不允许开启多个node,该配置限制了单节点上可以开启的es实例个数

 

注意点3(我的是在window下启动报的错,linux不一定会有这个问题):

当我启动第二个节点的时候报错 java.lang.SecurityException: access denied 的错,查了一下是有的目录权限不足的原因。

解决方案:用“管理员”身份启动es实例即可。

 

ps:正式环境肯定是一个服务器只部署一个es实例,本文单机多实例情况仅仅适用于 个人学习用来模拟集群真实环境!

你可能感兴趣的:(ElasticSearch6.2.2 单机部署多实例环境)