A-A+

elasticsearch6.4.x 错误问题收集及解决方法

2018年09月25日 16:47 汪洋大海 暂无评论 阅读 885 views 次

可能遇到的错误:

问题:1、 max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方法 提高 vm.max_map_count 的大小

切换到 root 用户
vim /etc/sysctl.conf
在最后面追加下面内容

vm.max_map_count=262144 #
使用 sysctl -p 查看修改后的结果

sysctl -p

问题:2、Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed;error=........................

解决方法:

由于 elasticsearch6.4 默认分配 jvm 空间大小为 2g,修改 jvm 空间分配
如果使用虚拟机安装,内存最好不小于 2G

vim config/jvm.options -Xms512m -Xmx512m
在确定服务器端口(9200)开启,elasticsearch 启动的情况下(ps -ef | grep elasticsearch)可以在浏览器中访问

问题3、 max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]

每个进程最大同时打开文件数太小,可通过下面 2 个命令查看当前数量

ulimit -Hn
ulimit -Sn

修改 /etc/security/limits.conf 文件,增加配置,用户退出后重新登录生效

* soft nofile 65536
* hard nofile 65536

此处可参考:https://woj.app/3884.html  Linux资源使用配置  这是参考资料

问题:4、 max number of threads [3818] for user ES is too low, increase to at least [4096]

问题同上,最大线程个数太低。


#修改配置文件 /etc/security/limits.conf,增加配置,用户退出后重新登录生效

* soft nproc 4096
* hard nproc 4096

#`sysctl -p /etc/sysctl.conf` 命令使文件生效,不用重启

可通过命令查看

ulimit -Hu
ulimit -Su

问题:5、局域网或互联网其他机器无法访问elasticsearch 9200端口

这个问题可能是linux防火墙导致出现的。添加一个端口,然后从新载入即可。

#添加
firewall-cmd --zone=public --add-port=9200/tcp --permanent    (--permanent永久生效,没有此参数重启后失效)
#重新载入
firewall-cmd --reload

若要添加其他端口,同理即可。

文章来源:https://hacpai.com/article/1535987429686

布施恩德可便相知重

微信扫一扫打赏

支付宝扫一扫打赏

×
标签:

给我留言