之前不知道怎么想的,在一台物理机上通过 docker 来搭建两个 Node 的 Elasticsearch 集群。
由于 ES 默认分片要有一个备份,所以导致我的硬盘用量很大,关键是在同一台物理机上搞两个 Node 没有什么意义。
所以今天我又换回了单 Node 模式。
新的 Dockerfile 我放在了我的库里,https://github.com/ety001/dockerfile/tree/master/bts-es ,
那个 docker-compose.yml.single 就是了。
切换回单节点后,集群的健康状态里就会显示各个索引都是 yellow。原因就是刚才说的,ES 默认会
保持一个备份分片,而单节点后,没法分发备份分片到其他节点,所以就会报不健康。
我们可以通过执行下面的命令,来让分片默认0备份
$ curl -u elastic:123456 -XPUT "http://127.0.0.1:9200/_template/default_template" -H 'Content-Type: application/json' -d'
{
"index_patterns": ["*"],
"settings": {
"number_of_replicas": 0
}
}
'
通过设置默认模板,再创建的新的分片就不再需要有备份了。
PS:我搭建的国内 Bitshares ES 节点也上线了,目前还在数据同步中
https://es.61bts.com
用户名: bts
密码: btsbts
感谢你的阅读,我是中文区见证人之一,欢迎通过 SteemConnect 来给我投票,或者打开 https://steemit.com/~witnesses/ 页面,输入 ety001 进行投票。
中文区的见证人目前有:
支持一下他们(按字母顺序),一人可以有30票:
Thank you for reading. I'm a witness. I would really appreciate your witness vote! You can vote by SteemConnect. Or open https://steemit.com/~witnesses page, input ety001 to vote.