Elasticsearch入门教程(一):Elasticsearch及插件安装

原文:Elasticsearch入门教程(一):Elasticsearch及插件安装

版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/vbirdbest/article/details/79194244

分享一个朋友的人工智能教程(请以“右键”->"在新标签页中打开连接”的方式访问)。比较通俗易懂,风趣幽默,感兴趣的朋友可以去看看。

一:安装Elasticsearch

  1. 下载并解压Elasticsearch

    直接到官网(https://www.elastic.co/cn/downloads/elasticsearch)下载适合自己的系统的Elasticsearch,这里下载的是目前最新的版本6.1.1,然后解压放到合适的目录即可,这里放在/usr/local下面.

    elasiticsearch目录

    bin 运行Elasticsearch实例和管理插件的一些脚本

    config 配置文件, elasticsearch.yml

    data 在节点上每个索引/碎片的数据文件的位置

    lib Elasticsearch自身使用的.jar文件

    logs 日志文件

    modules

    plugins 已安装的插件的存放位置

  2. 启动Elasticsearch

    切换到Elasticsearch目录下,然后运行bin下的elasticsearch

    cd /usr/local/elasticsearch-6.1.1
    
    ./bin/elasticsearch
    
    
    
    • 1
    • 2
    • 3

    ./bin/elasticsearch是前台启动,如果想后台启动可以使用-d参数: ./bin/elasticsearch -d

  3. REST访问

    Elasticsearch使用的端口是9200,可以在浏览器上直接访问http://localhost:9200/ 或者使用curl命令访问http://localhost:9200

    curl -XGET ‘http://localhost:9200‘
    
    {
      "name" : "XV7DTDS",
      "cluster_name" : "elasticsearch",
      "cluster_uuid" : "4-7jTDMbSASmws83WgavTg",
      "version" : {
        "number" : "6.1.1",
        "build_hash" : "bd92e7f",
        "build_date" : "2017-12-17T20:23:25.338Z",
        "build_snapshot" : false,
        "lucene_version" : "7.1.0",
        "minimum_wire_compatibility_version" : "5.6.0",
        "minimum_index_compatibility_version" : "5.0.0"
      },
      "tagline" : "You Know, for Search"
    }
    
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
  4. 停止Elasticsearch

    如果使用前台模式启动的话直接使用Ctrl+C来停止Elasticsearch


二:安装ik分词器

分词是全文索引中非常重要的部分,Elasticsearch是不支持中文分词的,ik分词器支持中文

  1. 下载elasticsearch-analysis-ik

    直接到github上下载elasticsearch-analysis-ik分词器,注意下载分词器的版本必须要和elasticsearch的版本保持一致,下载地址 https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.1.1/elasticsearch-analysis-ik-6.1.1.zip, 根据需要可以将6.1.1改成自己elasticsearch的版本就可以直接下载。

  2. 安装ik分词器

    直接解压elasticsearch-analysis-ik-6.1.1.zip,并将解压后的文件目录elasticsearch放到elasticsearch的安装目录下的plugins下,然后重启elasticsearch即可

  3. 测试ik分词器
    curl -XGET -H ‘Content-Type: application/json‘ ‘http://localhost:9200/_analyze?pretty‘ -d ‘{
    
    
    
    • 1

“analyzer” : “ik_max_word”,

“text”: “中华人民共和国国歌”

}’


---
### 三: 安装kibana

Kibana是一个开源的分析和可视化平台,旨在与 Elasticsearch 合作。Kibana 提供搜索、查看和与存储在 Elasticsearch 索引中的数据进行交互的功能。开发者或运维人员可以轻松地执行高级数据分析,并在各种图表、表格和地图中可视化数据。

1. 下载并解压
直接到官网https://www.elastic.co/downloads/kibana 去下载,解压到合适的目录,下载的版本必须要和Elasticsearch的版本保持一致

2. 配置elasticsearch.url
编辑 kibana目录/conf/kibana.yml 文件中有一个elasticsearch.url被注释掉了,打开elasticsearch.url注释即可

3. 启动kibana
切换到kibana目录并启动


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

cd /usr/local/kibana-6.1.1

./bin/kibana


4. 访问:http://localhost:5601/

---
### 四: 安装x-pack
注意:安装x-pack需要先安装kibana

>x-pack安装:讲的比较详细,这里推荐一下 http://www.51niux.com/?id=210

x-pack是elasticsearch的一个扩展包,将安全,警告,监视,图形和报告功能捆绑在一个易于安装的软件包中
具体按住步骤官网上有详细说明:https://www.elastic.co/downloads/x-pack


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

cd /usr/local/elasticsearch-6.1.1

安装过程中输入y即可

./bin/elasticsearch-plugin install x-pack

启动es

./bin/elasticsearch

在另一个窗口执行

cd /usr/local/elasticsearch-6.1.1

设置过程中提示,输入y即可

./bin/x-pack/setup-passwords auto

# 返回结果

Changed password for user kibana

PASSWORD kibana = wZ54LdeFa+1N5C##IAuF

	Changed password for user logstash_system
	PASSWORD logstash_system = E6&gqoW5TP-?JJMLsHjs

	Changed password for user elastic
	PASSWORD elastic = @Dc?$qz3w6eZf%jUwKD+


  • 1
  • 2
  • 3
  • 4
  • 5

cd /usr/local/kibana-6.1.1

安装过程比较慢

./bin/kibana-plugin install x-pack

在kibana.yml中配置用户名和密码

elasticsearch.username: “kibana”

密码是上面步骤自动生成的

elasticsearch.password: “wZ54LdeFa+1N5C##IAuF”

安装完成后访问http://localhost:5601/并使用用户名: elastic 密码:@Dc?$qz3w6eZf%jUwKD+ 登录  

![这里写图片描述](https://img-blog.csdn.net/20180129134930760?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdmJpcmRiZXN0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)

注意:elastic的角色是超级用户superuser,超级用户可以在Dev Tools中使用api操作es,kibana用户的角色是kibana_system,通过Management可以对用户进行管理,如创建用户、修改密码(为了方便,这里把密码改成了123456)、分配权限等
![这里写图片描述](https://img-blog.csdn.net/20180129141401837?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdmJpcmRiZXN0/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast)
Dev Tools: 可以对curl进行简化操作es,只需要指定HTTP动词、api路径和参数即可。例如

  PUT /megacorp/employee/1
{
    "first_name" : "John",
    "last_name" :  "Smith",
    "age" :        25,
    "about" :      "I love to go rock climbing",
    "interests": [ "sports", "music" ]
}

Monitoring: 用于监控集群


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
# -i:用于显示响应头
# -u:用于设置用户名和密码
# -H:用于设置参数的格式
# -X:用于指定http的动词
# 在路径上使用参数?pretty表示将响应结果进行格式化输出,更加容易读
curl -XGET -i -u elastic:123456  -H ‘Content-Type: application/json‘ ‘http://localhost:9200/_analyze?pretty‘ -d ‘{
  "analyzer" : "ik_max_word",
  "text": "中华人民共和国国歌"
}‘

ES中常用的响应状态码:
200 OK - 一般表示操作成功
404 Not Found - 一般在查询时找不到文档是返回404找不到
201 Created - 一般创建文档成功时返回201已经创建
409 Conflict - 一般创建文档或者更新文档时失败返回冲突


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

问题

在登录kibana,如果用户名和密码不能输入,提示“Login is currently disabled. Administrators should consult the Kibana logs for more details.”

需要重新生成密码, 然后将elstic的用户名和密码配置到kibana.yml中

./bin/x-pack/setup-passwords auto

elasticsearch.username: "elastic"
elasticsearch.password: "<pwd>"


  • 1
  • 2
  • 3
  • 4

安装Logstash

该部分不是必须的,可忽略。

Logstash是一款轻量级的日志搜集处理框架,可以方便的把分散的、多样化的日志搜集起来,并进行自定义的处理,然后传输到指定的位置,比如某个服务器或者文件。能集中处理各种类型的数据,能标准化不同模式和格式的数据,能快速的扩展自定义日志的格式,能非常方便的添加插件来自定义数据源, Logstash采用JRuby开发的,本身也支持插件的功能

ELK:开源分布式日志分析搜索平台

  • E: elasticsearch, 负责数据的存储和查询
  • L: logstash, 负责日志数据的过滤和解析
  • K: Kibana, 负责web方式的前端展现

启动

./logstash -e ‘input { stdin {} } output { stdout {} }’

安装时注意jdk的版本,如果在启动时报已下错误可能是jdk版本低了

NameError: cannot link Java class org.logstash.RubyUtil org/logstash/RubyUtil : Unsupported major.minor version 52.0

input: 用于处理输入的

filter: 用于处理过滤的

output: 用于处理输出的

input {
  file {
    path => ""
    start_position => beginning
  }
}
filter {

}
output {
  elasticsearch {}
  stdout {}
}


  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

分享一个朋友的人工智能教程(请以“右键”->"在新标签页中打开连接”的方式访问)。比较通俗易懂,风趣幽默,感兴趣的朋友可以去看看。

我的微信公众号:

原文地址:https://www.cnblogs.com/lonelyxmas/p/11865838.html

时间: 2024-12-14 17:59:18

Elasticsearch入门教程(一):Elasticsearch及插件安装的相关文章

ElasticSearch入门 第一篇:Windows下安装ElasticSearch

https://www.elastic.co/downloads/past-releases/elasticsearch-2-4-4 这是ElasticSearch 2.4 版本系列的第一篇: ElasticSearch入门 第一篇:Windows下安装ElasticSearch ElasticSearch入门 第二篇:集群配置 ElasticSearch入门 第三篇:索引 ElasticSearch入门 第四篇:使用C#添加和更新文档 ElasticSearch入门 第五篇:使用C#查询文档

Elasticsearch入门教程(二):Elasticsearch核心概念

原文:Elasticsearch入门教程(二):Elasticsearch核心概念 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/79200022 基本概念介绍 Elasticsearch是一个基于Lucene构建的开源.分布式.RESTful的搜索引擎,能够实现近实时(NRT)搜索,稳定.可靠.安装方便.Elasticsearch 不

Elasticsearch入门教程(四):Elasticsearch文档CURD

原文:Elasticsearch入门教程(四):Elasticsearch文档CURD 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/79217590 一: 新增文档POST /{index}/{type} 或 PUT /{index}/{type}/{id} 注意:新增文档时可以显式指定id,id可以是数字也可以是字符串,如果不显示指

Elasticsearch入门教程(五):Elasticsearch查询(一)

原文:Elasticsearch入门教程(五):Elasticsearch查询(一) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/79228852 // 准备数据 PUT /shop/goods/1 { "name": "2017新款女装冬季外套ulzzang棉袄中长款棉衣韩版百搭棉服面包服", &quo

Elasticsearch入门教程(三):Elasticsearch索引&amp;映射

原文:Elasticsearch入门教程(三):Elasticsearch索引&映射 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/79213163 索引概念简介 通常说的索引有两种词性,名称和动词. 动词索引indexing,索引一个文档,表示把一个文档存储到索引Index里,可以用来查询和检索,es采用倒排索引 名词索引index,

Elasticsearch入门教程(六):Elasticsearch查询(二)

原文:Elasticsearch入门教程(六):Elasticsearch查询(二) 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/vbirdbest/article/details/79237950 地理坐标点geo-point 地理坐标点:是指地球表面可以用经纬度描述的一个点. 地理坐标点可以用来计算两个坐标间的距离,还可以判断一个坐标是否在一个区域中,或在聚合中. 地理坐标点不能被

Grunt入门教程之二 —— concat插件

Grunt入门教程之二 Concat插件 concat是grunt中用来做文件连接的常用插件,比如说你写了一个类库,有三大模块,如: a.js b.js c.js 当你的项目准备发布的时候,你可能需要将这三个模块合并成一个大的模块all.js,这样做可以减少HTTP请求,增快页面的响应速度. 如果我们每次发布的时候又要连接这三个模块,并测试all.js,确保大模块无BUG之后再发布,就显得很蛋疼了.一种好的方式是,每当你修改了其中一个小模块,他都会自动连接成all.js,并且你的项目在开发的时候

Android基础入门教程——1.4 Genymotion模拟器安装

Android基础入门教程--1.4 Genymotion模拟器安装 1.本节引言 如果你符合下述三种情况的话,你可以考虑安装一个Genymotion Android模拟器: 没有真机调试,只能用模拟器 嫌SDK内置的AVD启动速度,运行速度慢 电脑配置还可以,最好4G内存以上 如果你满足上述三种情况的话,那么装个比真机还快的Genymotion吧! 官方给出的介绍: 2.去哪里下Genymotion 百度"Genymotion"第一个就是了:Genymotion中文官网 3.下载Ge

Elasticsearch集群管理工具head插件安装

Elasticsearch-head是一个elasticsearch的集群管理工具,它是完全由html5编写的独立网页程序,你可以通过插件把它集成到es.或直接下载源码,在本地打开index.html运行它.该工具的git地址是: https://github.com/Aconex/elasticsearch-head 插件安装方法: 1.elasticsearch/bin/plugin -install Aconex/elasticsearch-head 2.运行ES 3.打开http://l