在网上有很多那种ES步骤和问题的解决 方案的,不过没有一个详细的整合,和问题的梳理;我就想着闲暇之余,来记录一下自己安装的过程以及碰到的问题和心得;有什么不对的和问题希望及时拍砖。

第一步:环境

linux 系统 Java 1.8.0_151  elasticsearch-5.6.3

第二步:下载

2.1 JDK的下载可以去官网上直接下载,再次声明一下不要下载最新版本 JAVA 9 版本本人在次已经踩过坑了

2.2 ES 去官网直接下载,本人使用的是 5.6.3 版本;因为版本的不同安装head插件的时候安装步骤不同;好像是从5.0 以后的版本安装head 插件的步骤就不一样了;下面会详细介绍。

第三步:安装

3.1安装JDK环境

前提:查看该系统是否安装过Java 环境,如果安装过将其卸载安装最新的版本,更换Java 的版本也可以这样去操作。

3.1.1 执行命令 rpm -qa|grep jdk 如果安装过将会列出相应的版本,如果没有什么都不会输出。如果安装过使用rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.111-2.6.7.2.el7_2.x86_64 使用这个命令需要注意的就是,列出多少个版本插件就要卸载几个插件;执行完成后;在使用 rpm -qa|grep jdk 去查看一下是否有遗漏的插件没有卸载。

3.1.2 直接将下载好的jdk-8u151-linux-x64.rpm 安装包 ;上传到自己创建好的JAVA文件下;cd 命令进入到JAVA文件下使用rpm 命令进行安装 rpm -ivh jdk-8u131-linux-x64.rpm 安装完成后执行 java -version 命令查看安装是否成功

3.1.3 查看安装目录命令,

命令一:which java

命令二:ls -lrt /usr/bin/java

命令三:ls -lrt /etc/alternatives/java

最后将会得出这样的目录 /usr/java/jdk1.8.0_151/jre/bin/java

3.1.4 配置环境变量,执行命令 vi /etc/profile;然后进入编辑模式,在文件的最后添加下面的配置,如图

JAVA_HOME=/usr/javajdk1.8.0_151
      JRE_HOME=/usr/java/jdk1.8.0_151/jre
      CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
      PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
      

修改完配置后,使用Esc 键退出,输入:wq 保存并退出

3.1.5 执行命令 source /etc/profile 使用环境变量生效

3.1.6 验证环境变量是否生效,分别执行下面的命令echo $JAVA_HOME  echo $CLASSPATH  echo $PATH

OK,JDK就这样安装好了。

3.2安装ES

3.2.1 下载ES安装包elasticsearch-5.6.3.zip 在usr 目录下创建了es文件夹,将安装包上传到里面,解压 unzip elasticsearch-5.6.3.zip cd 进入 elasticsearch-5.6.3 文件里面

3.2.2 创建ES用户和组(创建elsearch用户组及elsearch用户),因为使用root用户执行ES程序,将会出现错误;所以这里需要创建单独的用户去执行ES 文件;命令如下:

命令一:groupadd elsearch

命令二:useradd elsearch -g elsearch

命令三:chown -R elsearch:elsearch elasticsearch-5.6.3  该命令是更改该文件夹下所属的用户组的权限

3.2.3 修改host 文件,执行命令 vi /etc/hosts ,如图

3.2.4 创建ES数据文件和日志文件,直接在root用户根目录一下创建就可以了

执行命令:mkdir /data

命令二:chown -R elsearch:elsearch /data/

命令三:su - elsearch 切换用户

命令四:mkdir -p es/data

命令五:mkdir -p es/logs

3.2.5 修改ES配置文件,使用cd命令进入到config 文件下,执行 vi elasticsearch.yml 命令,如图所示,本人没有配置集群,只是简单的配置了一下;详细说明可以参考官网;

关于上面的警告都忽略了,然后直接就执行命令

3.2.6  执行ES文件,进入到bin 目录下执行 ./elasticsearch 命令就可以了,执行 ./elasticesrarch -d 是后台运行

