第三篇windows10系统elasticsearch6.2.4单机集群配置问题

  准备在自己的win10系统搞个es集群,发现启动报错,查了下才知道有一项重要的配置有问题,另外简述下我搭建本地集群的坑,给相同入坑经历的兄弟参考下

1.配置如下选项

cluster.name: es6

#

# ------------------------------------ Node ------------------------------------

#

# Use a descriptive name for the node:

#

node.name: node-9600

node.master: true

#这个配置限制了单节点上可以开启的ES存储实例的个数,我们需要开多个实例,因此需要把这个配置写到配置文件中,并为这个配置赋值为2或者更高

node.max_local_storage_nodes: 3

discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300", "127.0.0.1:9500", "127.0.0.1:9700"]

 

2.注意分片分配问题:

es可以根据磁盘使用情况来决定是否继续分配shard。默认设置是开启的,也可以通过api关闭:cluster.routing.allocation.disk.threshold_enabled: false

在开启的情况下,有两个重要的设置:

cluster.routing.allocation.disk.watermark.low:控制磁盘最小使用率。默认85%.说明es在磁盘使用率达到85%的时候将会停止分配新的shard。也可以设置为一个绝对数值,比如500M.表示如果磁盘空间小于500MB不允许分配分片。

cluster.routing.allocation.disk.watermark.high:控制磁盘的最大使用率。默认90%.说明在磁盘使用率达到90%的时候es将会relocate shard去其他的节点。同样也可以设置为一个绝对值。

watermark setting可以通过update-api动态修改,默认es每隔30s会收集各个节点磁盘的使用情况,可以cluster.info.update.interval来设置时间间隔。

 

3.动态修改分片数量:

我们可以用 update-index-settings API 动态修改副本数:

PUT/my_temp_index/_settings
{
    "number_of_replicas":1
}

4.注意集群部署时复制代码问题

  es部署代码一定不要带data数据的复制,其中如果其中带有node节点会导致节点id重复提示添加失败(这是我血的教训)

 

5.手动命令启动自动分片分配

默认情况下,所有节点上启用分片分配,但您可能在某些时候禁用了分片分配(例如,为了执行滚动重新启动),并且忘记重新启用它,可通过如下命令启动

curl -XPUT 'localhost:9200/_cluster/settings' -d
'{ "transient":
    { "cluster.routing.allocation.enable" : "all"
 }

我本机启动了三个节点如下图所示:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值