ELK(,Logstash,Kibana)搭建实时日志分析平台(开源实时日志分析ELK平台部署)
日志主要包括系统日志、应用程序日志和安全日志。系统运维和开发人员可以通过日志了解服务器软硬件信息、检查配置过程中的错误及错误发生的原因。经常分析日志可以了解服务器的负荷,性能安全性,从而及时采取措施纠正错误。
通常,日志被分散的储存不同的设备上。如果你管理数十上百台服务器,你还在使用依次登录每台机器的传统方法查阅日志。这样是不是感觉很繁琐和效率低下。当务之急我们使用集中化的日志管理,例如:开源的syslog,将所有服务器上的日志收集汇总。
集中化管理日志后,日志的统计和检索又成为一件比较麻烦的事情,一般我们使用grep、awk和wc等Linux命令能实现检索和统计,但是对于要求更高的查询、排序和统计等要求和庞大的机器数量依然使用这样的方法难免有点力不从心。
开源实时日志分析ELK平台能够完美的解决我们上述的问题,ELK由、Logstash和Kiabana三个开源工具组成。官方网站:
85是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。
85Logstash是一个完全开源的工具,他可以对你的日志进行收集、分析,并将其存储供以后使用(如,搜索)。
85kibana也是一个开源和免费的工具,他Kibana可以为Logstash和提供的日志分析友好的Web界面,可以帮助您汇总、分析和搜索重要数据日志。工作原理如下所示:
在需要收集日志的所有服务上部署logstash,作为logstashagent(logstashshipper)用于监控并过滤收集日志,将过滤后的内容发送到logstashindexer,logstashindexer将日志收集在一起交给全文搜索服务,可以用进行自定义搜索通过Kibana来结合自定义搜索进行页面展示。
四大组件:
Logstash:logstashserver端用来搜集日志;
:存储各类日志;
Kibana:web化接口用作查寻和可视化日志;
LogstashForwarder:logstashclient端用来通过lumberjack网络协议发送日志到logstashserver;
通过Cisco路由器的Syslog服务转发系统日志到采集服务器,具体配置方法如下:device#conf t
device(config)#logging on
device(config)#logging IP //日志服务器的IP地址
device(config)#logging trap critical //日志记录级别,可用""查看详细内容
device(config)#logging source-interface f0/1 //日志发出用的源IP地址(f0/1为发出日志的端口,使用哪个端口由实际情况决定)
device(config)#service timestamps log datetime localtime //日志记录的时间戳设置
检验
device#sh logging
保存配置
device#copy runningconfigure startingconfigure
方法/步骤:
1 首先根据自己的windows系统的版本(32/64位),在网上下载相应的版本。我的系统为64位版本,因此下载64位版本;
2 然后将下载后的软件内的两个文件evtsysdll和evtsysexe,拷贝到系统内c:\windows\system32目录下;
3 这一步找到命令提示符,右击选择以管理员身份运行。详细 *** 作如下图所示;
4 在 *** 作窗口内,首先输入cd c:\windows\system32 命令进入 c:\windows\system32目录下,然后执行命令evtsys –i –h 1921682104 。下面详细介绍evtsys命令参数意思。
-i 表示安装成系统服务
-h 指定log服务器的IP地址
如要设置端口,在IP地址后加上自己要设置的端口就可以了。ip地址与端口之间要有空格隔开。默认不写端口为514端口。
执行完以上命令后,evtsys已经安装成功,且已经成功注册到服务列表。
5 在开始->运行 输入 gpeditmsc。进入windows本地组策略编辑器,在该窗口内,选择Windows设置->安全设置。打开你需要记录的windows日志。evtsys会实时的判断是否有新的windows日志产生,然后把新产生的日志转换成syslogd可识别的格式,通过UDP 514端口发送给syslogd服务器;
6 启动服务。在以管理员身份运行的命令提示符窗口内,执行命令:net start evtsys即可启动服务。接下来进行测试是否发送成功;
7 打开syslogwatcher进行相应的设置,设置端口为514端口,接受字符码为:UTF-8码。然后点击listen。进行监听514端口。查看是否有windows日志发出。
为测试效果明显,可以重启安装evtsys的机器。(本次安装syslogwatcher与evtsys不在同一台机器,便于测试)。
如重启安装evtsys的机器仍未看到日志。则通过以下几点进行排除。
1确认接收日志端的系统防火墙已经关闭。
2确认安装evtsys的机器,是否已经启动该服务,如未启动,在服务列表点击启动。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)