内容纲要
概要描述:
本文主要描述在误操作重复添加了自定义参数,跟已有的默认参数重复后,造成的Manager页面显示异常,参数无法改回的解决方案
详细描述
问题描述
本案例以Search服务重复添加了 es.heap.size 作为自定义参数举例,添加该自定义参数值为3072,配置文件为elasticsearch.yml,配置修改后,配置服务,重启search,会出现以下现象:
(该问题在其他服务也是通用出现的)
页面还是只显示1个es.heap.size,且点开后,出现显示异常的情况
且该参数被修改成3G,已经在配置文件生效了
问题原因
该参数:es.heap.size原本是search组件默认参数,客户在自定义参数中又定义了一次。导致service_config中有两条数据或者数据被覆盖,因为service_config表中并没有类型
字段,导致用户无法修改回去了
解决方案
登陆manager数据库 参考
对比一下 没修改之前,默认应该该是如下图所示:
下图是被添加了相同自定义参数的es.heap.size 条目对应的值(如果出现多条,可以删除后加的)
执行sql
update service_config set value=NULL,groups='[ ]',description=NULL where name='es.heap.size';
这里需要注意,在表中的recommendedValue和value字段如果没有值的话,直接用null即可,不能用”或者’null’。
因为前端有一个逻辑,当value值存在时(非null),会去取validation信息,如果validation不存在,会导致页面加载异常
修改完成之后,刷新页面,恢复正常,可以重新修改,配置服务,重启相关服务,使其参数生效