zoukankan      html  css  js  c++  java
  • windows搭建elasticsearch集群

     windows环境搭建es集群,需要的安装包为:elasticsearch-7.14.1和分词器elasticsearch-analysis-ik-7.14.1

      安装包下载链接:

        https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.1-windows-x86_64.zip

        https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.14.1

        注意:这里es和IK中文分词器的版本要一致,否则会出现不必要的报错。

    搭建步骤:

    一、首先将elasticsearch-7.14.1.zip压缩包解压到一个文件夹中,然后拷贝两份,这里用三个es节点搭建集群,分别编号命名:

     二、修改每个节点中config下的elasticsearch.yml配置文件

     1、elasticsearch-1的yml文件:

    # =================es集群配置==============
    # 
    # 配置es集群的名称,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群
    cluster.name: my-application
    #
    # 节点名称
    node.name: node-1
    # 
    #指定该节点是否有资格被选举成为node
    node.master: true
    # 
    #指定该节点是否存储索引数据,默认为true
    node.data: true
    # 
    # 设置绑定的IP地址,还有其他节点和该节点交互的IP地址,本机ip
    network.host: 127.0.0.1
    # 
    # 指定http端口
    http.port: 9200
    # 
    # 设置节点间交互的tcp端口,默认9300
    transport.tcp.port: 9300
    # 
    # 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
    # 因为另外两台节点的端口自会设置为9301和9302,所以写入两台es的完整地址
    discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
    # 
    # 初始化主节点,在启动集群时,指定一个指定node-1为主节点
    cluster.initial_master_nodes: node-1
    # 
    # 如果需要使用head,那么需要解决跨域问题,使head插件可以访问es
    http.cors.enabled: true
    http.cors.allow-origin: "*"

    2、elasticsearch-2的yml文件:

    # =================es集群配置==============
    # 
    # 配置es集群的名称,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群
    cluster.name: my-application
    #
    #
    # 节点名称
    node.name: node-2
    #
    #指定该节点是否有资格被选举成为node
    node.master: true
    #
    #指定该节点是否存储索引数据,默认为true
    node.data: true
    #
    # 设置绑定的IP地址,还有其他节点和该节点交互的IP地址,本机ip
    network.host: 127.0.0.1
    #
    # 指定http端口
    http.port: 9201
    #
    # 设置节点间交互的tcp端口,默认9300
    transport.tcp.port: 9301
    #
    # 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
    # 因为另外两台节点的端口自会设置为9301和9302,所以写入两台es的完整地址
    discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
    #
    # 初始化主节点
    cluster.initial_master_nodes: node-1
    #
    # 如果需要使用head,那么需要解决跨域问题,使head插件可以访问es
    http.cors.enabled: true
    http.cors.allow-origin: "*"

    3、elasticsearch-3的yml文件:

    # =================es集群配置==============
    # 
    # 配置es集群的名称,es会自动发现在同一网段下的es,如果在同一网段下有多个集群,就可以用这个属性来区分不同的集群
    cluster.name: my-application
    #
    # 节点名称
    node.name: node-3
    # 
    #指定该节点是否有资格被选举成为node
    node.master: true
    # 
    #指定该节点是否存储索引数据,默认为true
    node.data: true
    # 
    # 设置绑定的IP地址,还有其他节点和该节点交互的IP地址,本机ip
    network.host: 127.0.0.1
    # 
    # 指定http端口
    http.port: 9202
    # 
    # 设置节点间交互的tcp端口,默认9300
    transport.tcp.port: 9302
    # 
    # 设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
    # 因为另外两台节点的端口自会设置为9301和9302,所以写入两台es的完整地址
    discovery.zen.ping.unicast.hosts: ["127.0.0.1:9300","127.0.0.1:9301","127.0.0.1:9302"]
    # 
    # 初始化主节点
    cluster.initial_master_nodes: node-1
    # 
    # 如果需要使用head,那么需要解决跨域问题,使head插件可以访问es
    http.cors.enabled: true
    http.cors.allow-origin: "*"

    三、逐一启动每个es节点,运行每个节点下bin目录中的elasticsearch.bat文件

    elasticsearch-1:

     elasticsearch-2:

      elasticsearch-3:

    若能看到以上信息,则集群启动正常。

    若启动过程中,出现闪退、却又看不到报错日志的情况,此时可以通过cmd命令框执行bat启动文件,就可以看到报错信息了,然后进行对应的修改即可

    四、 通过postman访问集群,进行测试

      访问集群的任何一个节点(只需切换端口号即可),此处访问节点node-2进行测试,

      输入地址localhost:9201/_cat/health?v      查询集群的健康状态

     若结果为如下图,则集群已经正常可以使用,其中status为green表示集群正常,yello表示集群数据可以正常使用,但是部分备份分片有问题,但不影响正常使用。

     五、集群启动正常了,接下来配置中文分词器,将已经下载好的IK安装包解压到每个节点的plugin中,如下

     注意,每个节点下都要放一份,然后重新启动es集群,然后进行分词测试

    用postman访问 localhost:9201/_analyze

    请求体中的参数analyzer :ik_max_word  是指定分词的模式,

      ik_max_word  :最大程度的分词,分词的粒度比较细

      ik_smart  : 分词的粒度要粗一下,可以自行测试一下

     text:将要进行分词的文本

    分词结果如下:

    到此,window环境的es集群搭建完毕,es的一些常用操作命令大家可以自行学习一下。

  • 相关阅读:
    ORA01940: cannot drop a user that is currently connected
    struts+swfupload实现批量图片上传(下篇)
    iPhone开发入门教程
    从零开始学习OpenGL ES集合
    iPhone入门学习——半翻页动画效果例子
    《Android学习指南》目录
    基于OpenGL ES 的图片翻转例子,包含双面贴图3D变换
    Android核心分析
    ios开发之分享一个特效 Cube
    仿Drinkspiration App的menu
  • 原文地址:https://www.cnblogs.com/zhangzhiyong-/p/15327597.html
Copyright © 2011-2022 走看看