设置Elasticsearch只读模式遇API无处理程序错误的解决咨询
问题解决方法
你遇到的错误核心原因是:你调用的是Enterprise Search的只读模式API,但把请求发送到了Elasticsearch的端口(9200),这个接口属于Enterprise Search服务,并非Elasticsearch本身的API,所以找不到对应的处理程序。
解决步骤:
- 确认Enterprise Search的运行端口:默认是3002,如果修改过配置文件,使用你自定义的端口。
- 替换curl命令中的端口为Enterprise Search的端口,查询只读模式状态的正确命令:
curl -X GET http://localhost:3002/api/ent/v1/internal/read_only_mode -H "Content-Type: application/json" -u username:password - 如果是要设置只读模式(而非查询),需要使用PUT请求并传入参数,命令如下:
curl -X PUT http://localhost:3002/api/ent/v1/internal/read_only_mode -H "Content-Type: application/json" -u username:password -d '{"enabled": true}' - 执行设置命令后,再用GET请求验证只读模式是否已生效。
内容的提问来源于stack exchange,提问作者Alberto B
相关产品推荐
相关产品推荐

