Elasticsearch-7.8.0安装最全(mac、Linux、window、centos7.5集群、docker),Elasticsearch 7.8.0全平台安装指南,Mac、Linux、Windows、CentOS 7.5集群与Docker部署

马肤

温馨提示:这篇文章已超过463天没有更新,请注意相关的内容是否还可用!

摘要:,,本文介绍了Elasticsearch-7.8.0在Mac、Linux、Windows、CentOS 7.5集群以及Docker上的安装步骤。文章详细阐述了每个操作系统环境下的安装过程,包括单机安装和集群搭建,同时提供了docker环境下的安装指南。本文旨在帮助读者全面理解和掌握Elasticsearch的安装和配置,无论是在个人计算机还是生产环境中都能轻松应对。

目录

第一章 Elasticsearch-7.8.0单机安装

Elasticsearch-7.8.0安装最全(mac、Linux、window、centos7.5集群、docker),Elasticsearch 7.8.0全平台安装指南,Mac、Linux、Windows、CentOS 7.5集群与Docker部署 第1张
(图片来源网络,侵删)

第二章 Elasticsearch-7.8.0集群基于Centos7

第三章 Elasticsearch-7.8.0通过Docker方式安装

Elasticsearch-7.8.0安装最全(mac、Linux、window、centos7.5集群、docker),Elasticsearch 7.8.0全平台安装指南,Mac、Linux、Windows、CentOS 7.5集群与Docker部署 第2张
(图片来源网络,侵删)

第一章 Elasticsearch-7.8.0单机安装

Elasticsearch安装单机、Kibana安装单机

适用于mac、window、linux单机测试

1.1 安装 Elasticsearch-7.8.0

1.1.1 安装包下载

下载地址:https://www.elastic.co/downloads/past-releases#elasticsearch

