zoukankan      html  css  js  c++  java
  • Elasticsearch 学习第一天

    一、centos7.2  下进行部署 Elasticsearch6.8.3

      1、软件包链接地址 https://pan.baidu.com/s/1sXDXDdl8vwIceliv9n35yw

            2、安装环境搭建

              1)创建普通用户root 权限  

    [root@localhost home]# adduser jjw
    [root@localhost home]# passwd jjw
    [root@localhost home]# chmod -v u+w /etc/sudoers
    [root@localhost home]# vim /etc/sudoers
    找到         root       ALL=(ALL)           ALL
    然后添加   jjw          ALL=(ALL)       ALL
    [root@localhost home]# chmod -v u-w /etc/sudoers

        2)搭建jdk 环境

    #解压
    [root@localhost home]#  tar -xvf jdk-8u161-linux-x64.tar.gz -C /usr/local/
    #配置变量     
    [root@localhost home]#  vim /etc/profile
    JAVA_HOME=/usr/local/jdk1.8.0_161
    JRE_HOME=/usr/local/jdk1.8.0_161/jre
    CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
    PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
    export  JAVA_HOME JRE_HOME PATH CLASS_PATH
    [root@localhost home]# source /etc/profile

        3) 安装 Elasticsearch6.8.3

    ##  安装测试后异常处理
    ##  不能使用root启动:  文件夹权限所有,所有组等 不能为root 
    ##  内存空间不够:Elasticsearch默认使用1G内存,如果内存不够 需要更改 配置文件jvm.options
    ##  服务器文件上限不够:修改限制
    ## 服务器线程数上限不够:修改限制
    ## 外部端口未开放:内部可以访问 9200,但是外部访问不了。
    
    # 解压文件到指定目录
    [root@localhost jjw]# tar -xvf elasticsearch-6.8.3-linux-x86-64.tar -C /usr/chandler/elasticsearch
    
    # 测试是否安装成功
    [jjw@localhost ~]$ /usr/chandler/elasticsearch/elasticsearch-6.8.3/bin/elasticsearch &
    [jjw@localhost ~]$  curl localhost:9200

          4)测试时相关错误处理

    ##关于内存不够处理
    #修改配置文件
    [jjw@localhost config]$ vim jvm.options
    -Xms1g
    -Xmx1g
    ## 关于 服务器文件上限,和线程上限比较低处理
    [jjw@localhost config]$ vim /etc/security/limits.conf
    #末尾添加如下内容
    *  soft    nofile  65536
    *  hard    nofile  65536
    *  soft    nproc   4096
    *  hard    nproc   4096
    
    #重启后进行测试是否已更改
    #查看每个进程最大同时打开文件数
    [jjw@localhost ~]$ ulimit -Hn
    65536
    [jjw@localhost ~]$ ulimit -Sn
    65536
    #查看最大线程个数
    [jjw@localhost ~]$ ulimit -Hu
    4096
    [jjw@localhost ~]$ ulimit -Su
    4096

    ##虚拟内存太小故障
    [jjw@localhost ~]$ sudo vim /etc/sysctl.conf
    #添加如下内容
    vm.max_map_count=655360
    [jjw@localhost ~]$ sysctl -p

    ##注意 linux 内核版本低于3.5 不支持seccomp
    #处理方法  升级内核 或修改配置文件 禁止seccomp
    [jjw@localhost config]$ vim elasticsearch.yml
      #添加如下内容
      bootstrap.system_call_filter:false

           5)对外端口开放

    ##修改配置文件开放端口
    [jjw@localhost config]$ vim elasticsearch.yml
       #添加如下内容 network.host:
    10.2.33.33 http.port: 9200 ##测试端口是否打开 #运行 elasticsearch 进行 #打开谷歌浏览器 10.2.33.339200

        6)安装  Elasticsearch Head

    ##获取elasticsearch head 方法:
        1、Github:https://github.com/mobz/elasticsearch-head
        2、进入  /usr/chandler 目录
           [jjw@localhost chandler]$ cd /usr/chandler
           [jjw@localhost chandler]$ wget https://github.com/mobz/elasticsearch-head/archive/master.zip  
           [jjw@localhost chandler]$ unzip master.zip
           [jjw@localhost chandler]$ mkdir elasticsearch-head
           [jjw@localhost chandler]$ mv elasticsearch-head-master elasticsearch-head        

        7) 安装 node.js

    ##  Elasticserach head 是用HTML5 编写,所以要使用 node.js。  
    ##  注意   不要使用最新版本,  因为,npm版本可能对应不上;应用启动时出现版本不对应
    #安装 npm 包(node.js)
    [jjw@localhost chandler]$ cd /usr/chandler/elasticsearch-head
    [jjw@localhost elasticsearch-head]$ wget https://npm.taobao.org/mirrors/node/latest-v11.x/node-v11.0.0-linux-x64.tar.gz
    [jjw@localhost elasticsearch-head]$ tar -zcvf node-v11.0.0-linux-x64.tar.gz
    
    ##配置环境变量(npm)
    [jjw@localhost elasticsearch-head]$ vim /etc/profile
    JAVA_HOME=/usr/local/jdk1.8.0_161
    JRE_HOME=/usr/local/jdk1.8.0_161/jre
    CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib
    NODE_HOME=/usr/chandler/elasticsearch-head/node-v11.0.0-linux-x64
    NODE_PATH=$NODE_HOME/lib/node_modules
    PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin:$NODE_HOME/bin
    export  JAVA_HOME JRE_HOME PATH CLASS_PATH NODE_HOME NODE_PATH
    
    [jjw@localhost elasticsearch-head]$ source /etc/profile
    
    ##检测node版本和npm版本
    [jjw@localhost elasticsearch-head]$ node -v
    v11.0.0
    [jjw@localhost elasticsearch-head]$ npm install
    [jjw@localhost elasticsearch-head]$ npm -v
    6.4.1
    

       8)启动Elasticsearch Head

    [jjw@localhost chandler]$ cd elasticsearch-head
    [jjw@localhost elasticsearch-head]$ npm  install -g grunt-cli
    [jjw@localhost elasticsearch-head]$ npm  install -g grunt
    [jjw@localhost elasticsearch-head]$ npm run start
    
    ##注意运行时会出现错误
    #编译时错误,一般需要修改 package.json文件
    #启动时的错误,一般为端口占用
    #使用时的错误,一般因为跨域问题
    #修改 package.json文件
    [jjw@localhost elasticsearch-head]$ vim package.json
    "license": "Apache" 修改为 "license": "Apache-2.0"
    
    #端口占用问题
    linux服务器安装了Github代码仓库,Gitlab占用了9100端口。解决方法:
    1、kill 掉 9100端口进程
    2、修改Elasticserach-Head 端口,修改 Gruntfile.js 配置文件
    修改配置文件方法如下:
    [jjw@localhost elasticsearch-head]$ vim Gruntfile.js
     connect: {
                            server: {
                                    options: {
                                            port: 9001,
                                            base: '.',
                                            keepalive: true
                                    }
                            }
                    }
    # 开放端口
    [jjw@localhost elasticsearch-head]$ vim Gruntfile.js
     connect: {
                            server: {
                                    options: {
                                            hostname: '10.2.33.33',
                                            port: 9001,
                                            base: '.',
                                            keepalive: true
                                    }
                            }
                    }
    ## hostname: '*',  表示所有IP可访问
    #防火墙端口打开
    [jjw@localhost elasticsearch-head]$ firewall-cmd --permanent --zone=public --add-port=9001/tcp
    [jjw@localhost elasticsearch-head]$ firewall-cmd --reload
    [jjw@localhost elasticsearch-head]$ firewall-cmd --list-ports
    [jjw@localhost elasticsearch-head]$ netstat -anp    

        9)检查

    [jjw@localhost elasticsearch-head]$ npm run start
    
    > elasticsearch-head@0.0.0 start /usr/chandler/elasticsearch-head
    > grunt server
    
    Running "connect:server" (connect) task
    Waiting forever...
    Started connect web server on http://10.2.33.33:9001
    
    
    #表示配置成功
    
    ##  用谷歌浏览器 进行测试  http://10.2.33.33:9001

         10)添加 Elasticserach-Head  连接 Elasticserach 集群

    ##Elasticserach 默认不允许入第三方接入,需要修改 elasticsearch.yml 配置文件
    
    [jjw@localhost config]$ vim elasticsearch.yml
        #添加如下内容
        http.cors.enabled: true
        http.cors.allow-origin: "*"
    ## 启动 Elasticserach 进程 登录 http://10.2.33.33:9001 可进行连接

          11)elasticserach-analysis-ik 中文分词插件安装

          ## 注意需要  需要下载 编译后的依赖包;  没有编译自行manv  编译

          下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v6.8.3

    [jjw@localhost plugins]$ cd /usr/chandler/elasticsearch/elasticsearch-6.8.3/plugins

    [jjw@localhost plugins]$ mkdir elasticsearch-analysis-ik-6.8.3
    [jjw@localhost plugins]$ unzip elasticsearch-analysis-ik-6.8.3.zip -d elasticsearch-analysis-ik-6.8.3

       12)Kibana 安装

       下载链接:https://www.elastic.co/cn/downloads/past-releases/kibana-6-8-3

    [jjw@localhost chandler]$ mkdir kibana
    [jjw@localhost chandler]$ tar -xvf kibana-6.8.3-linux-x86_64.tar.gz -C kibana

       开放端口

    [jjw@localhost kibana-6.8.3-linux-x86_64]$ vim config/kibana.yml
    #添加以下内容
    server.port: 5601
    server.host: "10.2.33.33"
    elasticsearch.hosts: ["http://10.2.33.33:9200"]
    
    ##检查防火墙端口是否开放
    [jjw@localhost kibana-6.8.3-linux-x86_64]$ firewall-cmd --permanent --zone=public --add-port=5601/tcp
    [jjw@localhost kibana-6.8.3-linux-x86_64]$ firewall-cmd --reload
    [jjw@localhost kibana-6.8.3-linux-x86_64]$ netstat -tunlp | grep 5601

       配置汉化版

      ## 因为 kibana 7以前  官方没有支持中文。需要自行打补丁包

      下载地址链接:https://github.com/anbai-inc/Kibana_Hanization

      

  • 相关阅读:
    axis2 WebService的发布与调用
    sql语句having子句用法,很多时候你曾忘掉
    linux下tomcat开机自启动
    框架使用的技术主要是SpringMVC 在此基础上进行扩展
    SpringMVC整合Mongodb开发 架构搭建
    解决Linux下3T硬盘分区只有2T(2199G)可用
    ubuntu cp(copy) command
    Linux如何根据UUID自动挂载磁盘分区
    python exec和eval
    在OpenERP报表中使用selection 类型字段
  • 原文地址:https://www.cnblogs.com/jiejunwang/p/12060890.html
Copyright © 2011-2022 走看看