Juconcurrent 学而不思则罔,思而不学则殆。

Elasticsearch学习笔记(01) - 安装及简单配置


前言

Elasticsearch是一个搜索引擎,但又不仅仅是简单的搜索引擎。它支持大数据量的模糊搜索,TB甚至PB也不在话下。而其技术支持的商业公司Elastic更推出了很多的开源或闭源的产品,结合这些产品,我们可以将Elasticsearch应用于非常多的场景。如日志分析、数据分析、报表渲染、模糊匹配等等。Elasticsearch底层基于Lucene,在其之上增加了水平扩展、集群的支持,这样更能应对大数据量和线上的高吞吐和低延迟场景。国内国外的很多知名的公司,也都在使用Elasticsearch来支撑其业务功能。生态非常丰富,相关的技术文档和学习书籍也很多。

因此,楼主认为Elasticsearch是非常值得学习的一门技术。为了更全面和系统地学习并理解Elasticsearch,楼主特意在极客时间上购买了阮一鸣老师的视频课程 - 《Elasticsearch核心技术与实战》。希望将学习过程中的心得和笔记进行总结,使自己得以提升,也希望能帮助到更多有志于了解Elasticsearch的同学。

下载和安装

Elasticsearch官网,有各种系统的安装文档,包括Linux、Windows和Mac OS。因为楼主是Windows系统,所以通过以下链接来下载。

https://www.elastic.co/guide/en/elasticsearch/reference/current/zip-windows.html

在Windows下,安装包其实是一个zip包,我们解压缩之后,看到很多的目录,从字面意思上,我们很容易读懂其意思。

目录名 说明
bin 脚本文件,包括启动脚本、安装插件脚本等
config 配置文件,如elasticsearch.yml、jvm.options
jdk java运行环境
data 数据文件
lib java类库
logs 日志文件
modules es的模块
plugins 下载并安装的插件

config目录下比较重要的配置包括:

  1. jvm.options,JVM配置,可设置jvm参数
  2. elasticsearch.yml,可用于elasticsearch框架的配置
  3. log4j2.properties,可用于设置日志文件的信息

在Windows下Elasticsearch的启动命令为:bin/elasticsearch.bat。启动之后,如果要检查是否已启动,可访问 http://localhost:9200/ 来查看返回信息。正常情况下返回类似如下的信息:

{
  "name" : "PC-201811072055",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "0IzcUNlZRCqEVhw6MuVZ6w",
  "version" : {
    "number" : "7.2.0",
    "build_flavor" : "default",
    "build_type" : "zip",
    "build_hash" : "508c38a",
    "build_date" : "2019-06-20T15:54:18.811730Z",
    "build_snapshot" : false,
    "lucene_version" : "8.0.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

安装插件

一般使用elasticsearch-plugin.bat来安装插件。

  1. bin/elasticsearch-plugin.bat list – 查看已安装的插件
  2. bin/elasticsearch-plugin.bat install $xxxPluginName – 安装插件

通过查看官网的文章,我们可以看到一些插件,cat-plugins.html。以analysis-icu插件为例,安装的命令为:bin/elasticsearch-plugin.bat install analysis-icu。安装完成之后,我们重启Elasticsearch,在浏览器通过访问以下url来查看插件的安装情况。

http://localhost:9200/_cat/plugins

单机运行多实例

默认的Elasticsearch是以单实例的方式运行的,集群名称为elasticsearch。如果想单机运行多实例,可在启动脚本后跟上更多的配置参数来实现。

bin/elasticsearch.bat -E node.name=node0 -E cluster.name=clusterName -E path.data=node0_data -d
bin/elasticsearch.bat -E node.name=node1 -E cluster.name=clusterName -E path.data=node1_data -d
bin/elasticsearch.bat -E node.name=node2 -E cluster.name=clusterName -E path.data=node2_data -d
bin/elasticsearch.bat -E node.name=node3 -E cluster.name=clusterName -E path.data=node3_data -d

在这个例子中,我们启动了4个实例,他们同属一个名叫clusterName的集群,节点名为node0到node4,数据路径位于node0_data到node1_data。

我们可通过访问 http://localhost:9200/_cat/nodes,来查看集群下的所有实例列表。

总结

我们简单地了解了Elasticsearch的下载和安装,以及插件的安装,最后我们也了解了如何在单机部署多实例。


Content