您所在的位置:一氧化碳中毒 >> 病种百科>> >> elk的简单搭建

elk的简单搭建

文章来源:一氧化碳中毒   发布时间:2021-5-29 22:43:34   点击数:
  完整的集中式日志系统:

需要包含以下几个主要特:

收集-能够采集多种来源的日志数据

传输-能够稳定的把日志数据传输到中央系统

存储-如何存储日志数据

分析-可以支持UI分析

警告-能够提供错误报告,监控机制

一、概念:1.1Elasticsearch:

定义:是一个基于Lucene的搜索服务器,开源分布式搜索引擎,提供搜集、分析、存储数据三大功能。特点:1)分布式、零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,数据源,自动搜索负载等。2)高性能(集群的概念):支持一主多从且扩容简易,只要cluster.name一致且在同一个网络中就能自动加入当前集群。3)高可用:在一个集群的多个节点中进行分布式存储,索引支持shards(分片)和复制,即使部分节点down掉,也能自动进行数据恢复和主从切换4)倒排索引1.2Logstash:

主要是用来日志的搜集、分析、过滤日志的工具,支持大量的数据获取方式。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。由于Logstash是跑在JVM上面,资源消耗比较大。Logstash由input、filter和output三部分组成,input负责从数据源提取数据,filter负责解析、处理数据,output负责输出数据,每部分都有提供丰富的插件。可以非常详细的将日志转化为各种图表,为用户提供强大的数据可视化支持grok:过滤器插件是Logstash中默认可用的几个插件之一,grok过滤器插件允许你将非结构化日志数据解析为结构化和可查询的数据。1.3Kibana:

Kibana可以为Logstash和ElasticSearch提供的日志分析友好的Web界面,可以非常详细地将日志转换为各种图表,帮助汇总、分析和搜索重要数据日志。1.4Filebeat隶属于Beats:

一、定义:新增了一个FileBeat,它是一个轻量级的日志收集处理工具(Agent),Filebeat占用资源少,适合于在各个服务器上搜集日志后传输给Logstash,官方也推荐此工具。基于原先Logstash-fowarder的源码改造出来。换句话说:Filebeat就是新版的Logstash-fowarder,也会是ELKStack在shipper端的第一选择。Filebeat:ELK协议栈的新成员,一个轻量级开源日志文件数据搜集器,基于Logstash-Forwarder源代码开发,是对它的替代。在需要采集日志数据的server上安装Filebeat,并指定日志目录或日志文件后,Filebeat就能读取数据,迅速发送到Logstash进行解析,亦或直接发送到Elasticsearch进行集中式存储和分析。二、目前Beats包含四种工具:Packetbeat(搜集网络流量数据)Topbeat(搜集系统、进程和文件系统级别的CPU和内存使用情况等数据)Filebeat(搜集文件数据)Winlogbeat(搜集Windows事件日志数据)1.5Kafka:

数据缓冲队列,作为消息队列解耦了处理过程,同时提高了可扩展性。具有峰值处理能力,使用消息队列能够使关键组件顶住突发的访问压力,而不会因为突发的超负荷的请求而完全崩溃。1)发布和订阅记录流,类似于消息队列或企业消息传到系统;2)以容错持久的方式存储记录流;3)处理记录发生的流。二、架构:

//1.日志文件.log——logstash(日志收集)——elasticsearch(存储和搜索)——kibana(可视化和生成报表)//2.以Beats作为日志搜集器日志文件.log——betes(日志收集)——logstash(日志过滤)——elasticsearch(存储和搜索)——kibana(可视化和生成报表)优点:架构解决了Logstash在各服务器节点上占用系统资源高的问题。Beats和Logstash之间支持SSL/TLS加密传输,客户端和服务器双向认证,保证了通信安全。//3.引入消息队列模式:日志文件.log——logstash(日志收集,不处理)——kafka、redis、rabbitMQ——logstash(日志过滤)——elasticsearch(存储和搜索)——kibana(可视化和生成报表)模式特点:这种架构适合于日志规模比较庞大的情况。但由于Logstash日志解析点和Elasticsearch的负荷比较重,可将他们配置为集群模式,以分担负荷。引入消息队列,均衡了网络传输,从而降低了网络闭塞,尤其是丢失数据的可能性,但依然存在Logstash占用系统资源过多的问题工作流程:Filebeat采集—logstash转发到kafka—logstash处理从kafka缓存的数据进行分析—输出到es—显示在kibana三、linux下搭建ELK:(7.5.1版本)3.1、准备工作:

一、关闭防火墙和selinux:1)systemctlstopfirewalld//停止systemctldisablefirewalld//禁止开机自启2)关闭selinux:(selinux是美国国家安全局(NSA)对于强制访问控制的实现,是Linux历史上最杰出的新安全子系统。)临时生效:setenforce0永久生效:#更改setlinux级别sed-is/SELINUX=enforcing/\SELINUX=permissive//etc/selinux/config==vim/etc/selinux/config/--SELINUX=enforcing[效果同上](SELINUX参数enforcing代表打开,disabled代表关闭)#查看selinux状态:getenforce二、配置yum源:cd/etc/yum.repos.d/wget

转载请注明:http://www.lwblm.com/bzbk/11964.html
  • 上一篇文章:
  • 下一篇文章: 没有了