解决ElasticSearch出现status 429的问题

附上问题response

response里的 index read-only / allow delete (api) 说明目前索引的操作权限只有读和删除,无法进行修改操作,所以我们使用命令修改掉这条限制即可。

Windows:

powershell

$Headers = @{
    "Content-Type" = "application/json"
}

$Body = '{"index.blocks.read_only_allow_delete": null}'

Invoke-RestMethod -Uri "http://<你的集群地址>:9200/_all/_settings" -Method Put -Headers $Headers -Body $Body

这条 PowerShell 命令的作用是向本地 Elasticsearch 实例(地址为你的集群地址)发送一个 PUT 请求,目的是修改所有索引(通过 _all 代表全部索引)的设置。具体操作是将所有索引的“read_only_allow_delete”属性设置为 null

  • $Headers 变量定义了 HTTP 请求头,其中 "Content-Type" 设置为 "application/json",表示发送的数据体内容类型为 JSON 格式。

  • $Body 变量包含了要发送的具体请求体内容,JSON 格式的字符串中 "index.blocks.read_only_allow_delete": null 表示清除对所有索引的只读(允许删除)限制。

  • Invoke-RestMethod 是 PowerShell 中用于发送 HTTP/HTTPS 请求的 cmdlet,这里的参数说明如下:

    • -Uri 参数指定了请求的目标 URL。
    • -Method Put 指定了使用 HTTP 的 PUT 方法来更新资源(在本例中是索引的设置)。
    • -Headers 参数传递了前面定义好的请求头信息。
    • -Body 参数传递了请求体数据。

执行此命令后,如果成功,将会解除 Elasticsearch 集群中所有索引的只读状态(但仍允许删除操作),从而恢复写入和更新索引的能力。

Linux:

bash:

curl -X PUT "<你的集群地址>:9200/_all/_settings" -H 'Content-Type: application/json' -d'
{
    "index.blocks.read_only_allow_delete": null
}'

这条 curl 命令的作用是向 Elasticsearch 集群中的所有索引(通过 _all 通配符指定)发送一个 PUT 请求,以更新它们的设置。具体来说,这个请求的目标是取消对索引的“read_only_allow_delete”属性设置。

在 Elasticsearch 中,“index.blocks.read_only_allow_delete”是一个集群级别的设置,当其值为非空时,表示将索引置于只读状态,并且允许执行删除操作(通常在只读模式下,大多数写入操作都会被阻止,但某些管理类的删除操作可能仍然可行)。将其设置为 null 则意味着移除这个限制,恢复索引的读写功能。

命令分解说明如下:

  • -X PUT:指定 HTTP 方法为 PUT,用于更新资源。
  • "<你的集群地址>:9200/_all/_settings":指定了目标 URL,即 Elasticsearch 集群中所有索引的全局设置 API 地址。
  • -H 'Content-Type: application/json':定义了请求头 Content-Type 为 application/json,表明请求体的数据格式是 JSON。
  • -d 后面跟着的是请求体内容,这里是一个 JSON 对象:

  • Json
    1{
    2    "index.blocks.read_only_allow_delete": null
    3}
    这个 JSON 对象表示要将“index.blocks.read_only_allow_delete”的值设为 null

总之,执行此命令后,Elasticsearch 集群中的所有索引将不再处于只读允许删除的状态,而是转变为可以进行正常的读写操作。

其中需要注意的是将<你的集群地址>位置换成你自己的elasticsearch的集群地址,比如我在本地部署的,那就直接替换成127.0.0.1 ,即127.0.0.1:9200/_all/_settings。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值