由于项目需求,需要在linux平台搭建一套ES服务。在搭建过程中,遇到各种各样的问题。后来都一一解决。现在要记录下来这个过程,以及其中遇到的问题,及其解决方法。

一、环境配置

操作系统:Cent OS 7

ElasticSearch版本:1.4.1

JDK版本:1.7

SSH Secure Shell版本:3.2.9

elasticsearch-servicewrapper :ES的服务插件,一般在linux上使用。

二、操作过程

1. elasticsearch 作为一个系统service应用 ,可以安装elasticsearch-servicewrapper插件。

https://github.com/elasticsearch/elasticsearch-servicewrapper下载该插件后,解压缩。将service目录拷贝到elasticsearch目录的bin目录下。运行这个插件的好处是:elasticsearch需要的jvm参数和其它配置都已经配置好了,非常方便。

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:9200http://localhost:9200/_plugin/head/如下图所示则ES启动成功。

6.若是要停止ES服务,则输入sh elasticsearch stop,则输出如下图,则ES成功停止。

三、遇到的问题及其解决方法

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  打开环境变量内容:

ElasticSearch在linux上的安装部署全程记录的更多相关文章

  1. ElasticSearch elasticsearch-servicewrapper 在linux上的安装部署全程记录

    原文地址:http://www.cnblogs.com/tianjixiaoying/p/4316011.html 由于项目需求,需要在linux平台搭建一套ES服务.在搭建过程中,遇到各种各样的问题 ...

  2. Elastic-search在linux上的安装

    今天是我装第四次 ES ,之前装好用了一段时间,后面莫名其妙爆炸了,炸出一堆异常... 安装环境: JDK1.8   centos    ElasticSearch-6.2.4 jdk1.8以上,所以 ...

  3. elasticsearch在linux上的安装,Centos7.X elasticsearch 7.6.2

    本文环境:Elasticsearch7.6.2目前最先版本   centos7.X     JDK1.8 elasticsearch介绍 官网:https://www.elastic.co/cn/pr ...

  4. elasticsearch在linux上的安装,Centos7.X elasticsearch 7.6.2安装

    本文环境:Elasticsearch7.6.2目前最先版本   centos7.X     JDK1.8 elasticsearch介绍 官网:https://www.elastic.co/cn/pr ...

  5. clickhouse在Linux上的安装部署

    $ sudo apt-get install clustershell #输入你的管理员密码 $ cd /etc/clustershell $ sudo gedit groups #在文件中添加如下内 ...

  6. linux上MongoDB安装部署

    ①下载安装包 mongodb-linux-x86_64-rhel62-3.6.3.tgz   ②解压: tar zxvf mongodb-linux-x86_64-rhel62-3.6.3.tgz   ...

  7. linux上nagios安装完整版

    监控server端的安装部署一.apache的安装下载httpd-2.2.15.tar.gz gunzip httpd-2.2.15.tar.gztar xvf httpd-2.2.15.tarcd ...

  8. ODI11G 在Linux上的安装配置

    ODI11G 在Linux上的安装配置 OS环境:Red hat Linux x86_64 一.JDK安装 1. 去oracle官网上下载 http://www.oracle.com/technetw ...

  9. 【数据库】Mean web开发 04-MongoDB在Linux上的安装及遇到的问题

    简介 Mean是JavaScript的全栈开发框架.更多介绍 用MongoDB实现持久数据的存储是Mean Web全栈开发中的一部分. MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非 ...

随机推荐

  1. python 数字

    python数字: 本文主要讲解常用的数字类型转换, 数字函数和随机数字函数. # coding:utf-8 # python数字类型转换 def data_conversion(): "& ...

  2. innodb文件

    参数文件 日志文件 socket文件 pid文件 mysql表结构文件 存储引擎文件 1. 错误日志 启用错误日志方法 /etc/init.d/mysql启动文件中 /usr/bin/mysqld_s ...

  3. 使用NSSM将exe封装为服务

    NSSM是一个服务封装程序,它可以将普通exe程序封装成服务,使之像windows服务一样运行.同类型的工具还有微软自己的srvany,不过nssm更加简单易用,并且功能强大.它的特点如下: 支持普通 ...

  4. cached-query 将缓存和查询数据库高速连接起来的轻类库

    介绍 我们经常有这种需求:当我们把memcached增加到项目后我还还要写一个 cacheUtils 或者 cacheManager 之类的类来操作memcached. 而且一般的操作不外乎是这种操作 ...

  5. Makefile 中的.PHONY

    PHONY 目标并非实际的文件名:只是在显式请求时执行命令的名字.有两种理由需要使用PHONY 目标:避免和同名文件冲突,改善性能. 所谓的PHONY这个单词就是伪造的意思,makefile中将.PH ...

  6. Install windows server 2008 on ESXi 5.1, add to domain and config for remote desktop

    Never give up ---xingyunpi Install windows server 2008 system on ESXi 5.1, add it to a domain and do ...

  7. ROS分布式控制的节点配置

    首先在终端中输入下面的指令查看ROS主节点主机的IP和远程控制端的IP: ifconfig 比如机器人控制器中运行着ROS主节点,其IP地址为192.168.1.111,hostname为xubunt ...

  8. Jmeter+Ant+Jenkins搭建持续集成的接口测试(推荐 Mark)

    转自:http://my.oschina.net/hellotest/blog/516079 目录[-] 一.Jmeter+ant 二.Jmeter+ant+Jenkins 三.Tomcat配置虚拟目 ...

  9. Swift udp实现根据端口号监听广播数据(利用GCDAsyncUdpSocket实现)

    有个小需求,app需要监听pc广播的数据: 代码实现思路: 使用三方库:CocoaAsyncSocket 1.开启udp监听: udpSocket.beginReceiving() 2.读取udp的数 ...

  10. linux popen()与system()的区别

    linux popen()与system()的区别 popen() 可以在调用程序和POSIX shell /usr/bin/sh 要执行的命令之间创建一个管道(请参阅sh-posix(1) ). p ...