暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Elasticsearch系列(1):安装与介绍

我真的不会Java啊 2021-06-23
419

简介

Elasticsearch是一个基于Lucene构建的开源搜索引擎,简称ES。它是使用Java语言开发的,并提供了简单易用的RestFul API,是一种流行的企业级搜索引擎。

Elasticsearch的术语

Elasticsearch与MySQL概念上的类比如下表:

MySQLElasticsearch
TableIndex(Type)
RowDocument
ColumnField
SchemaMapping

「Index(索引)」:一个索引是拥有几分相似特征的文档的集合,类似于MySQL中的Table。

Type(类型):类型是索引中的一个逻辑上的分类或分区,Type的概念已经被逐渐弱化,在Elasticsearch 7.X中,Type的概念已经被删除。

「Document(文档)」:一个文档是一个可被索引的基础信息单元,类似表中的一条记录。

「Field(字段)」:类似于表中的列。

「Mapping(映射)」:类似于MySQL中表的schema。

Elasticsearch安装

安装

下载:

cd opt/
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.12.1-linux-x86_64.tar.gz

解压:

tar -zxvf elasticsearch-7.12.1-linux-x86_64.tar.gz

创建用户

Elasticsearch不允许使用root用户启动,所以需要创建用户并将Elasticsearch目录的拥有者设置为创建的新用户:

useradd es
passwd es
chown -R es:es opt/elasticsearch-7.12.1

修改配置

1.修改conf/elasticsearch.yml,添加配置:

cluster.name: elasticsearch
node.name: node-1
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["node-1"]

「cluster.name」:集群名称,默认为elasticsearch。

「node.name」:节点名称。

「network.host」:此处配置es服务可以被任何机器访问。

「http.port」:HTTP端口。

「cluster.initial_master_nodes」:使用一组初始的符合主节点的节点引导集群,当第一次启动Elasticsearch集群时,集群引导步骤将确定在第一次选举中计票的符合主资格的节点集。

2.修改/etc/security/limits.conf,添加配置:

es soft nofile 65536
es hard nofile 65536

3.修改/etc/security/limits.d/20-nproc.conf,添加配置:

es soft nofile 65536
es hard nofile 65536
* hard nproc 4096

4.修改/etc/sysctl.conf,添加配置:

vm.max_map_count=655360

5.退出重新登录新用户。

启动Elasticsearch

前台启动:

/opt/elasticsearch-7.12.1/bin/elasticsearch

后台启动:

/opt/elasticsearch-7.12.1/bin/elasticsearch -d

访问localhost:9200,如果返回结果如下则表示启动成功:

{
  "name" : "node-1",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "K5zjHV0LTQ6fCB-f_klulw",
  "version" : {
    "number" : "7.12.1",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "3186837139b9c6b6d23c3200870651f10d3343b7",
    "build_date" : "2021-04-20T20:56:39.040728659Z",
    "build_snapshot" : false,
    "lucene_version" : "8.8.0",
    "minimum_wire_compatibility_version" : "6.8.0",
    "minimum_index_compatibility_version" : "6.0.0-beta1"
  },
  "tagline" : "You Know, for Search"
}

Elasticsearch目录介绍

「bin」:可执行脚本目录。

「config」:配置文件目录。

「data」:分配在节点上的每个索引/分片的数据文件的位置。

「logs」:日志文件目录。

「plugins」:插件文件目录。

「lib」:类库。

「jdk」:内置JDK目录。如果配置了环境变量JAVA_HOME,则Elasticsearch启动时会使用JAVA_HOME作为Java路径,否则使用Elasticsearch根目录下内置的JDK目录作为Java路径。

「modules」:模块目录。


文章转载自我真的不会Java啊,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论