一、Elasticsearch 是什么
Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎。无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进、性能最好的、功能最全的搜索引擎库。
特点
- 分布式的实时文件存储,每个字段都被索引并可被搜索。
- 分布式的实时分析搜索引擎--做不规则查询
- 可以扩展到上百台服务器,处理PB级结构化或非结构化数据。
Elasticsearch也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。
ES能做什么?
文检索(全部字段)、模糊查询(搜索)、数据分析(提供分析语法,例如聚合)
二、ElasticSearch 使用
- 2.1 准备工作
安装Centos7、建议内存2G以上、安装java1.8环境、安装docker - 2.2 开始安装
1、下载elasticsearch+kibana
docker pull elasticsearch:7.4.2
docker pull kibana:7.4.2
2、安装ElasticSearch
mkdir -p /mydata/elasticsearch/config
mkdir -p /mydata/elasticsearch/data
mkdir -p /mydata/elasticsearch/plugins
echo "http.host:0.0.0.0" >> /mydata/elasticsearch/config/elasticsearch.yml
docker run --name elasticsearch -p 9200:9200 -p 9300:9300 \
-e "discovery.type=single-node" \
-e ES_JAVA_OPTS="-Xms64m -Xmx512m" \
-v /mydata/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml \
-v /mydata/elasticsearch/data:/usr/share/elasticsearch/data \
-v /mydata/elasticsearch/plugins:/usr/share/elasticsearch/plugins \
-d elasticsearch:7.4.2
image.png
注意事项
1分钟之后,docker 中的elasticsearch会停止执行,利用下面命令查看问题日志
docker logs elasticsearch
image.png
原因:
这个错就是参数的冒号前后没有加空格,加了之后就好,我找了好久这个问题;
给elasticsearch.yml写入http.host(注意要符合yml规范,k前一个空格,冒号为赋值,值与冒号也要有一个空格)
echo “http.host:0.0.0.0”>>/mydata/elasticsearch/config/elasticsearch.yml
第二个问题
image.png
权限不够,使用
chmod -R 777 /mydata/elasticsearch/
重新启动,成功!!!
网友评论