<返回更多

运维日志分析工具ELK:Windows与Linux皆可安装

2020-11-18    
加入收藏

一般提到监控,很多人就会想到监控服务器运行状态,网络运行状态。其实由于业务需要,服务器和网络设备每时每刻产生的海量日志也同样的重要。

运维日志分析工具ELK:Windows与Linux皆可安装

 

为什么选用ELK?

ELK是Elasticsearch、Logstash、Kibana的简称,这三者是核心套件,但并非全部。

Elasticsearch是实时全文搜索和分析引擎,提供搜集、分析、存储数据三大功能;是一套开放REST和JAVA API等结构提供高效搜索功能,可扩展的分布式系统。它构建于Apache Lucene搜索引擎库之上。

Logstash是一个用来搜集、分析、过滤日志的工具。它支持几乎任何类型的日志,包括系统日志、错误日志和自定义应用程序日志。它可以从许多来源接收日志,这些来源包括 syslog、消息传递(例如 RabbitMQ)和JMX,它能够以多种方式输出数据,包括电子邮件、websockets和Elasticsearch。

Kibana是一个基于Web的图形界面,用于搜索、分析和可视化存储在 Elasticsearch指标中的日志数据。它利用Elasticsearch的REST接口来检索数据,不仅允许用户创建他们自己的数据的定制仪表板视图,还允许他们以特殊的方式查询和过滤数据。

1.开源免费

ELK是属于免费开源软件,在初期使用阶段无需承担高额的软件费用。

2.分布式部署以及扩容方便

Elasticsearch的高度扩展性,这一点类似于Ceph,能够在新节点加入以后,索引index会自动在新节点平衡。摆脱了以往单节点性能瓶颈。

3.用途

ELK开源解决方案开源用在故障排查、监控预警、关联事件、数据分析等等,用途及其广泛。

linux部署ELK

本次Linux采用centos7.6来部署ELK。

[root@elk ~]# cat /etc/redhat-release 
CentOS Linux release 7.6.1810 (Core) 

和之前文章类似,这次我还是采用Docker,(原因就是无需部署各种环境)

 curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
  1. 安装Elasticsearch

先去docker官网获取最新的Elasticsearch镜像,如下图最新版本是7.9.3

运维日志分析工具ELK:Windows与Linux皆可安装

 

拉取最新的Elasticsearch镜像:

docker pull elasticsearch:7.9.3

创建网络,让其他组件运行在同一个网络下:

docker network create yunweichongzi
运维日志分析工具ELK:Windows与Linux皆可安装

 

运行elasticsearch容器:

docker run -d --name elasticsearch --net yunweichongzi -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.9.3
运维日志分析工具ELK:Windows与Linux皆可安装

 

浏览器或者用curl访问IP+9200端口,出现如下图的提示代表elasticsearch安装成功。

运维日志分析工具ELK:Windows与Linux皆可安装

 

2.安装Kibana

同样拉取kibana镜像,注意一定要和elasticsearch的版本一致。

docker pull kibana:7.9.3
运维日志分析工具ELK:Windows与Linux皆可安装

 

运行kibana容器。

docker run -d --name kibana --net yunweichongzi -p 5601:5601 kibana:7.9.3

通过浏览器访问ip+5601,访问到下面的页面代表安装成功。

运维日志分析工具ELK:Windows与Linux皆可安装

 

3.安装Logstash

拉取同版本的镜像

docker pull logstash:7.9.3

创建两个文件一个是logstash.yml,另一个是test.conf

cat logstash.yml 
path.config: /usr/share/logstash/conf.d/*.conf
path.logs: /var/log/logstash

cat conf.d/test.conf 
input {
    beats {
    port => 5044
    codec => "json"
}
}

output {
  elasticsearch { hosts => ["172.18.0.2:9200"] }
  stdout { codec => rubydebug }
}


cat conf.d/test.conf 
input {
    beats {
    port => 5044
    codec => "json"
}
}

output {
  elasticsearch { hosts => ["172.18.0.2:9200"] }
  stdout { codec => rubydebug }
}
运维日志分析工具ELK:Windows与Linux皆可安装

 

启动kibana容器:

docker run -it -d -p 5044:5044 --name logstash --network yunweichongzi --privileged=true -v /root/elk/logstash.yml:/usr/share/logstash/config/logstash.yml -v /root/elk/conf.d/:/usr/share/logstash/conf.d/ logstash:7.9.3

最后检查一下容器运行情况。到此ELK就安装完成了,但是还缺一个filebeat(这个等下一篇文章检索日志的时候安装)。

运维日志分析工具ELK:Windows与Linux皆可安装

 


运维日志分析工具ELK:Windows与Linux皆可安装

 

出现上图界面以后就可以了。

windows安装了ELK

是不是觉得Linux太麻烦,Windows版的就简单了。这里为了篇幅就不详细一步一步截图了。

Windows版的elk安装官网有详细的教程:

运维日志分析工具ELK:Windows与Linux皆可安装

 

下载图中的软件,进行安装,然后按照官网的提示即可运行ELK

运维日志分析工具ELK:Windows与Linux皆可安装

 

总结

无论是通过Linux还是windows安装,都是可以达到对日志进行监控的目的。下一篇文章就会详细的介绍如何使用ELK对服务器日志,网站日志,服务日志进行监控与告警。

运维日志分析工具ELK:Windows与Linux皆可安装

 

希望大家能够多多关注,多年致力于互联网搬砖,各种互联网技术都稍有涉猎。如果大家遇到一些问题可以私信或者留言给我。我们可以一起讨论

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>