如果没有什么问题话,就可以安全生成了;然后执行curl 'http://自己配置的IP地址:9200/' 命令,就出现下面的结果

第四步:问题

4.1  1.[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] 意思是说你的进程不够用了

解决方案: 切到root 用户:进入到security目录下的limits.conf;执行命令 vim /etc/security/limits.conf 在文件的末尾添加下面的参数值:

* soft nofile 65536

                                    * hard nofile 131072

                                    * soft nproc 2048

                                   * hard nproc 4096

前面的*符号必须带上,然后重新启动就可以了。执行完成后可以使用命令 ulimit -n 查看进程数

                    2.[2]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]  需要修改系统变量的最大值了
                      解决方案:切换到root用户修改配置sysctl.conf  增加配置值: vm.max_map_count=655360
           执行命令 sysctl -p   这样就可以了,然后重新启动ES服务 就可以了

第五步:安装head 插件

5.1 下载head安装包,下载地址:https://github.com/mobz/elasticsearch-head/archive/master.zip 这是接从git 上下载下来 ,然后上传到虚拟机上的;由于head 插件不能放在elasticsearch-5.6.3 文件夹里,head 插件需要单独放,单独去执行;             所 以在elasticsearch-5.6.3 同级目录下解压了 head 插件;解压出来的文件名字,如图

5.2 执行head  插件,需要node.js 的支持,所以,下面先安装一node.js

5.2.1 执行命令一:curl -sL https://rpm.nodesource.com/setup_8.x | bash -

命令二:yum install -y nodejs

OK,执行完成后,可以使用命令 node -v 验证是否安装成功,同时npm 也安装成功了;执行命令 npm -v 也是可以验证的。

5.3 安装grunt ,由于head 插件的执行文件是有grunt 命令来执行的,所以这个命令必须安装

5.3.1  安装命令一:npm install grunt --save-dev

命令二:npm install

5.3.2 修改配置文件,cd 进入elasticsearch-head-master 文件夹下,执行命令vim Gruntfile.js文件:增加hostname属性,设置为*;如图:

5.3.3  修改 vim _site/app.js 文件:修改head的连接地址:,如图所示:

5.3.4  最后一个命令: grunt server &  执行完成后就OK了

5.3.5 涉及到的问题,在网页上无法正常访问;查看防火墙是否关闭

5.3.5.1 执行命令service iptables status 查看状态 ;直接将防火墙关闭就好了 执行命令service iptables stop

最后执行的结果是这样的,我没有配置集群: 注意下面使用的端口号,不在是9200 了 而是head 插件中的 9100 了

看到上面的出现的健康值了吗,说明的连接还是有问题的,解决方案是修改 cd 命令进入到elasticsearch-5.6.3 /config 文件中 vi elasticsearch.yml

文件下添加 :

http.cors.enabled: true
        http.cors.allow-origin: "*"
        

然后重新执行ES  ./elasticsearch 成功起来就可以了,执行结果就是这样的

