因为项目需求,须要在linux平台搭建一套ES服务。在搭建过程当中,遇到各类各样的问题。后来都一一解决。如今要记录下来这个过程,以及其中遇到的问题,及其解决方法。java
1、环境配置linux
操做系统:Cent OS 7git
ElasticSearch版本:1.4.1github
JDK版本:1.7vim
SSH Secure Shell版本:3.2.9浏览器
elasticsearch-servicewrapper :ES的服务插件,通常在linux上使用。bash
2、操做过程app
1. elasticsearch 做为一个系统service应用 ,能够安装elasticsearch-servicewrapper插件。jvm
在https://github.com/elasticsearch/elasticsearch-servicewrapper下载该插件后,解压缩。将service目录拷贝到elasticsearch目录的bin目录下。运行这个插件的好处是:elasticsearch须要的jvm参数和其它配置都已经配置好了,很是方便。elasticsearch
2. 经过SSH Secure Shell链接工具,将ES和Sevice文件夹上传到linux系统相应目录。
3. 在linux环境,进入ES目录的bin/service目录,以下图,运行命令sh elasticsearch start
4. 安装es-head插件
进入elasticsearch/bin目录,输入命令./plugin –install mobz/elasticsearch-head 安装head插件。如图
5. 在浏览器中输入http://localhost:9200,http://localhost:9200/_plugin/head/以下图所示则ES启动成功。
6.如果要中止ES服务,则输入sh elasticsearch stop,则输出以下图,则ES成功中止。
3、遇到的问题及其解决方法
1. 在linux上启动ES时与plugin命令安装ES-Head插件时,都出现了以下问题。此处以plugin做为例子,来给出解决方法。
发现这个问题,就用ls -l命令来查看文件的操做权限,如图
附:文件的权限
![]()
r — 文件能够被读取
w — 文件能够被写入
x — 文件能够被执行(若是它是程序的话)
可见,plugin文件,全部者只有读和写的权限,没有执行的权限。因此须要给这个文件加上可被执行的权限。
应用命令chmod +x plugin 来操做
再输入ls –l 来查看,已经具备了X权限
此时再plugin安装插件head,则能够正常安装。
2. 运行es,会提示错误,相似一些version error的错误。JDK版本若不是7,可能会出现ES启动不起来的问题。linux 自带的opensdk7 也最好不要使用。
Elasticsearch依赖Java 7。推荐使用Oracle JDK 1.7.0_55版本。Java的安装,在各个平台上都有差别,因此咱们不想在这里深刻太多细节。我只想说,在你安装Elasticsearch以前,你能够经过如下命令来检查你的Java版本(若是有须要,安装或者升级): java –version
3.JDK7安装后,系统就会具备两个版本的java,为了确保调用JAVA7版本,须要修改环境变量,保证java7的路径在最前面。
输入命令:vim ~/.bashrc 打开环境变量内容: