【ElasticSearch】elasticsearch 报错问题汇总

在 centos7 上搭建 elasticsearch时,发生了一些报错,总结如下:

1. Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)

原因:内存空间不足

解决办法:由于 elasticsearhc 默认分配空间为2g,可以通过修改配置文件 /config/jvm.options,降低分配的内存空间

vim /conf/jvm.options

【ElasticSearch】elasticsearch 报错问题汇总_第1张图片

 

2.max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

原因: 权限不够,导致 /usr/local/elasticsearch/logs/elasticsearch.log日志文件时,xxx 用户没权限写入

解决方式:切换到 root 用户,并给 elasticssearch 用户权限即可

# 转换身份为 root 用户
su root

# 赋予用户 elasticsearch(或是其他用户) 操作权限
cd /usr/local/elasticsearch
chown -R elasticsearch . 

 

3. max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

原因:用户最大可创建文件数太小

解决方式:

# 使用 root 账户
su root

# 编辑文件
vi /etc/security/limits.conf

# 添加如下内容
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096

 

4. max number of threads [1024] for user [lish] likely too low, increase to at least [2048]

原因: 用户最大可创建线程数太小

解决方式:

# 使用 root 账户
su root

# 编辑文件
vi /etc/security/limits.d/90-nproc.conf

# 修改文件内容
旧内容: * soft nproc 1024
新内容: * soft nproc 2048

 

5. max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

原因: 虚拟内存区域开辟不足

解决方式:

######## 临时解决,重启linux会失效  #######
sudo sysctl -w vm.max_map_count=262144

######## 永久解决 #######
# 转为 root 用户
su root

# 编辑文件
vim /etc/sysctl.conf

# 增加内容
vm.max_map_count=262144

# 重启linux生效
reboot

6. 用chrome访问192.168.47.135:9200时出进入不了页面

原因:es的配置文件限制了指定的ip访问,默认是服务器的locallhost:9200

解决方式:

修改 /usr/local/elasticsearch/conf/elasticsearch.yml

【ElasticSearch】elasticsearch 报错问题汇总_第2张图片

若还是访问不了,注意需要使用 ip 访问,即: 192.168.47.135:9200,不能使用 127.0.0.1:9200 或 http://localhost:9200

 

 

 

 

 

 

你可能感兴趣的:(踩坑日记,elasticsearch)