Elasticsearch安装使用的更多相关文章

  1. ElasticSearch安装及部署

    安装及部署 一.环境配置 操作系统:Cent OS 7ElasticSearch版本:1.3.2JDK版本:1.7.0_51SSH Secure Shell版本:XShell 5elasticsear ...

  2. Elasticsearch安装和使用

    Elasticsearch安装和使用 Elasticsearch 是开源搜索平台的新成员,实时数据分析的神器,发展迅猛,基于 Lucene.RESTful.分布式.面向云计算设计.实时搜索.全文搜索. ...

  3. Elasticsearch安装详解

    本文只介绍在windows上的安装和配置,其他安装和配置请参见官方文档 ES在windows上安装需下载zip安装包,解压后bin目录下有个 elasticsearch-service.bat 文件. ...

  4. Elasticsearch.安装插件(head)

    Elasticsearch.安装插件(head) 环境: Linux 7.x jdk1.8 目录结构(跟目录多了两个文件) /resources   ### 存放软件源 /u01/          ...

  5. Elasticsearch.安装(单节点)

    Elasticsearch.安装(单节点) 环境Linux 7.x jdk 1.8 elasticsearch 5.x 环境目录结构(根目录多了两个文件夹): /resources    /** 存放 ...

  6. ELK日志监控平台安装部署简介--Elasticsearch安装部署

    最近由于工作需要,需要搭建一个ELK日志监控平台,本次采用Filebeat(采集数据)+Elasticsearch(建立索引)+Kibana(展示)架构,实现日志搜索展示功能. 一.安装环境描述: 1 ...

  7. elasticsearch 安装,以及遇到的问题总结

    系统.软件环境: Centos 6.5 elasticsearch 6.1.1 elasticsearch 安装的话是很简单的,但是安装完成启动的时候报错,下面我就一一的来描述错误,并提供相应的解决方 ...

  8. elasticsearch 安装、配置

    elasticsearch:基于java开发,基于RESTful web 接口,提供分布式多用户能力的全文搜索引擎. elasticsearch 安装: 1. java SE Development ...

  9. 如何给Elasticsearch安装中文分词器IK

    安装Elasticsearch安装中文分词器IK的步骤: 1. 停止elasticsearch 2.2的服务 2. 在以下地址下载对应的elasticsearch-analysis-ik插件安装包(版 ...

  10. (转载)Centos下Elasticsearch安装详细教程

    原文地址:http://www.cnblogs.com/sunny1009/articles/7874251.html Centos下Elasticsearch安装详细教程 1.Elasticsear ...

随机推荐

  1. junit3.8的使用

    今天开始junit使用系列,第一篇梳理junit3X系列,先贴下代码来体验下. 测试源代码如下: package test.junit38test; /** * @创建作者: LinkinPark * ...

  2. Oracl Over函数

    Oracl Over函数 简介 在介绍Over之前, 必须提到开窗函数, 与 聚 合函数一样, 开窗函数也是对行集组进行聚合计算, 但是它不像普通聚合函数那样每组只返回一个值, 开窗函数可以为每组返回 ...

  3. Linux安装ffmpeg

      1.安装ffmpeg 简单步骤: A.首先去官网下载源码包,我的是ffmpeg-3.4.tar.bz2,下载之后上传至Linux准备安装,首先解压安装包: tar -xjvf ffmpeg-3.4 ...

  4. shell第四篇(下)

    摘自王垠的:Unix的缺陷 我想通过这篇文章解释一下我对 Unix 哲学本质的理解.我虽然指出 Unix 的一个设计问题,但目的并不是打击人们对 Unix 的兴趣.虽然 Unix 在基础概念上有一个挺 ...

  5. 【转】布同:如何循序渐进学习Python语言

    大家都知道Python语言是一种新兴的编程语言.1989年,Python就由Guido van Rossum发明.Python一直发展态势很好. 原因有几点:1.跨平台性好.Linux.Windows ...

  6. Struts2中实现随机验证码

    一.创建RandomNum类 1: import java.awt.Color; 2: import java.awt.Font; 3: import java.awt.Graphics; 4: im ...

  7. 备忘:Junit单元测试

    junit 目前测试都是在main方法中调用目前的结果都需要人工对比是否是想要的 1.使用Junit测试方法,绿色条条代表方法测试成功,没有bug,如果是红色条条代表有异常,测试不通过2.点击方法名. ...

  8. JMeter基础教程2:正则表达式使用

    0. 正则表达式简介 正则表达式,又称规则表达式(Regular Expression,在代码中通常简写为regex.regexp或RE)描述了一种字符串匹配的模式(pattern),可以用来检查一个 ...

  9. 《Python网络编程》学习笔记--使用谷歌地理编码API获取一个JSON文档

    Foundations of Python Network Programing,Third Edition <python网络编程>,本书中的代码可在Github上搜索fopnp下载 本 ...

  10. BZOJ 3198: [Sdoi2013]spring [容斥原理 哈希表]

    3198: [Sdoi2013]spring 题意:n个物品6个属性,求有多少不同的年份i,j满足有k个属性对应相等 一开始读错题了,注意是对应相等 第i个属性只能和第i个属性对应 容斥一下 \[ 恰 ...