目录
1、ElasticSearch简介
ElaticSearch,简称为ES, ES是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。ES也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的Restful Api来隐藏Lucene的复杂性,从而让全文搜索变得简单。
应用例子:
2013年初,GitHub抛弃了Solr,采取ElasticSearch来做PB级的搜索。 “GitHub使用ElasticSearch搜索20TB 的数据,包括13亿文件和1300亿行代码”
维基百科:启动以ElasticSearch为基础的核心搜索架构SoundCloud:“SoundCloud使用ElasticSearch为1.8亿用户提供即时而精准的音乐搜索服务”
百度:百度目前广泛使用ElasticSearch作为文本数据分析,采集百度所有服务器上的各类指标数据及用户自定义数据,通过对各种数据进行多维分析展示,辅助定位分析实例异常或业务层面异常。目前覆盖百度内部20多个业务线(包括 Casio、云分析、网盟、预测、文库、直达号、钱包、风控等),单集群最大100台机 器,200个ES节点,每天导入30TB+数据
新浪使用ES分析处理32亿条实时日志
阿里使用ES构建挖掘自己的日志采集和分析体系
ElasticSearch对比Solr
-
Solr利用 Zookeeper 进行分布式管理,而ElasticSearch自身带有分布式协调管理功能;
-
Solr支持更多格式的数据,而ElasticSearch仅支持Json文件格式;
-
Solr官方提供的功能更多,而ElasticSearch本身更注重于核心功能,高级功能多由第三方插件提供;
-
Solr在传统的搜索应用中表现好于ElasticSearch,但在处理实时搜索应用时效率明显低于ElasticSearch
2、ElasticSearch安装与启动
2.1 安装JDK(自行安装)
2.2 安装启动elasticsearch
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-x86_64.rpm
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-x86_64.rpm.sha512
#需要安装sha命令
yum install perl-Digest-SHA
shasum -a 512 -c elasticsearch-7.8.0-x86_64.rpm.sha512
rpm --install elasticsearch-7.8.0-x86_64.rpm
#安装完成后,可以在/etc/elasticsearch目录下看到相关的配置文件
#编辑 vim /etc/elasticsearch/elasticsearch.yml,增加以下配置
#如果该elasticsearch做过集群配置,需要先删除data数据,否则记录下集群信息后不能部署单机
path.data: /var/lib/elasticsearch
#日志路径
path.logs: /var/log/elasticsearch
# 是否支持跨域
http.cors.enabled: true
# *表示支持所有域名
http.cors.allow-origin: "*"
#节点名称(必须配)
node.name: node-1
#DNS路由,提供外网访问,也可以为本机IP
network.host: 0.0.0.0
#启动全新的集群时需要此参数(单机也得配置),再次重新启动此参数可免
cluster.initial_master_nodes: ["node-1"]
#配置开机启动
systemctl daemon-reload
systemctl enable elasticsearch.service
#如果不能用root启动,增加一个新账号(老版本可能有该问题)
groupadd es
useradd es -g es -p es
chown -R es:es /es目录
su es
#启动
systemctl start elasticsearch
#测试是否安装成功,使用127.0.0.1不行
curl http://192.168.223.128:9200
#看到如下信息标识安装成功
[root@ydt elasticsearch]# curl http://192.168.223.128:9200
{
"name" : "ydt",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "a-m51u-AQ6m-PaEJfwqTfg",
"version" : {
"number" : "7.8.0",
"build_flavor" : "default",
"build_type" : "rpm",
"build_hash" : "757314695644ea9a1dc2fecd26d1a43856725e65",
"build_date" : "2020-06-14T19:35:50.234439Z",
"build_snapshot" : false,
"lucene_version" : "8.5.1",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
#也可以通过命令查看启动状态
[root@ydt elasticsearch-head]# systemctl status elasticsearch
● elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; disabled; vendor preset: disabled)
Active: active (running) since 三 2020-07-08 17:09:00 CST; 16min ago
Docs: https

最低0.47元/天 解锁文章
5484

被折叠的 条评论
为什么被折叠?



