本文介绍在CentOS 7 下如何安装ElasticSearch。
环境:
CentOS 7.2 + jdk 1.8.0_161 + ElasticSearch 6.6.1
1. 前提安装配置好jdk 1.8。
2. 创建用于启动ElasticSearch的用户。
ElasticSearch 5.0开始不允许用root用户启动。所以先创建用于启动ElasticSearch的用户组及用户。
- 创建用户组elasticsearch
[root@docker2 ~]# groupadd elasticsearch
- 创建用户es
[root@docker2 ~]# useradd es
- 给创建的es用户设置密码
[root@docker2 ~]# passwd es
- 添加es用户到elasticsearch用户组
[root@docker2 ~]# usermod -G elasticsearch es
- 设置sudo权限
[root@docker2 ~]# visudo
在root ALL=(ALL) ALL下面添加
es ALL=(ALL) ALL
保存成功后切换到es用户登录。
[root@docker2 ~]# su es
3. 下载、解压。
[root@docker2 ~]# cd /usr/local/elasticsearch
[root@docker2 ~]# wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-6.6.1.tar.gz
[root@docker2 ~]# tar zxvf elasticsearch-6.6.1.tar.gz
更改elasticsearch-6.6.1文件夹以及内部文件的所属用户为es, 用户组组为elasticsearch,-R表示逐级。
[root@docker2 ~]# sudo chown -R es:elasticsearch elasticsearch-6.6.1
4. 修改配置。
① 修改jvm.options。
[root@docker2 ~]# cd elasticsearch-6.6.1
[root@docker2 ~]# vim config/jvm.options
默认使用1G内存,修改成200m。如果服务器内存够大的话可以不做修改。
-Xms200m
-Xmx200m
② 修改elasticsearch.yml。
[root@docker2 ~]# vim config/elasticsearch.yml
(没有就添加)
因为Centos6不支持SecComp,而elasticsearch-6.1.2默认bootstrap.system_call_filter为true进行检测。所以做如下修改。
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
允许跨域不然elasticsearch head不能访问
http.cors.enabled: true
http.cors.allow-origin: “*”
可以访问elasticsearch的ip,默认只有本机,我这里设置成允许任何。
network.host: 0.0.0.0
基本设置
cluster.name: my-application
node.name: node-1
http.port:9200
5. 内核参数、资源参数、进程数修改。
还需要修改一些其他配置,否则在启动时会报各种错误。此时先切换到root用户。
① 修改/etc/security/limits.conf。
添加配置(原131服务器上没有)
* soft nofile 65536
* hard nofile 65536
* soft nproc 2048
* hard nproc 4096
② 修改/etc/security/limits.d/20-nproc.conf。
添加配置(原131服务器上本来就有)
* soft nproc 4096
③ 修改/etc/sysctl.conf。
添加配置(原131服务器上没有)
vm.max_map_count=655360
在以上修改完成之后,执行sysctl -p刷新生效。
7. 运行。
到此,ElasticSearch在CentOS 7下的安装配置就完毕了。下面切换到es用户,来启动看看效果。进到bin目录下,执行
[root@docker2 ~]# ./elasticsearch
或后台运行
[root@docker2 ~]# ./elasticsearch -d
然后在浏览器中输入 http://192.168.x.131:9200 能返回json,说明启动成功。
8. 相关网址。
https://www.elastic.co/downloads/
https://www.phpsong.com/3571.html