这个问题困扰自己已经很长时间了,差不多是上周开始我的ElasticSearch只要一启动就会报这个错误,反正很无语.
今天好不容易解决了,记录一下,可能是下面几处配置的问题:
jvm.options配置内存参数
这个就是直接修改JVM分配给elasticSearch的内存
最好将这两项参数修改成下面的参数设置:
修改之前 -Xms1g -Xmx1g 修改之后 -Xms256m -Xmx256m
但是我们在之后启动elasticSearch之后也可能会遇到这个问题吧: OpenJDK 64-Bit Server VM warning:If the number of processors is expected to increase from one,then you should configure the number of parallel GC threads appropriately using -XX:ParallelGCTheads=Need
出现这个问题的话,我们还需要在该文件里面添加下面这段代码:
-XX:-AssumeMP
elasticsearch启动文件参数
我的问题就是出在这里,而且这个问题藏得还是比较深,不是那么容易发现.
这个是最最最最大的坑,一般这部分的信息时不存在的或者是启动之后的确能够读取到我们关于jvm.options的配置信息的,但是我的就是读取不到,所以我只能手动写死.
我们在启动elasticSearch时,elasticSearch启动文件也会引入一些配置,我们需要去修改其中的部分配置:
我的理解是他启动的时候会引入jvm.options文件中关于JVM内存配置的相关信息.但是很明显他这个没有生效 ,所以我们直接在这里就将该内存配置信息给他配置成和我们在jvm.options文件中同样的参数.这样我们再次启动我们的elasticSearch就能够正常启动了.
并且这里推荐大家一个 关于elasticSearch的启动命令:
nohup ./elasticsearch &
我们通过上面的命令启动elasticSearch,我们就能够继续在该界面执行我们下面的代码了
这里我们重新启动我们的elasticSearch,会发现已经能够正常启动了.