2017 12-01 ELK的应用

2022-01-25 00:00:00 修改 数据 集群 节点 是一个

一.搜索引擎的介绍

(1)索引组件:获取数据-->建立文档-->文档分析-->文档索引(倒排索引) (2)搜索组件:用户搜索接口-->建立查询(将用户键入的信息转换为可处理的查询对象)-->搜索查询-->展现结果 索引组件:Lucene(apache 旗下的产品) Lucene Core:Apache Lucene™ 是一个高性能,全功能的文本搜索引擎库,全部由Java编写。其技术上几乎适合任何需要全文搜索的应用程序,尤其是对跨平台的应用。 (3)搜索组件:Solr, ElasticSearch(基于Lucene core来工作的搜索组件)

  • Solr(企业级搜索应用服务器):是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常的全文搜索引擎。
  • ElasticSearch: 是一个分布式的 RESTful 风格的搜索和数据分析引擎,能够解决不断涌现出的各种用例。作为 Elastic Stack 的核心,它集中存储数据,可以发现意料之中以及意料之外的情况。

二.Elastic Stack

(1)ELK的组成

1.ElasticSearch 2.Logstash: Logstash 是开源的服务器端数据处理管道,能够同时 从多个来源采集数据、转换数据,然后将数据发送到指定的的 “存储库” 中。 3.Kibana: Kibana 让您能够可视化 Elasticsearch 中的数据并操作 Elastic Stack,因此您可以在这里解开任何疑问。 4.Beats: 平台集合了多种单一用途数据采集器。这些采集器安装后可用作轻量型代理,从成百上千或成千上万台机器向 Logstash 或 Elasticsearch 发送数据。

(2)ELS集群的工作逻辑

1.多播,单播:9300(集群端口)/tcp,服务器端口:9200 2.关键因素:clustername 所有的节点选举一个主节点,负责管理整个集群状态以及各shards(切片,默认切为5个分片)的分布式方式 三种状态:green yellow red green:健康状态,所有主副切片都存在 Yellow:缺少某些切片,但是可以恢复 red:缺少某些切片,并且不可恢复

3.实验:创建一个小的集群 步骤: (1)配置三个节点并安装ES,官方下载地址:www.elastic.co选择download——选择rpm包进行下载 因为该搜索引擎是基于java语言开发的所以要安装jvm yum install java-1.8.0-openjdk-devel,其他两个节点做相同操作 (2)创建新的目录 mkdir -pv /els/{data,logs} chown -R /els/* (3)修改配置文件 vim /etc/elasticsearch/elasticsearch.yml 修改如下

cluster.name: myels1
node.name: node1
path.data: /els/data
path.logs: /els/logs
network.host: 172.18.254.242
http.port: 9200
discovery.zen.ping.unicast.hosts: ["node1", "node3","node4"]
discovery.zen.minimum_master_nodes: 2——选举机制防止脑裂,同意机制必须超过半数

相关文章