懒惰了很久,今天来写一下Elasticsearch在centos7上安装教程以及安装过程中可能出现的报错解决方式,有不对的地方,烦请各位看官多多指教!
一.ES安装
1.环境检查
确保有java环境,建议使用jdk1.8版本(如果需要使用logstash)
java -version
2.安装配置
1.建议去官网下载需要的版本,官网地址:https://www.elastic.co
比如elasticsearch-5.3.1.tar.gz
2.上传到指定目录
例如:/usr/local/src,解压tar -zxvf elasticsearch-5.3.1.tar.gz,重命名为elasticsearch
3.配置启动用户
ES不能使用root账号启动,新增elsearch用户用于启动
groupadd elsearch
useradd elsearch -g elsearch -p elsearch
#修改elasticsearch所有者为elsearch
chown -R elsearch:elsearch elasticsearch
#es配置文件需要有读写权限
chmod -R 775 config
4.启动
su elsearch
cd /usr/local/src/elasticsearch/bin
./elasticsearch
启动时候,可能存在的报错:
(1).java.lang.UnsupportedOperationException: seccomp unavailable
解决方式:
vim elasticsearch.yml 添加两行
bootstrap.memory_lock: false
bootstrap.system_call_filter: false
(2).ERROR: bootstrap checks failed
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
解决方式:
vim /etc/security/limits.conf 修改参数值如下:
soft nofile 65536
hard nofile 131072
soft nproc 2048
hard nproc 4096
(3).max number of threads [1024] for user [lish] likely too low, increase to at least [2048]
解决方式:
vim /etc/security/limits.d/90-nproc.conf 修改参数值如下:
soft nproc 2048
(4).max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
解决方式:
vim /etc/sysctl.conf 添加一行:
vm.max_map_count=655360
sysctl -p
5.验证
浏览器访问:http://localhost:9200。ES默认监听本机,如需远程连接,需要修改配置文件,下文会说到怎样修改。
出现如下图,则表示启动成功:
6.停止
ps -ef | grep elastic
kill PID
2.安装Es-Head插件
ElasticSearch-head就是一款能连接ElasticSearch搜索引擎,并提供可视化的操作页面对ElasticSearch搜索引擎进行各种设置和数据检索功能的管理插件,如在head插件页面编写RESTful接口风格的请求,就可以对ElasticSearch中的数据进行增删改查、创建或者删除索引等操作。类似于使用navicat工具连接MySQL这种关系型数据库,对数据库做操作。
1.环境检查
Es-head插件运行需要node环境,确保安装有node,如果未安装,自行安装
node -v npm -v
2.安装运行
1.下载elasticsearc-head插件
下载地址:https://github.com/mobz/elasticsearch-head.git
2. 安装grunt
cd elasticsearch-head
npm install -g grunt --registry=https://registry.npm.taobao.org
3.安装插件
npm install
4.grunt检查
在elasticsearch-head目录下node_modules/grunt下如果没有grunt二进制程序,需要执行:
npm install grunt --save
5.配置修改
修改Gruntfile.js文件下图处参数,修改为ES服务器IP,vim Gruntfile.js:
修改 _site/app.js文件中如下图处参数,修改为ES服务器IP,vim _site/app.js:
6.ES配置文件修改
修改elasticsearch.yml文件,上文提到的配置远程连接,也在此文件修改:
#配置服务器远程连接
network.host:服务器IP或者0.0.0.0
http.port:9200
#是否支持跨域
http.cors.enabled: true
#支持所有域名
http.cors.allow-origin: "*"
7.重启ES
8.启动插件
cd elasticsearch-head
npm run start
后台运行:nohup npm run start > /dev/null 2>&1 &
9.验证
浏览器访问http://IP:9100,出现下图,代表安装成功:
到此,ES和ES-head插件就算安装完成了,有幸看到这篇文章的朋友,如果安装过程有任何问题或者发现错误,都可以留言交流,共同进步!