问题一:
Java HotSpot(TM) 64-Bit Server VM warning: INFO:
os::commit_memory(0x0000000085330000, 2060255232, 0) failed;
error='Cannot allocate memory' (errno=12)
解决办法:由于es默认分配给jvm空间大小为2g,修改jvm分配空间为512m
#vim config/jvm.options
-Xms512m
-Xmx512m
问题二:
[WARN ][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-1]
uncaught exception in thread [main]
org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException
: can not run elasticsearch as root
解决办法:提示不能用root用户启动,所以创建一个新的用户来启动
adduser elastic
问题三:
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
解决办法:这个问题是因为linux会限制进程的最大打开文件数,官方文档中也给出解决方案
#打开/etc/security/limits.conf
# 在最后面追加下面内容
* hard nofile 65536
* soft nofile 65536
问题四:
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解决办法:从报错信息中可以看出是es的虚拟内存给小了,官方文档也有给出解决办法
#1.使用命令调整内存大小,不过服务器重启后会失效
sudo sysctl -w vm.max_map_count=262144
#2.修改配置文件 /etc/sysctl.conf
vm.max_map_count=262144
#修改完重启
sysctl -p
本文档汇总了Elasticsearch在启动过程中遇到的四个典型问题及其解决方案。问题一涉及到JVM内存不足,解决方法是修改jvm.options配置,将最大堆内存设置为512m。问题二提醒不能以root用户启动,建议创建新的用户执行。问题三指出最大文件描述符数目不足,需要在limits.conf中增加限制。问题四提及虚拟内存区域设置过低,需要调整vm.max_map_count到262144。解决这些问题后,Elasticsearch能够正常启动和运行。
443

被折叠的 条评论
为什么被折叠?



