光环大数据 中小型研发团队架构实践之集中式日志ELK

编辑:光环大数据 来源: 时间: 2017-12-15 17:16 阅读:

光环大数据(大数据培训班的专业机构),日志可分为系统日志、应用日志以及业务日志,系统日志给运维人员使用,应用日志给研发人员使用,业务日志给业务操作人员使用。我们这里主要讲解应用日志,通过应用日志来了解应用的信息和状态,以及分析应用错误发生 ...

管理 Hadoop 架构 分布式 Shell

一、集中式日志日志可分为系统日志、应用日志以及业务日志,系统日志给运维人员使用,应用日志给研发人员使用,业务日志给业务操作人员使用。我们这里主要讲解应用日志,通过应用日志来了解应用的信息和状态,以及分析应用错误发生的原因等。
随着系统的日益复杂,大数据时代的来临,需要几十甚至上百台的服务器是常有的事,因此迫切需要有一套针对日志、且能够集中式管理的产品。ELK 就实现了集中式日志管理平台,该平台统一涵盖了分布式日志收集、检索、统计、分析以及对日志信息的 Web 管理等集中化管控。
1.1、ELK 简介ELK 是 Elasticsearch、Logstash、Kibana 的简称,这三套开源工具组合起来能搭建一套强大的集中式日志管理平台。Elasticsearch 是个开源的分布式搜索引擎,提供搜索、分析、存储数据三大功能。它的特点有:分布式、自动发现、索引自动分片、索引副本机制、RESTful 风格接口、多数据源以及自动搜索负载等。
Logstash 是一个开源的用来收集、解析、过滤日志的工具。支持几乎任何类型的日志,包括系统日志、业务日志和安全日志。它可以从许多来源接收日志,这些来源主要包括 Syslog、消息传递(例如 RabbitMQ)和 Filebeat;能够以多种方式输出数据,这些方式主要包括电子邮件、WebSockets 和 Elasticsearch。
Kibana 是一个基于 Web 的友好图形界面,用于搜索、分析和可视化存储在 Elasticsearch 中的数据。它利用 Elasticsearch 的 RESTful 接口来检索数据,不仅允许用户定制仪表板视图,还允许他们以特殊的方式查询、汇总和过滤数据。
1.2、ELK 的架构下图是集中式日志管理 ELK 的架构图。出于性能的考虑,选择采用了 Beats+EK 的形式来组合搭建集中式日志管理系统。

 

ELK 架构二、配置方法2.1、ElasticsearchElasticsearch 部署完成后,需要更改 elasticsearch.yml 配置文件中的主要属性:cluster.name、node.name、network.host、discovery.zen.ping.unicast.hosts。其中,当部署 Elasticsearch 时是以集群模式部署的,那么 discovery.zen.ping.unicast.hosts 这个属性才会需要被配置。
2.2、Logstash通过配置 filebeat-pipeline.conf 文件中的 Input、Filter(可选)和 Output 来完成对数据的采集、过滤和输出,如下图所示:

 

Logstash 配置然后以 filebeat-pipline.conf 文件启用 Logstash 服务,如下图所示:

 

启用 Logstash 服务备注:由于采用的是 Beats+EK 这个方案来实现集中式日志管理,所以不需要配 Logstash。
2.3、Kibana通过更改 kibana.yml 配置文件内容,用来连接正确的 Elasticsearch 服务地址,通常只需要配置 elasticsearch.url 属性即可,请见下图的第一个图。配置完成后,执行【bin/kibana &】命令启用 Kibana 服务,请见下图的第二个图。最后就可以在浏览器中打开 Kibana 管理页面(访问地址:http://139.198.13.12:4800/)来查看日志。

 

Kibana 的配置说明

 

启用 Kibana 服务
2.4、Filebeatfilebeat.yml 配置文件内容主要包含 Filebeat、Output、Shipper(可选)、Logging(可选)四大部分,其中 Filebeat 主要定义监控的日志文件信息,Output 主要配置日志数据的输出目标。
filebeat.yml 文件中,主要属性值的命名规范如下:1、fields.AppID 的命名规范是{AppID}。2、fields.AppName 的命名规范是{产品线英文名称}.{项目英文名称}(如果项目英文名称由 2 个或 2 个以上英文单词组成,则单词之间请用. 分隔)。3、针对 index 属性需要注意的是:索引 (index) 所定义的值是{产品线英文名称},但英文字母必须全部小写,且不能以下划线开头,也不能包含逗号。filebeat.yml 的配置示例如下图所示:

 

filebeat.yml 的配置示例日志文件存放在哪台服务器中,filebeat 服务就部署在哪台服务器中。在 windows 操作系统上启用 filebeat 服务的步骤:
1、在 windows 下开启搜索,输入 powershell,打开 powershell 所在文件位置,右键 powershell.exe 以管理员身份运行,进入 PowerShell 窗口。或者以管理员身份启动 cmd.exe,输入命令 powershell,进入 PowerShell 窗口 。
注意:请务必确保以管理员身份打开 PowerShell 窗口,否则的话在以下第 2 步中运行.ps1 脚本时,就会报没有权限创建 filebeat 服务的错误:

 

2、导向到 filebeat 执行程序所在目录,例如:cd 'E:/ELK/filebeat-1.3.0-windows',然后执行命令:powershell.exe -ExecutionPolicy UnRestricted -File ./install-service-filebeat.ps1。
3、之后可以在 PowerShell 窗口中通过以下几个命令来查看、启用以及停止 filebeat 服务:查看 filebeat 服务状态:Get-Service filebeat启动 filebeat 服务:Start-Service filebeat停止 filebeat 服务:Stop-Service filebeat
三、使用方法3.1、Log4Net 本地日志1、日志存放路径规范:{盘符}:/Log4Net{AppID}/,其中 AppID 即为我们所做项目的六位编码。例如:D:/Log4Net/110107/。2、log4net.config 配置内容:     

                                                                                                                                                    注意了:maximumFileSize 设置为 100MB;请给 countDirection 设置为大于 -1 的整数;maxSizeRollBackups 设置为 100。日志文件内容规范:日志文件中的每条日志内容要求是“记录时间 线程 日志级别 出错类 日志消息”。
3.2、日志查询基于 Kibana 查询日志(访问地址:http://139.198.13.12:4800/),主要通过以下几个步骤实现:1、选择业务索引库。2、选择日期范围。3、输入待查找的内容实现较精确查询,也可以通过输入 * 实现模糊查询。4、点击每条日志的展开图标,可以查看该条日志的详细信息。5、在 Kibana 界面的左侧区域,自上而下依次是索引库选择框、选中字段集合列表(Selected Fields)、可用字段集合列表(Available Fields)。通过添加可用字段到选中字段集合列表中来改变 Kibana 右侧的日志表格呈现。

 

     大数据时代,大数据培训机构,就选光环大数据!

   原创文章,转载请注明出处:光环大数据官网。


大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服

你可能也喜欢这些

在线客服咨询

领取资料

X
立即免费领取

请准确填写您的信息

点击领取
#第三方统计代码(模版变量) '); })();
'); })();