• Elasticsearch环境搭建和介绍(Windows)


    一、Elasticsearch介绍和安装

    1.1 介绍

     

     Elastic

    Elastic官网:https://www.elastic.co/cn/

    Elastic有一条完整的产品线:Elasticsearch、Kibana、Logstash等,前面说的三个就是大家常说的ELK技术栈。

     Elasticsearch

    Elasticsearch官网:https://www.elastic.co/cn/products/elasticsearch

    Elasticsearch具备以下特点:

    • 分布式,无需人工搭建集群(solr就需要人为配置,使用Zookeeper作为注册中心)
    • Restful风格,一切API都遵循Rest原则,容易上手
    • 近实时搜索,数据更新在Elasticsearch中几乎是完全同步的。

    版本

    目前Elasticsearch最新的版本是6.4.2,我这里使用的版本是6.2.4

    安装Elasticsearch前提条件:JDK1.8及以上

    1.2 安装和配置

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

    安装:Elasticsearch无需安装,解压即用。

    运行:进入elasticsearch/bin目录,可以看到下面的执行文件:

    双击运行

    可以看到绑定了两个端口:

    • 9300:Java程序访问的端口
    • 9200:浏览器、postman访问的端口

    我们在浏览器中访问:http://127.0.0.1:9200

    我在浏览器上安装了一个插件所显示的效果

    看到了上面的信息,说明你的Elasticsearch已经安装成功了,但是为了方便我们开发的时候查看数据,我推荐安装一个Elasticsearch的客户端工具:Head。

    在此之前先将ElasticSearch安装为Windows服务。

    1.3 ElasticSearch安装为Windows服务

      命令行启动:

    启动时通过cmd直接在elasticsearch的bin目录下执行elasticsearch 。这样直接启动的话集群名称会默认为elasticsearch,节点名称会随机生成。 

    停止就直接在cmd界面按Ctrl+C 。

    其实我们也可以将elasticsearch设置为windows系统服务: elasticsearch的bin目录下有一个elasticsearch-service.bat 

    进入bin目录下执行:

    然后在系统服务中可以看到Elasticsearch已成为系统服务。 

    elasticsearch-service.bat后面还可以执行这些命令 
    install: 安装Elasticsearch服务 
    remove: 删除已安装的Elasticsearch服务(如果启动则停止服务) 
    start: 启动Elasticsearch服务(如果已安装) 
    stop: 停止服务(如果启动) 
    manager:启动GUI来管理已安装的服务

     

    下面我讲述的是如何安装Head插件。

    1.4 安装Head插件及NSSM

    1 什么是Head

      Ealsticsearch只是后端提供各种API,那么怎么直观的使用它呢?

    Elasticsearch-head是一款专门针对于Elasticsearch的客户端工具,是一个基于node.js的前端工程

    Elasticsearch-head配置包,下载地址:https://github.com/mobz/elasticsearch-head

    2 安装

    注意:es5以上版本安装head需要安装node和grunt

    第一步:从地址:https://nodejs.org/en/download/ 下载相应系统的msi,双击安装。

    第二步:安装完成用cmd进入安装目录执行 node -v可查看版本号

    能看到版本号说明node安装成功

    第三步:执行 npm install -g grunt-cli 安装grunt ,安装完成后执行grunt -version查看是否安装成功,会显示安装的版本号

    3 配置运行

    第一步:进入Elasticsearch安装目录下的config目录,修改elasticsearch.yml文件.在文件的末尾加入以下代码

    http.cors.enabled: true

    http.cors.allow-origin: "*"

    node.master: true

    node.data: true

    然后去掉network.host: 192.168.0.1的注释并改为network.host: 0.0.0.0,去掉cluster.name;node.name;http.port的注释(也就是去掉#)

    第二步:双击elasticsearch.bat重启Elasticsearch

    第三步:在https://github.com/mobz/elasticsearch-head中下载head插件,选择下载zip

    第四步:解压到指定文件夹下,D:environmentelasticsearch-head-master 进入该文件夹,修改D:environmentelasticsearch-head-masterGruntfile.js 在对应的位置加上hostname:’*’

    第五步:打开cmd命令行窗口 ,在D:environmentelasticsearch-head-master 下执行npm install 安装,完成后执行grunt server 或者npm run start 运行head插件,如果运行不成功建议重新安装grunt。

    4 使用NSSM将elasticsearch-head插件安装为Windows服务

    在当前目录下,新建文件run.bat  内容: npm run start

    • 下载NSSM:http://www.nssm.cc/download
    • NSSM解压,eg:E盘,进入到E: ssm-2.24win64 ,执行cmd

    • nssm install elasticsearch-head 【nssm install <服务名> 例如:nssm install Elasticsearch(自定义服务名)】 弹出如下界面

    Path: 填写启动文件路径(${LOGSTASH_HOME}inxxx.bat)
    Startup directory : 填写启动文件目录(${LOGSTASH_HOME}in)
    Detail : 填写服务名称
    Dependencies : 填写此服务启动需要依赖哪个服务(一般配置为要先启动elasticsearch,再启动logstash)

    附:nssm常用命令:

    nssm install servername //创建servername服务
    nssm start servername //启动服务
    nssm stop servername //暂停服务
    nssm restart servername //重新启动服务
    nssm remove servername //删除创建的servername服务

    5 成功

    打开浏览器访问:http://127.0.0.1:9100

    1.5 elasticsearch-head的使用

     参考:elasticsearch-head的使用

    1.6 安装Ik分词器

      ElasticSearch 默认采用的分词器, 是单个字分词 ,效果很差 ,所以我们需要安装一个更实用的分词器,这里采用IK分词器

    搜索【IK Analyzer 3.0】

    http://www.oschina.net/news/2660

    Lucene的IK分词器早在2012年已经没有维护了,现在我们要使用的是在其基础上维护升级的版本,并且开发为Elasticsearch的集成插件了,与Elasticsearch一起维护升级,版本也保持一致,最新版本:6.4.2

    1 下载

    注意:你的Elasticsearch和IK分词器必须版本统一

    源码下载地址:https://github.com/medcl/elasticsearch-analysis-ik/tree/6.2.x

    jar包下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases

    2 安装:无需安装,解压即可使用

    我们将其改名为ik,并复制到Elasticsearch的解压目录,如下图所示


    然后重启elasticsearch:

    Ik分词器安装成功。

    3 IK扩展词和停用词的简单介绍

    扩展词和停用词文件:

    4 测试

    OK,到这里Elasticsearch环境搭建就成功了


    参考:Elasticsearch环境搭建和介绍(Windows) 

  • 相关阅读:
    浅谈如何学好前后端
    MONGDB的使用
    一个css3特效
    axios
    css实现响应式图片及各种效果
    jQuery中.bind() .live() .delegate() .on()的区别
    HTML5 Web 存储
    HTML5中新的语义元素
    html5shiv:用于解决IE9以下版本浏览器对HTML5新增标签不识别,并导致CSS不起作用的问题
    JS移动客户端--触屏滑动事件
  • 原文地址:https://www.cnblogs.com/peterYong/p/11024061.html
Copyright © 2020-2023  润新知