Docker下面运行的ES在运行了一段时间以后在跑任何query的时候都报错:
{
"error" : {
"root_cause" : [
{
"type" : "circuit_breaking_exception",
"reason" : "[parent] Data too large, data for [<http_request>] would be [`1004465832/957.9mb`], which is larger than the limit of [`986061209/940.3mb`]",
"bytes_wanted" : 1004465832,
"bytes_limit" : 986061209
}
],
"type" : "circuit_breaking_exception",
"reason" : "[parent] Data too large, data for [<http_request>] would be [1004465832/710.9mb], which is larger than the limit of [745517875/710.9mb]",
"bytes_wanted" : 1004465832,
"bytes_limit" : 986061209
},
"status" : 503
}
网上搜了一下是内存不够了,之前的compose文件里面的Java启动内存参数是:
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
把里面的512m改成2048m 。然后docker-compose重启ES集群就解决问题了。