设为首页 收藏本站
查看: 1314|回复: 0

[经验分享] linux 安装 Elasticsearch5.6.x 详细步骤以及问题解决方案

[复制链接]

尚未签到

发表于 2017-11-17 17:29:54 | 显示全部楼层 |阅读模式
  在网上有很多那种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
       DSC0000.png
  修改完配置后,使用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 ,如图
         DSC0001.png
  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 命令,如图所示,本人没有配置集群,只是简单的配置了一下;详细说明可以参考官网;
DSC0002.png

  关于上面的警告都忽略了,然后直接就执行命令
  3.2.6  执行ES文件,进入到bin 目录下执行 ./elasticsearch 命令就可以了,执行 ./elasticesrarch -d 是后台运行   
        如果没有什么问题话,就可以安全生成了;然后执行curl 'http://自己配置的IP地址:9200/' 命令,就出现下面的结果
         DSC0003.png
  第四步:问题
      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 插件;解压出来的文件名字,如图
           DSC0004.png
  5.2 执行head  插件,需要node.js 的支持,所以,下面先安装一node.js
  5.2.1 执行命令一:curl -sL https://rpm.nodesource.com/setup_8.x | bash -
  命令二:yum install -y nodejs
DSC0005.png

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

  5.3 安装grunt ,由于head 插件的执行文件是有grunt 命令来执行的,所以这个命令必须安装
  5.3.1  安装命令一:npm install grunt --save-dev
  命令二:npm install                             
DSC0007.png

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

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

  5.3.4  最后一个命令: grunt server &  执行完成后就OK了
  5.3.5 涉及到的问题,在网页上无法正常访问;查看防火墙是否关闭
  5.3.5.1 执行命令service iptables status 查看状态 ;直接将防火墙关闭就好了 执行命令service iptables stop
DSC00010.png    

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

  看到上面的出现的健康值了吗,说明的连接还是有问题的,解决方案是修改 cd 命令进入到elasticsearch-5.6.3 /config 文件中 vi elasticsearch.yml
  文件下添加 :
  http.cors.enabled: true
        http.cors.allow-origin: "*"
         DSC00012.png
  然后重新执行ES  ./elasticsearch 成功起来就可以了,执行结果就是这样的
DSC00013.png

  欢迎各位朋友拍砖,相互学习!!!

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-407977-1-1.html 上篇帖子: 第四节 远程登录LINUX 下篇帖子: [转]linux 调用动态库so文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表