Elasticsearch 是一个开源的搜索引擎,建立在一个全文搜索引擎库 Apache Lucene™ 基础之上。 Lucene 可以说是当下最先进、高性能、全功能的搜索引擎库—无论是开源还是私有。
但是 Lucene 仅仅只是一个库。为了充分发挥其功能,你需要使用 Java 并将 Lucene 直接集成到应用程序中。 更糟糕的是,您可能需要获得信息检索学位才能了解其工作原理。Lucene 非常 复杂。
Elasticsearch 也是使用 Java 编写的,它的内部使用 Lucene 做索引与搜索,但是它的目的是使全文检索变得简单, 通过隐藏 Lucene 的复杂性,取而代之的提供一套简单一致的 RESTful API。
然而,Elasticsearch 不仅仅是 Lucene,并且也不仅仅只是一个全文搜索引擎。 它可以被下面这样准确的形容:
- 一个分布式的实时文档存储,每个字段 可以被索引与搜索
- 一个分布式实时分析搜索引擎
- 能胜任上百个服务节点的扩展,并支持 PB 级别的结构化或者非结构化数据
官方文档地址:https://www.elastic.co/guide/en/elasticsearch/reference/8.6/getting-started.html
最新版本下载地址:https://www.elastic.co/cn/downloads/elasticsearch
本文的下载版本为:elasticsearch-8.6.2-linux-x86_64.tar.gz (8.6.2)
解压后的目录如下:
建议更改配置目录、数据目录和日志目录的默认位置 这些配置都在 elasticsearch.yml 中。
./bin/elasticsearch
首次启动 Elasticsearch 时,默认情况下会启用和配置安全功能。以下配置会自动生成:
以上生成的内容大概如下:
The generated password for the elastic built-in superuser is:
The enrollment token for Kibana instances, valid for the next 30 minutes:
The hex-encoded SHA-256 fingerprint of the generated HTTPS CA DER-encoded certificate:
You can complete the following actions at any time:
Reset the password of the elastic built-in superuser with
'bin/elasticsearch-reset-password -u elastic'.Generate an enrollment token for Kibana instances with
'bin/elasticsearch-create-enrollment-token -s kibana'.Generate an enrollment token for Elasticsearch nodes with
'bin/elasticsearch-create-enrollment-token -s node'.
示例图
注:elastic 的密码最好保存一下,我们接下来就会使用
直接在本地通过curl命令访问
curl --cacert /DATA/soft/es/elasticsearch-8.6.2/config/certs/http_ca.crt -u elastic https://localhost:9200
执行后输入 elastic 账号的密码,返回如下内容
{"name" : "cspl-dev","cluster_name" : "elasticsearch","cluster_uuid" : "iozzv0S0Q6mKwgNnfAA8Xw","version" : {"number" : "8.6.2","build_flavor" : "default","build_type" : "tar","build_hash" : "2d58d0f136141f03239816a4e360a8d17b6d8f29","build_date" : "2023-02-13T09:35:20.314882762Z","build_snapshot" : false,"lucene_version" : "9.4.2","minimum_wire_compatibility_version" : "7.17.0","minimum_index_compatibility_version" : "7.0.0"},"tagline" : "You Know, for Search"
}
我们也可以通过浏览器输入账号密码后直接访问
至此,单机安装并启动es就完成了。不过此启动方式是前台运行方式,使用Ctrl + C 即可关闭。
./bin/elasticsearch -d -p pid
pkill -F pid
注:因 pid 文件生成在 $ES_HOME 目录下,所以请在 $ES_HOME 目录下执行该命令
安装 Elasticsearch 时,会在 Elasticsearch 配置目录中生成以下证书和密钥,用于将 Kibana 实例连接到安全的 Elasticsearch 集群并加密节点间通信。
检索 http.p12
bin/elasticsearch-keystore show xpack.security.http.ssl.keystore.secure_password
检索 transport.p12
bin/elasticsearch-keystore show xpack.security.transport.ssl.keystore.secure_password