1.1.2 解压安装ElasticSearch

  • 解压elasticsearch-7.8.0-darwin-x86_64.tar.gz到/usr/local/modules目录下
    ➜  ~ tar -zxvf /opt/software/elasticsearch-7.8.0-darwin-x86_64.tar.gz -C /opt/module/
    
    • 启动ElasticSearch服务
      ➜  ~ ./usr/local/modules/elasticsearch/elasticsearch-7.8.0/bin/elasticsearch
      
      • 访问: http://localhost:9200/

        1.2 安装Kibana-7.8.0

        Kibana是一个用于探索、可视化和分享ES数据的客户端。

        1.2.1 安装包下载

        下载地址:https://www.elastic.co/downloads/past-releases#kibana

        1.2.2 解压安装Kibana

        • 解压kibana-7.8.0-darwin-x86_64.tar.gz到/usr/local/modules目录下
          ➜  ~ mv kibana-7.8.0-darwin-x86_64/ kibana-7.8.0
          
          • 修改相关配置连接Elasticsearch
            ➜  ~ vim /usr/local/modules/elasticsearch/kibana-7.8.0/config/kibana.yml
            server.host: "localhost"
            server.port: 5601
            elasticsearch.hosts: ["http://localhost:9200"]
            # 中文
            i18n.locale: "zh-CN"
            

            1.2.3 Kibana启动

            • 启动Kibana
              ➜  ~ /usr/local/modules/elasticsearch/kibana-7.8.0/bin/kibana
              # 后台启动
              ➜  ~ nohup ➜  ~ /bin/kibana &
              
              • 浏览器访问: http://localhost:5601/app/kibana#/dev_tools/console

                1.3 安装elasticsearch-analysis-ik-7.8.0

                Elasticsearch-Analysis-IK是一个专门为Elasticsearch设计的中文分词器插件,它将Lucene IK分词器集成到Elasticsearch中,并支持自定义词典。

                • 下载解压:https://github.com/infinilabs/analysis-ik/tags

                  解压elasticsearch-analysis-ik-7.8.0 到/usr/local/modules/elasticsearch/elasticsearch-7.8.0/plugins/ik目录下

                • 重新启动Elasticsearch

                  ./usr/local/modules/elasticsearch/elasticsearch-7.8.0/bin/elasticsearch
                  

                  1.4 卸载Elasticsearch-7.8.0

                  • 停止服务后。执行下面命令
                    [wolffy@hadoop102 module]$ rm -rf /opt/module/elasticsearch-7.8.0
                    [wolffy@hadoop102 module]$ rm -rf kibana-7.8.0
                    

                    第二章 Elasticsearch-7.8.0集群基于Centos7

                    Elasticsearch安装hadoop102、hadoop103、hadoop104

                    Kibana安装hadoop102

                    2.1 安装 Elasticsearch-7.8.0

                    Elasticsearch(ES)是一个基于Apache Lucene的开源的分布式、高扩展、近实时的搜索引擎。它主要用于海量数据的快速存储、实时检索和高效分析。通过简单易用的RESTful API,它隐藏了Lucene的复杂性,使得全文搜索变得简单。

                    2.1.1 安装包下载

                    下载地址:https://www.elastic.co/downloads/past-releases#elasticsearch

                    2.1.2 解压安装ElasticSearch

                    • 解压elasticsearch-7.8.0.tar.gz到/opt/module目录下,并更名
                      [wolffy@hadoop102 software]$ tar -zxvf /opt/software/elasticsearch-7.8.0-linux-x86_64.tar.gz -C /opt/module/
                      
                      • 在/opt/module/elasticsearch-7.8.0路径下创建data文件夹
                        [wolffy@hadoop102 elasticsearch-7.8.0]$ mkdir data
                        
                        • 修改配置文件/opt/module/elasticsearch-7.8.0/config/elasticsearch.yml
                          [wolffy@hadoop102 config]$ vi elasticsearch.yml
                          #-----------------------Cluster-----------------------
                          cluster.name: myes
                          #-----------------------Node-----------------------
                          node.name: node102
                          #-----------------------Paths-----------------------
                          path.data: /opt/module/elasticsearch-7.8.0/data
                          #-----------------------Memory-----------------------
                          bootstrap.memory_lock: false
                          #-----------------------Network-----------------------
                          network.host: hadoop102 
                          #-----------------------Discovery-----------------------
                          discovery.seed_hosts: ["hadoop102", "hadoop103","hadoop104"]
                          cluster.initial_master_nodes: ["node102", "node103","node104"]
                          

                          cluster.name:如果要配置集群需要两个节点上的elasticsearch配置的cluster.name相同,都启动可以自动组成集群,这里如果不改cluster.name则默认是cluster.name=my-application,

                          node.name:随意取但是集群内的各节点不能相同

                          修改后的每行前面不能有空格,修改后的“:”后面必须有一个空格

                          • 分发至hadoop103以及hadoop104,分发之后修改配置文件:
                            [wolffy@hadoop102 module]$ xsync.sh elasticsearch-7.8.0/
                            
                            [wolffy@hadoop103 elasticsearch-7.8.0]$ vim /opt/module/elasticsearch-7.8.0/config/elasticsearch.yml
                            # 在hadoop103机器修改以下信息
                            node.name: node103
                            network.host: hadoop103
                            [wolffy@hadoop104 elasticsearch-7.8.0]$ vim /opt/module/elasticsearch-7.8.0/config/elasticsearch.yml
                            # 在hadoop104机器修改以下信息
                            node.name: node104
                            network.host: hadoop104
                            

                            2.1.3 调整linux内核参数

                            • 切换到root用户,编辑limits.conf 添加类似如下内容
                              [root@hadoop102 elasticsearch-7.8.0]# vi /etc/security/limits.conf
                              * soft nofile 65536
                              * hard nofile 131072
                              * soft nproc 2048
                              * hard nproc 4096
                              

                              注意:*不要省略掉。以上操作为增加Linux文件系统中可以同时打开的文件句柄数。

                              • 切换到root用户修改配置sysctl.conf
                                [root@hadoop102 elasticsearch-7.8.0]# vi /etc/sysctl.conf
                                vm.max_map_count=655360
                                

                                以上修改的Linux配置需要分发至其他节点.然后重新启动Linux,必须重启!!!

                                2.1.4 ElasticSearch启动

                                • 单点启动
                                  [wolffy@hadoop102 elasticsearch-7.8.0]$ /opt/module/elasticsearch-7.8.0/bin/elasticsearch
                                  [wolffy@hadoop103 elasticsearch-7.8.0]$ /opt/module/elasticsearch-7.8.0/bin/elasticsearch
                                  [wolffy@hadoop104 elasticsearch-7.8.0]$ /opt/module/elasticsearch-7.8.0/bin/elasticsearch
                                  
                                  • 群起脚本elasticsearch_control.sh
                                    [wolffy@hadoop102 bin]$ vim /home/wolffy/bin/elasticsearch_control.sh
                                    #!/bin/bash  
                                    # 请确保SSH密钥认证已经设置好,以便脚本能够无密码登录到每台机器上执行命令 
                                    # # 定义Elasticsearch的地址和端口
                                    ELASTICSEARCH_HOST=("hadoop102" "hadoop103" "hadoop104")  
                                    ELASTICSEARCH_PORT="9200"
                                    # 定义启动Elasticsearch的命令  
                                    START_CMD="nohup /opt/module/elasticsearch-7.8.0/bin/elasticsearch > /dev/null  2>&1 &"
                                    # 定义停止Elasticsearch的命令  
                                    STOP_CMD="ps -ef | grep Elasticsearch | grep -v grep | awk  '{print $2}' | xargs kill "
                                    # 定义检查Elasticsearch状态的命令  
                                    STATUS_CMD="curl http://${ELASTICSEARCH_HOST}:${ELASTICSEARCH_PORT}/_cat/nodes?v"  
                                    # 函数:启动Elasticsearch服务  
                                    start_elasticsearch() {  
                                        for i in "${ELASTICSEARCH_HOST[@]}"; do  
                                            echo "Starting Elasticsearch on $i..."  
                                            ssh $i "$START_CMD"  
                                            if [ $? -eq 0 ]; then  
                                                echo "Elasticsearch started successfully on $i."  
                                            else  
                                                echo "Failed to start Elasticsearch on $i."  
                                            fi  
                                        done  
                                    }  
                                      
                                    # 函数:停止Elasticsearch服务  
                                    stop_elasticsearch() {  
                                        for i in "${ELASTICSEARCH_HOST[@]}"; do  
                                            echo "Stopping Elasticsearch on $i..."  
                                            ssh $i "$STOP_CMD"  
                                            if [ $? -eq 0 ]; then  
                                                echo "Elasticsearch stopped successfully on $i."  
                                            else  
                                                echo "Failed to stop Elasticsearch on $i."  
                                            fi  
                                        done  
                                    }  
                                    # 函数:检查Elasticsearch服务状态  
                                    check_elasticsearch_status() {  
                                        for i in "${ELASTICSEARCH_HOST[@]}"; do  
                                            echo "Checking Elasticsearch status on $i..."  
                                            ssh $i "$STATUS_CMD"
                                            # 执行curl命令并输出集群健康状态  
                                            echo "Checking Elasticsearch cluster health..."  
                                            $CHECK_HEALTH_CMD 
                                            # 检查curl命令的退出状态,如果非0则输出错误消息  
                                            if [ $? -ne 0 ]; then  
                                                echo "Failed to retrieve Elasticsearch cluster health."  
                                                exit 1  
                                            fi
                                        done  
                                    }   
                                    # 解析命令行参数  
                                    case "" in  
                                        start)  
                                            start_elasticsearch  
                                            ;;  
                                        stop)  
                                            stop_elasticsearch  
                                            ;;  
                                        status)  
                                            check_elasticsearch_status  
                                            ;;  
                                        *)  
                                            echo "Usage: 

                                    2.2 安装Kibana-7.8.0

                                    {start|stop|status}" exit 1 ;; esac [wolffy@hadoop102 bin]$ chmod +x /home/wolffy/bin/elasticsearch_control.sh [wolffy@hadoop102 bin]$ elasticsearch_control.sh start [wolffy@hadoop102 bin]$ elasticsearch_control.sh status [wolffy@hadoop102 bin]$ elasticsearch_control.sh stop
                                    • 访问:http://hadoop102:9200/_cat/nodes?v

                                      2.2.1 安装包下载

                                      Kibana是一个用于探索、可视化和分享ES数据的客户端。因此在任一节点安装即可。

                                      2.2.2 解压安装Kibana

                                      下载地址:https://www.elastic.co/downloads/past-releases#kibana

                                      [wolffy@hadoop102 module]$ tar -zxvf /opt/software/kibana-7.8.0-linux-x86_64.tar.gz -C /opt/module/
                                      [wolffy@hadoop102 module]$ mv /opt/module/kibana-7.8.0-linux-x86_64/ /opt/module/kibana-7.8.0
                                      
                                      • 将kibana压缩包上传到所安装节点的指定目录
                                        [wolffy@hadoop102 kibana-7.8.0]$ vi config/kibana.yml
                                        server.host: "hadoop102"
                                        server.port: 5601
                                        elasticsearch.hosts: ["http://hadoop102:9200"]
                                        i18n.locale: "zh-CN"
                                        
                                        • 修改相关配置连接Elasticsearch

                                          2.2.3 Kibana启动

                                          [wolffy@hadoop102 kibana-7.8.0]$ bin/kibana
                                          
                                          • 启动Kibana
                                            [wolffy@hadoop102 bin]$ vim /home/wolffy/bin/kibana_control.sh
                                            #!/bin/bash  
                                              
                                            # 定义Kibana的安装路径  
                                            KIBANA_HOME="/opt/module/kibana-7.8.0" 
                                              
                                            # 定义Kibana的进程名或关键字,用于查找进程ID  
                                            KIBANA_PROCESS_NAME="node ./bin/../src/cli"  
                                              
                                            # 函数:启动Kibana  
                                            start_kibana() {  
                                                # 切换到Kibana的安装目录  
                                                cd "$KIBANA_HOME" || exit  
                                              
                                                # 启动Kibana  
                                                echo "Starting Kibana..."  
                                                nohup ./bin/kibana &> kibana.log & # 在后台启动Kibana并将输出重定向到kibana.log  
                                              
                                                # 检查Kibana进程是否正在运行(可选)  
                                                sleep 5 # 等待Kibana启动  
                                                if pgrep -f "$KIBANA_PROCESS_NAME" > /dev/null; then  
                                                    echo "Kibana started successfully."  
                                                else  
                                                    echo "Failed to start Kibana."  
                                                    exit 1  
                                                fi  
                                            }  
                                              
                                            # 函数:停止Kibana  
                                            stop_kibana() {  
                                                # 查找Kibana的进程ID  
                                                KIBANA_PID=$(pgrep -f "$KIBANA_PROCESS_NAME")  
                                              
                                                # 检查是否找到了Kibana的进程ID  
                                                if [ -z "$KIBANA_PID" ]; then  
                                                    echo "Kibana is not running."  
                                                    exit 0  
                                                fi  
                                              
                                                # 停止Kibana进程  
                                                echo "Stopping Kibana..."  
                                                kill "$KIBANA_PID"  
                                              
                                                # 等待Kibana进程结束  
                                                wait "$KIBANA_PID" || true  
                                              
                                                # 检查Kibana是否已停止  
                                                if pgrep -f "$KIBANA_PROCESS_NAME" > /dev/null; then  
                                                    echo "Failed to stop Kibana."  
                                                    exit 1  
                                                else  
                                                    echo "Kibana stopped successfully."  
                                                fi  
                                            }  
                                              
                                            # 检查传入的参数  
                                            case "" in  
                                                start)  
                                                    start_kibana  
                                                    ;;  
                                                stop)  
                                                    stop_kibana  
                                                    ;;  
                                                *)  
                                                    echo "Usage: 

                                            2.3 安装elasticsearch-analysis-ik-7.8.0

                                            {start|stop}" exit 1 ;; esac [wolffy@hadoop102 bin]$ chmod +x /home/wolffy/bin/kibana_control.sh
                                            • Kibana启停脚本(安装nodejs)
                                              [wolffy@hadoop102 elasticsearch-7.8.0]$ cd plugins/
                                              [wolffy@hadoop102 plugins]$ mkdir ik
                                              [wolffy@hadoop102 plugins]$ cd ik
                                              [wolffy@hadoop102 ik]$ unzip /opt/software/elasticsearch-analysis-ik-7.8.0.zip
                                              [wolffy@hadoop102 ik]$ cp /opt/software/elasticsearch-analysis-ik-7.8.0/* /opt/module/elasticsearch-7.8.0/plugins/ik
                                              
                                              • 浏览器访问:http://hadoop102:5601/app/kibana#/dev_tools/console
                                                [wolffy@hadoop102 plugins]$ xsync.sh ik
                                                

                                                Elasticsearch-Analysis-IK是一个专门为Elasticsearch设计的中文分词器插件,它将Lucene IK分词器集成到Elasticsearch中,并支持自定义词典。

                                                • 下载解压:https://github.com/infinilabs/analysis-ik/tags
                                                  [wolffy@hadoop102 plugins]$ elasticsearch_control.sh start
                                                  
                                                  • 分发分词器到所有节点

                                                    2.4 卸载Elasticsearch-7.8.0和Kibana-7.8.0

                                                    • 重新启动Elasticsearch
                                                      [wolffy@hadoop102 module]$ rm -rf /opt/module/elasticsearch-7.8.0
                                                      [wolffy@hadoop102 module]$ rm -rf kibana-7.8.0
                                                      

                                                      2.5 注意

                                                      • 停止服务后。执行下面命令
                                                        useradd wolffy  *# 新增wolffy用户*
                                                        passwd  wolffy  *# 为wolffy用户设置密码*
                                                        5、为新用户授权
                                                        chown -R wolffy:wolffy /opt/elasticsearch-7.4.0 *#文件夹所有者*
                                                        将 /opt/elasticsearch-7.4.0文件夹授权给wolffy用户:wolffy用户组
                                                        
                                                        打开elasticsearch.yml
                                                        新增
                                                        xpack.security.enabled: false
                                                        xpack.security.transport.ssl.enabled: false
                                                        

                                                        因为安全问题,Elasticsearch 不允许root用户直接运行,所以要创建新用户,在root用户中创建新用户,执行如下命令:

                                                        第三章 Elasticsearch-7.8.0通过Docker方式安装

                                                        8.0以上需要增加如下配置

                                                        3.1 安装 Elasticsearch-7.8.0

                                                        3.1.1 创建网络

                                                        # 因为需要部署kibana容器,因此需要让es和kibana容器互联。
                                                        docker network create es-net
                                                        

                                                        3.1.2 拉取镜像

                                                        # 拉取镜像
                                                        docker pull elasticsearch:7.8.0
                                                        

                                                        3.1.3 创建挂载点目录

                                                        # 创建挂载点目录
                                                        mkdir -p  \
                                                        /Users/wolffy/docker/elasticsearch-7.8.0/data \
                                                        /Users/wolffy/docker/elasticsearch-7.8.0/config \
                                                        /Users/wolffy/docker/elasticsearch-7.8.0/plugins
                                                        # 修改权限
                                                        chmod 777  /Users/wolffy/docker/elasticsearch-7.8.0/data
                                                        chmod 777  /Users/wolffy/docker/elasticsearch-7.8.0/config
                                                        chmod 777  /Users/wolffy/docker/elasticsearch-7.8.0/plugins
                                                        

                                                        3.1.4 创建容器

                                                        docker run -d \
                                                        --restart=always \
                                                        --name elasticsearch-7.8.0 \
                                                        --network es-net \
                                                        -p 9200:9200 \
                                                        -p 9300:9300 \
                                                        --privileged \
                                                        -v /Users/wolffy/docker/elasticsearch-7.8.0/data:/usr/share/elasticsearch/data \
                                                        -v /Users/wolffy/docker/elasticsearch-7.8.0/plugins:/usr/share/elasticsearch/plugins \
                                                        -e "discovery.type=single-node" \
                                                        -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \
                                                        elasticsearch:7.8.0
                                                        

                                                        Likely root cause: java.nio.file.AccessDeniedException: /usr/share/elasticse

                                                        宿主机的目录权限问题 :用户目录一定要家目录。这样用户才有权限问题。

                                                      • -d: 在后台运行容器,并返回容器ID。
                                                      • --restart=always: 无论容器的退出状态如何,始终重启容器。这确保了即使Elasticsearch服务因为某种原因停止,容器也会自动重启。
                                                        • --name elasticsearch-7.8.0: 为容器指定一个名称,这里是elasticsearch-7.8.0。
                                                        • --network es-net: 将容器连接到名为es-net的Docker网络。这允许容器与同一网络上的其他容器通信。
                                                        • -p 9200:9200: 将宿主机的9200端口映射到容器内的9200端口,用于Elasticsearch的HTTP接口。
                                                        • -p 9300:9300: 将宿主机的9300端口映射到容器内的9300端口,用于Elasticsearch的传输层通信。
                                                        • --privileged: 给予容器扩展的权限,让容器内的root用户拥有宿主机的root权限。这通常不是最佳实践,因为它可能会带来安全风险,但在某些情况下,Elasticsearch可能需要这些权限来正确运行。
                                                        • -v /Users/wolffy/docker/elasticsearch-7.8.0/data:/usr/share/elasticsearch/data: 将宿主机的/Users/wolffy/docker/elasticsearch-7.8.0/data目录映射到容器内的/usr/share/elasticsearch/data目录,用于存储Elasticsearch的数据。
                                                        • -v /Users/wolffy/docker/elasticsearch-7.8.0/plugins:/usr/share/elasticsearch/plugins: 将宿主机的/Users/wolffy/docker/elasticsearch-7.8.0/plugins目录映射到容器内的/usr/share/elasticsearch/plugins目录,允许你将自定义插件安装在宿主机上,并在容器中使用。
                                                        • -e "discovery.type=single-node": 设置环境变量discovery.type为single-node,告诉Elasticsearch以单节点模式运行。这在开发或测试环境中很常见,但在生产环境中,你可能需要配置一个更复杂的集群。
                                                        • -e "ES_JAVA_OPTS=-Xms512m -Xmx512m": 设置环境变量ES_JAVA_OPTS来配置Elasticsearch的Java虚拟机。这里,-Xms512m设置了JVM的初始堆大小为512MB,-Xmx512m设置了最大堆大小为512MB。
                                                        • 3.1.5 编写elasticsearch.yml[可选]

                                                          # 先进入es容器
                                                          docker exec -it elasticsearch-7.8.0 /bin/bash
                                                          # 关闭 密码安全验证
                                                          echo 'xpack.security.enabled: false' >> config/elasticsearch.yml
                                                          cat config/elasticsearch.yml
                                                          
                                                        • elasticsearch:7.8.0: 指定要运行的Elasticsearch镜像及其版本,这里是elasticsearch:7.8.0。

                                                          3.1.6 重启elasticsearch容器测试

                                                          docker restart es
                                                          docker start es
                                                          

                                                          xpack.security.enabled: false elasticsearch-8.x以下无需配置

                                                          3.2 安装Kibana-7.8.0

                                                          3.2.1 拉取镜像

                                                          http://localhost:9200/

                                                          docker pull kibana:7.8.0
                                                          

                                                          3.2.2 创建挂载点目录

                                                          mkdir -p \
                                                          /Users/wolffy/docker/kibana-7.8.0/config \
                                                          /Users/wolffy/docker/kibana-7.8.0/data
                                                          
                                                          chmod 777 /Users/wolffy/docker/kibana-7.8.0/config
                                                          chmod 777 /Users/wolffy/docker/kibana-7.8.0/data
                                                          

                                                          3.2.3 创建kibana容器

                                                          docker run -d \
                                                          --restart=always \
                                                          --name kibana-7.8.0 \
                                                          --network es-net \
                                                          -p 5601:5601 \
                                                          -e ELASTICSEARCH_HOSTS=http://elasticsearch-7.8.0:9200 \
                                                          kibana:7.8.0
                                                          
                                                        • -d: 在后台运行容器并返回容器ID。
                                                        • --restart=always: 无论容器的退出状态如何,始终重启容器。
                                                          • --name kibana: 为容器指定一个名称,这里是kibana。
                                                          • --network es-net: 将容器连接到名为es-net的Docker网络。这通常是为了确保Kibana容器可以与在同一网络上的Elasticsearch容器通信。
                                                          • -p 5601:5601: 将宿主机的5601端口映射到容器内的5601端口。Kibana默认使用5601端口,通过这个映射,你可以通过访问宿主机的5601端口来访问Kibana。
                                                          • -e ELASTICSEARCH_HOSTS=http://elasticsearch-7.8.0:9200: 设置环境变量ELASTICSEARCH_HOSTS,用于指定Kibana应该连接到的Elasticsearch主机和端口。这里假设Elasticsearch容器的名称是elasticsearch-7.8.0,并且它运行在9200端口上。
                                                          • 3.2.4 测试

                                                            3.3 安装elasticsearch-analysis-ik-7.8.0

                                                          • kibana:7.8.0: 指定要运行的Kibana镜像及其版本,这里是kibana:7.8.0。

                                                            3.3.1 进入Elasticsearch容器

                                                            耐心等待20s初始化完毕即可

                                                            ➜  ~ docker exec -it elasticsearch-7.8.0 /bin/bash
                                                            

                                                            安装IK分词器的版本,必须和Elasticsearch的版本一致。我们采用离线安装方式进行。

                                                            ➜  ~ docker cp /Users/wolffy/docker/elasticsearch-analysis-ik-7.8.0 elasticsearch-7.8.0:/usr/share/elasticsearch/plugins/ik
                                                            [root@45c518cb8384 ik]# cd /usr/share/elasticsearch/plugins/ik/elasticsearch-analysis-ik-7.8.0
                                                            [root@45c518cb8384 ik]# mv -r * ../
                                                            
                                                          • docker cp 复制文件到docker内部
                                                          • /Users/wolffy/docker/elasticsearch-analysis-ik-7.8.0 ik分词器路径
                                                            • elasticsearch-7.8.0 es容器名称
                                                            • 3.3.2 重启Elasticsearch

                                                              docker restart elasticsearch-7.8.0
                                                              
                                                            • /usr/share/elasticsearch/plugins/ik docker内es插件路径

                                                              注意:不能有.Ds_store 文件否则启动不起来

                                                              3.3.3 测试

                                                              GET _analyze
                                                              {
                                                                "analyzer": "ik_smart",
                                                                "text":"今天天气不错"
                                                              }
                                                              
                                                              {
                                                                "tokens" : [
                                                                  {
                                                                    "token" : "今天天气",
                                                                    "start_offset" : 0,
                                                                    "end_offset" : 4,
                                                                    "type" : "CN_WORD",
                                                                    "position" : 0
                                                                  },
                                                                  {
                                                                    "token" : "不错",
                                                                    "start_offset" : 4,
                                                                    "end_offset" : 6,
                                                                    "type" : "CN_WORD",
                                                                    "position" : 1
                                                                  }
                                                                ]
                                                              }
                                                              

                                                              更多优质资源:牛牛IT资源网 www.cowcowit.com


0
收藏0
文章版权声明:除非注明,否则均为VPS857原创文章,转载或复制请以超链接形式并注明出处。

相关阅读

  • 【研发日记】Matlab/Simulink自动生成代码(二)——五种选择结构实现方法,Matlab/Simulink自动生成代码的五种选择结构实现方法(二),Matlab/Simulink自动生成代码的五种选择结构实现方法详解(二)
  • 超级好用的C++实用库之跨平台实用方法,跨平台实用方法的C++实用库超好用指南,C++跨平台实用库使用指南,超好用实用方法集合,C++跨平台实用库超好用指南,方法与技巧集合
  • 【动态规划】斐波那契数列模型(C++),斐波那契数列模型(C++实现与动态规划解析),斐波那契数列模型解析与C++实现(动态规划)
  • 【C++】,string类底层的模拟实现,C++中string类的模拟底层实现探究
  • uniapp 小程序实现微信授权登录(前端和后端),Uniapp小程序实现微信授权登录全流程(前端后端全攻略),Uniapp小程序微信授权登录全流程攻略,前端后端全指南
  • Vue脚手架的安装(保姆级教程),Vue脚手架保姆级安装教程,Vue脚手架保姆级安装指南,Vue脚手架保姆级安装指南,从零开始教你如何安装Vue脚手架
  • 如何在树莓派 Raspberry Pi中本地部署一个web站点并实现无公网IP远程访问,树莓派上本地部署Web站点及无公网IP远程访问指南,树莓派部署Web站点及无公网IP远程访问指南,本地部署与远程访问实践,树莓派部署Web站点及无公网IP远程访问实践指南,树莓派部署Web站点及无公网IP远程访问实践指南,本地部署与远程访问详解,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南,树莓派部署Web站点及无公网IP远程访问实践详解,本地部署与远程访问指南。
  • vue2技术栈实现AI问答机器人功能(流式与非流式两种接口方法),Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法探究,Vue2技术栈实现AI问答机器人功能,流式与非流式接口方法详解
  • 发表评论

    快捷回复:表情:
    评论列表 (暂无评论,0人围观)

    还没有评论,来说两句吧...

    目录[+]

    取消
    微信二维码
    微信二维码
    支付宝二维码