wordpress网站源码分享,网站建设咨询公司推荐,refile自己做的网站,桂城网站建设作者#xff1a;无敌码农 来源#xff1a;无敌码农今天的文章给大家介绍下Elasticsearch这一目前在“搜索”和“分析”领域使用十分广泛的技术组件。并演示如何快速构建一个Elasticsearch集群。Elasticsearch概述Elasticsearch是一款非常强大的开源“搜索”及“分析”引擎。除… 作者无敌码农 来源无敌码农今天的文章给大家介绍下Elasticsearch这一目前在“搜索”和“分析”领域使用十分广泛的技术组件。并演示如何快速构建一个Elasticsearch集群。Elasticsearch概述Elasticsearch是一款非常强大的开源“搜索”及“分析”引擎。除了搜索结合Kibana、Logstash、Beats以及Elastic Stack的技术生态Elasticsearch还被广泛运用在大数据实时分析领域——包括日志分析ELK、指标监控、信息安全等领域。Elasticsearch起源于开源搜索引擎类库LuceneElasticsearch的创始人Shay Banon于2004年基于Lucene开发了“Compass”并在2010年重写“Compass”项目之后将其正式命名为“Elasticsearch”。目前在搜索引擎分类排名中Elasticsearch名列第一除此之外同类的产品还有SolorApache开源项目和Splunk商业项目它们三者提供的功能非常相似。但是在程序员开源社区中Elasticsearch的活跃度最高。Elasticsearch的功能特性Elasticsearchs是一种典型的分布式系统支持水平扩展。当数据规模变大的时候Elasticsearch的集群节点可以从单个扩展到数百个。Elasticsearch集群还支持设置不同的节点类型。例如针对日志类的应用可以支持HotWarm架构——冷热架构部署。Elasticsearch的分布式架构如下图所示除此之外Elasticsearch还支持多种方式集成接入。例如可以被多种语言方便的集成Java、.Net、Python、PHP..灵活的RESTful API最新版本甚至还支持JDBCODBC方式的接入。Elastic Stack家族成员Elasticsearch之所以如此流行处理活跃的社区外很重要的一点就在于其背后还有一个强大的商业公司——Elastic在支撑。Elastic Stack的生态圈如下图所示接下来分别介绍下Elastic Stack各技术组件的用途具体如下Logstash开源的服务器端数据处理管道支持从不同来源采集数据转换数据并将数据发送到不同的存储库中。2013年被Elasticsearch收购。Logstash支持实时解析和转换数据例如从IP地址破译出地理坐标以及将PII数据匿名化完全排除敏感字段等。此外Logstash还支持插件的扩展方式目前大约有200多个插件可以解决日志、数据库等多种场景的实际需求。另外Logstash的可靠性及安全性也很高。Logstash会通过持久化队列来保证至少将运行中的事件送达一次以及支持数据传输加密。Kibana基于Logstash的数据可视化分析工具。Beats轻量的数据采集器Go语言开发运行速度非常快。场景的Beats插件有Filebeat日志文件插件、Packetbeat、Heartbeat等。X-Pack(商业化套件-已开源)X-Pack开源之后部分X-Pack功能支持免费使用例如6.8和7.1版本开始Security功能可以免费使用。Elastic Stack应用场景Elastic Stack技术栈常见的应用场景如下(1)下载Kibana安装包命令如下$ wget https://artifacts.elastic.co/downloads/kibana/kibana-7.14.0-darwin-x86_64.tar.gz下载最新的7.14.0版本的MacOS二进制安装包。之后解压下载的安装包命令如下$ tar zxvf kibana-7.14.0-darwin-x86_64.tar.gz(2)编辑conf/kibana.yaml文件指定elasticsearch集群实例的地址编辑配置文件指定Elasticsearch的集群地址修改的内容如下# The URLs of the Elasticsearch instances to use for all your queries.
elasticsearch.hosts: [http://localhost:9204,http://localhost:9201,http://localhost:9203](3)启动Kibana,命令如下$ ./bin/kibana此时打开浏览器进入Kibana的首页如下图所示如上图所示可以向Elasticsearch集群中添加Kibana提供的样例数据。(4)使用Kibana的“Dev Tools”工具Kibana的“Dev Tools”工具能够帮助我们很方便执行一些elasticsearch的API。如下图所示具体的查询命令如下#执行查询集群节点状态的API。
get /_cat/nodes/?v
后记Elasticsearch目前使用的非常广泛本文只是简单介绍了Elasticsearch的基本情况并简单搭建了一个Elasticsearch的多实例集群。在后面的文章中作者将不定期分享一些Elasticsearch的知识及实践。可以保持关注哦往期推荐被算法“监控”的打工人实属不易写给小白的云计算入门科普时序数据库永远的难关为了一个HTTP浏览器操碎了心…点分享点收藏点点赞点在看