博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
elasticsearch6 设置分片数及副本数
阅读量:7115 次
发布时间:2019-06-28

本文共 5182 字,大约阅读时间需要 17 分钟。

hot3.png

有时,我们的ES集群小,或者是测试时,只启动一个es时,我们需要将分片数设小,副本数设为0。要不然集群一直是yellow状态。

135400_iBl6_2372148.png

elasticsearch.yml 里设置index.number_of_shards参数已经废弃,会报错:

[2018-03-26T13:34:41,435][WARN ][o.e.c.s.SettingsModule   ] [node-1] *************************************************************************************Found index level settings on node level configuration.Since elasticsearch 5.x index level settings can NOT be set on the nodes configuration like the elasticsearch.yaml, in system properties or command line arguments.In order to upgrade all indices the settings must be updated via the /${index}/_settings API. Unless all settings are dynamic all indices must be closed in order to apply the upgradeIndices created in the future should use index templates to set default values. Please ensure all required values are updated on all indices by executing: curl -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{  "index.number_of_replicas" : "0"}'*************************************************************************************[2018-03-26T13:34:41,438][ERROR][o.e.b.Bootstrap          ] Exceptionjava.lang.IllegalArgumentException: node settings must not contain any index level settings	at org.elasticsearch.common.settings.SettingsModule.
(SettingsModule.java:128) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.node.Node.
(Node.java:331) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.node.Node.
(Node.java:246) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Bootstrap$5.
(Bootstrap.java:213) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:213) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) [elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) [elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) [elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) [elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) [elasticsearch-cli-6.2.2.jar:6.2.2] at org.elasticsearch.cli.Command.main(Command.java:90) [elasticsearch-cli-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) [elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:85) [elasticsearch-6.2.2.jar:6.2.2][2018-03-26T13:34:41,443][WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1] uncaught exception in thread [main]org.elasticsearch.bootstrap.StartupException: java.lang.IllegalArgumentException: node settings must not contain any index level settings at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:125) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:112) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-6.2.2.jar:6.2.2] at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:85) ~[elasticsearch-6.2.2.jar:6.2.2]Caused by: java.lang.IllegalArgumentException: node settings must not contain any index level settings at org.elasticsearch.common.settings.SettingsModule.
(SettingsModule.java:128) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.node.Node.
(Node.java:331) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.node.Node.
(Node.java:246) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Bootstrap$5.
(Bootstrap.java:213) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:213) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:323) ~[elasticsearch-6.2.2.jar:6.2.2] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:121) ~[elasticsearch-6.2.2.jar:6.2.2] ... 6 more

所以我们根据提示,配置文件去掉这个参数,启动起来后,通过API设置:

[elklog@iZ2ze16gjdevwfzy53xejgZ logs]$ curl -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{>   "index.number_of_replicas" : "0"> }'{"error":"Content-Type header [application/x-www-form-urlencoded] is not supported","status":406}[elklog@iZ2ze16gjdevwfzy53xejgZ logs]$

看来还需要设置http头信息:

[elklog@iZ2ze16gjdevwfzy53xejgZ logs]$ curl -H "Content-Type: application/json" -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{>   "index.number_of_replicas" : "0"> }'{"acknowledged":true}

分片设置同理:

curl -H "Content-Type: application/json" -XPUT 'http://localhost:9200/_all/_settings?preserve_existing=true' -d '{  "index.number_of_shards" : "1"}'

 

转载于:https://my.oschina.net/haha256/blog/1784961

你可能感兴趣的文章
Jquery小记
查看>>
SQL Server 2008连接字符串写法大全
查看>>
序列模型(4)----门控循环单元(GRU)
查看>>
Python画三维图-----插值平滑数据
查看>>
librbd 分析
查看>>
sql里的in对应linq的写法 及 IQueryable转化为Dictionary
查看>>
LWIP
查看>>
针对上一篇文章中的代码,想出的重构方案(python实现)
查看>>
HTML+JS版本的俄罗斯方块
查看>>
awk的模块化方案,在这公司苦逼很久以后想到的
查看>>
如何用Django从零开始搭建一个网站(0)
查看>>
Spring boot 整合 Mybatis
查看>>
C++对象的数据成员
查看>>
hashMap_使用
查看>>
iniparser解析文件说明。
查看>>
Apache2.4 多端口虚拟目录配置
查看>>
Node.js入门
查看>>
[百度之星]资格赛:IP聚合
查看>>
POJ 1328 Radar Installation 贪心
查看>>
python常用问题收集
查看>>