一、什么是ELK?
Elasticsearch官网中提供了很多技术,其中一些技术是可以配合使用的,里面比较出名的就是ELK技术栈。
ELK是Elasticsearch、Logstash、Kibana三个软件首字母.
- Elasticsearch(es):通过搭建集群,存储日志数据,索引日志数据
- Logstash:收集日志,收集到了后给es存储
- Kibana:视图形式展现日志信息,更加人性化
二、Elasticsearch简介
Elasticsearch是一个基于Luceme的搜索服务器,他提供了一个分布式的全文搜索引擎,其对外服务是基于RESTful web接口发布的.Elasticsearch是用Java开发的应用,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎,设计用于云计算中,能够达到近实时搜索,稳定,可靠快速,安装使用方便.
1、功能分类
Elasticsearch具备两个功能:
搜索功能和olr类似,代替目前(海量数据)的mysql模糊查询
分析 结合logStash的使用
2、相关概念
(1)Cluster集群,ES是一个分布式的系统
集群,Elasticsearch集群由一个或多个节点组成,其中有一个主节点,这个主节点是可以通过选举产生的,主节点是对于集群内部来说的,Elasticsearch的一个概念就是去中心化,字面上理解就是无中心节点,这是对于集群外部来说的,因为从外部看Elasticsearch集群,在逻辑上是一个整体,你与集群中的任何一个节点通信和与整个Elasticsearch集群通信是等价的,也就是数,主节点的存在不会产生单点安全隐患,并发访问瓶颈等问题.
(2)index索引
索引,相当于关系型数据库中的表,其中存储若干个相似结构的Document数据,如:客户索引,订单索引,商品索引等.Elasticsearch中的索引不像数据库表格一样有强制的数据