起因
中午业务组同事报告说kibana服务不能正常使用,登录kibana前端查看,网站能够访问,但是页面显示仅有title部分而无内容部分。
排查
首先确认kibana服务是否正常,登录kubernetes管理节点,查看kibana服务,确认正常,由于重启成本很小所以杀死了原容器,自动重启了一个新容器。但问题依旧。
联想浏览器访问kibana前端服务,能显示title但无法显示内容,因此考虑抓一下7层包看看。
7层包里有多个对kibana服务地址的请求,其中一个返回400其余均返回了200,查看这个400响应的原始请求,是查询目标ES集群节点.kibana索引数据,本来很正常,但是这个请求操作的size是10000,而恰好我们的日志ES集群刚激活了一个自定义插件,限制了单次取数的上限,于是kibana的这个请求按自定义插件的预期返回了400错误。
总结
1:问题的排查还是走了点弯路,在kibana前端部分不响应的情况下,应该直接排查7层请求存在的问题,而不用先去排查提供服务的容器本身的问题;
2:ES安全插件参数的配置影响评估还是有疏漏,未考虑kibana的默认请求size大小(10000)。