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

      

  • 相关阅读:
    unsupported jsonb version number 123
    如何在MPlayer上支持RTSP
    TDengine 时序数据库的 ADO.Net Core 提供程序 Maikebing.EntityFrameworkCore.Taos
    如何使用IoTSharp对接ModBus?
    如何从源码启动和编译IoTSharp
    Asp.Net Core 自动适应Windows服务、Linux服务、手动启动时的内容路径的扩展方法
    MQTTnet 的Asp.Net Core 认证事件的扩展
    Asp.Net Core 中利用QuartzHostedService 实现 Quartz 注入依赖 (DI)
    The remote certificate is invalid according to the validation procedure 远程证书验证无效
    settings插拔式源码
  • 原文地址:https://www.cnblogs.com/jiejunwang/p/12060890.html
Copyright © 2011-2022 走看看