ELK之kibana的web報錯[request] Data too large, data for [<agg [2]>] would be larger than limit of
http://blog.51cto.com/11819159/1926411
ELK架構:elasticsearch+kibana+filebeat
版本信息:
elasticsearch 5.2.1
kibana 5.2.1
filebeat 6.0.0 (預覽版)
今天在進行ELK測試的時候,在kibana上面discover無論那個index,發現均會報錯:
[request] Data too large, data for [<agg [2]>] would be larger than limit of
並且在elasticsearch的日誌可以看到:
org.elasticsearch.common.breaker.CircuitBreakingException: [request] Data too large, data for [<agg [2]>] would be larger than limit of [1283260416/1.1gb]
根據錯誤信息在Google的幫助下,可以比較明顯的獲取得到是由於內存不夠的原因導致,但是具體是因為什麽原因暫時還不是很清楚。並且網上大部分出現類似的錯誤都是清楚緩存:
curl -XPUT ‘http://localhost:9200/_cache/clear‘
在server上面我執行的上訴語句之後,在kibana的web界面點擊discover還是出現上訴的錯誤,說明思路是錯誤的,然後我在下面的一篇文章中找到了一些有用的信息:
http://blog.csdn.net/brotherdong90/article/details/50477836
在上面的截圖我們可以比較清晰的獲取得到elasticsearch的circuite breaker的斷路器原理,但是在上面的截圖它出現的錯誤是fieddate,但是我出現的錯誤是request,所以我猜想我可能是因為request circuite breaker ,request的內存不夠。
上面的解釋這個主要是為了防止單個request使用過多的內存所做的措施,所以我做的就是動態的更改request的cache大小:
curl -XPUT localhost:9200/_cluster/settings -d ‘{
"persistent" : {
"indices.breaker.request.limit" : "40%"
}
}‘
ELK之kibana的web報錯[request] Data too large, data for [<agg [2]>] would be larger than limit of