详解Elasticsearch如何把一个索引变为只读

 更新时间:2023年02月06日 14:35:34   作者:Elasticsearch  
这篇文章主要为大家介绍了详解Elasticsearch如何把一个索引变为只读示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

正文

将索引设置为只读可能听起来很奇怪,但在 Elasticsearch 中执行此类操作是可能的。想象一下这样一种情况,你特别需要限制对索引的写入操作,无论是维护、业务规则还是任何其他原因。让我们学习如何将索引配置为已读以及如何撤消操作。

我们先使用如下的命令来创建一个叫做 test 的索引:

  PUT test/_doc/1
  {
    "content": "I am xiaoguo from Elastic"
  }

设置为只读

要进行此更改,我们需要更新索引设置。 下面的命令将使索引成为只读的。

  PUT /test/_settings
  {
    "index": {
      "blocks": {
        "write": true
      }
    }
  }

执行完上面的命令后,我们可以再接着创建一个如下的一个文档:

  PUT test/_doc/2
  {
    "content": "I am an evangelist as well"
  }

我们可以看到如下的一个响应:

 {
   "error": {
     "root_cause": [
       {
         "type": "cluster_block_exception",
         "reason": "index [test] blocked by: [FORBIDDEN/8/index write (api)];"
       }
     ],
     "type": "cluster_block_exception",
      "reason": "index [test] blocked by: [FORBIDDEN/8/index write (api)];"
    },
    "status": 403
  }

要恢复只需将状态从 true 更改为 false。我们试着运行如下的命令:

  PUT /test/_settings
  {
    "index": {
      "blocks": {
        "write": false
      }
    }
  }

我们再次写入我们想要的文档。我们可以看到这次的写入是成功的:

  PUT test/_doc/2
  {
    "content": "I am an evangelist as well"
  }

上面的响应为:

 {
   "_index": "test",
   "_id": "2",
   "_version": 1,
   "result": "created",
   "_shards": {
     "total": 2,
     "successful": 1,
     "failed": 0
    },
    "_seq_no": 1,
    "_primary_term": 1
  }

希望这个能帮助到你。

以上就是详解Elasticsearch如何把一个索引变为只读的详细内容,更多关于Elasticsearch索引变只读的资料请关注脚本之家其它相关文章!

相关文章

  • Spring中Bean的生命周期实例解析

    Spring中Bean的生命周期实例解析

    这篇文章主要介绍了Spring中Bean的生命周期实例解析,我们定义一个自定义的MySpringBeanPostProcessor,主要是重写了BeanPostProcessor接口的postProcessBeforeInitialization与postProcessAfterInitialization方法,需要的朋友可以参考下
    2023-12-12
  • Spring Security基于数据库的ABAC属性权限模型实战开发教程

    Spring Security基于数据库的ABAC属性权限模型实战开发教程

    这篇文章主要介绍了Spring Security基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2025-04-04
  • Java线程池的几种实现方法和区别介绍实例详解

    Java线程池的几种实现方法和区别介绍实例详解

    本篇文章主要介绍了Java线程池的几种实现方法和区别,需要的朋友可以参考
    2017-04-04
  • Java中try catch的使用和如何抛出异常问题

    Java中try catch的使用和如何抛出异常问题

    这篇文章主要介绍了Java中try catch的使用和如何抛出异常问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-12-12
  • Spring中的注解@Autowired实现过程全解(@Autowired 背后的故事)

    Spring中的注解@Autowired实现过程全解(@Autowired 背后的故事)

    这篇文章主要介绍了Spring中的注解@Autowired实现过程全解,给大家聊聊@Autowired 背后的故事及实现原理,需要的朋友可以参考下
    2021-07-07
  • maven工程如何读取resource目录下配置文件

    maven工程如何读取resource目录下配置文件

    这篇文章主要介绍了maven工程如何读取,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Nacos框架与原理之Nacos的参数

    Nacos框架与原理之Nacos的参数

    这篇文章主要介绍了Nacos框架与原理之Nacos的参数,Nacos 中的参数有很多,如:命名空间、分组名、服务名、保护阈值、服务路由类型、临时实例等,但下面文章我们要讲解的是参数,参数是什么呢,下面一起进去文章学习详细内容吧
    2022-05-05
  • Java接收前端请求体的多种方式总结

    Java接收前端请求体的多种方式总结

    这篇文章主要给大家介绍了关于Java接收前端请求体的多种方式,文中通过代码介绍的非常详细,对大家学习或者Java具有一定的参考学习价值,需要的朋友可以参考下
    2023-08-08
  • Java8如何通过Lambda处理List集合

    Java8如何通过Lambda处理List集合

    这篇文章主要介绍了java8如何通过Lambda处理List集合,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-01-01
  • Java JVM字节码指令集总结整理与介绍

    Java JVM字节码指令集总结整理与介绍

    本节将会着重介绍一下JVM中的指令集、Java是如何跨平台的、JVM指令集参考手册等内容。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09

最新评论