elasticsearch副本和分片

1.文档冲突

当我们使用index API更新文档,可以一次性读取

修改索引副本

bash 复制代码
root@es-node3:~# curl -XPUT http://192.168.1.136:9200/es-syslog-2023.08.26/_settings -H "Content-Type: application/json" -d '{
>   "settings": {
>     "index": {
>       "number_of_shards": 3,
>       "number_of_replicas": 2
>     }
>   }
> }'
{"error":{"root_cause":[{"type":"illegal_argument_exception","reason":"Can't update non dynamic settings [[index.number_of_shards]] for open indices [[es-syslog-2023.08.26/5EEqjFuGTBe6_wdyoBeV7g]]"}],"type":"illegal_argument_exception","reason":"Can't update non dynamic settings [[index.number_of_shards]] for open indices [[es-syslog-2023.08.26/5EEqjFuGTBe6_wdyoBeV7g]]"},"status":400}r

看起来您正在尝试修改一个已经打开的索引的非动态设置index.number_of_shards。在默认情况下,Elasticsearch不允许在索引处于打开状态时修改非动态(不可更改)的设置。

curl -XPOST http://192.168.1.136:9200/es-syslog-2023.08.26/_close

使用以下命令来修改索引的设置:

curl -XPUT http://192.168.1.136:9200/es-syslog-2023.08.26/_settings -H "Content-Type: application/json" -d '{

"settings": {

"index.number_of_shards": 3

}

}'

重新打开索引。

curl -XPOST http://192.168.1.136:9200/es-syslog-2023.08.26/_open

迁移分片

curl -XPOST -H "Content-Type: application/json" -d '{

"commands": [

{

"move": {

"index": "es-syslog-2023.12.03",

"shard": 0,

"from_node": "es-node2",

"to_node": "es-node1"

}

}

]

}' http://localhost:9200/_cluster/reroute

相关推荐
拍客圈4 小时前
宝塔面板屏蔽垃圾搜索引擎蜘蛛和扫描工具的办法
搜索引擎
源码技术栈6 小时前
SaaS基于云计算、大数据的Java云HIS平台信息化系统源码
java·大数据·云计算·云his·his系统·云医院·区域his
Elastic 中国社区官方博客6 小时前
Elasticsearch 索引副本数
大数据·数据库·elasticsearch·搜索引擎·全文检索
Eternity......6 小时前
SparkSQL基本操作
大数据·spark
268572597 小时前
Elasticsearch 初步认识
大数据·elasticsearch·搜索引擎·全文检索·es
python算法(魔法师版)7 小时前
网络编程入门(一)
大数据·网络·网络协议·计算机网络
caihuayuan58 小时前
生产模式下react项目报错minified react error #130的问题
java·大数据·spring boot·后端·课程设计
兔子坨坨9 小时前
详细了解HDFS
大数据·hadoop·hdfs·big data
夏旭泽9 小时前
系统架构-大数据架构设计
大数据·系统架构
Eternity......10 小时前
Spark,连接MySQL数据库,添加数据,读取数据
大数据·spark