环境安装
OS:Centos7x虚拟机 1H2G
jdk:1.8
elasticsearch:6.4.x
1、下载“elasticsearch-6.4.0.tar.gz”解压到/usr/local/elasticsearch 目录下。
2、启动 elasticSearch
这里需要注意的是,es
规定 root
用户不能启动 es
,所以需要创建一个用户来启动 es
3、创建用户名为 es 的用户
useradd es
4、 设置 es 用户的密码
passwd es
5、 创建 es 的 data 和 logs 目录
mkdir elasticsearch-6.4.0/data
mkdir elasticsearch-6.4.0/logs
6、 将 /usr/local/elasticsearch/elasticsearch-6.4.0 的拥有者设置为 es
chown -R es:es /usr/local/elasticsearch/elasticsearch-6.4.0
编辑配置文件 config/elasticsearch.yml
vim config/elasticsearch.yml
进入后修改
network.host: 你自己的服务器ip
http.port: 9200
7、切换到 es
用户,启动 es
su es
8、-d 是后台启动,第一次不建议后台启动,前台启动可以直观的看到日志信息
bin/elasticsearch -d
可能遇到的错误:
问题:
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=。。。
解决方法:
由于 elasticsearch5.0 默认分配 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
问题:
4、 max number of threads [3818] for user [es] is too low, increase to at least [4096]
问题同上,最大线程个数太低。修改配置文件/etc/security/limits.conf,增加配置,用户退出后重新登录生效
2018.09.06更改:
@alanfans的提供
`sysctl -p /etc/sysctl.conf`使文件生效,不用重启
* soft nproc 4096
* hard nproc 4096
可通过命令查看
ulimit -Hu
ulimit -Su
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于