在Docker中部署ELK日志分析系统

Docker中部署ELK环境

一直想尝试部署一个ELK日志系统,所以今晚就用Mac搭建一下,这里记录一下具体的搭建过程。
在上一节中已经学会来安装Docker以及部署web应用,这次就不介绍来,直接在Docker中部署ELK日志分析系统.

1.介绍

ELK是三个开源工具的缩写,分别表示:Elasticsearch , Logstash, Kibana 。

1)ElasticSearch是一个基于Lucene的开源分布式搜索服务器。它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是第二流行的企业搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
在elasticsearch中,所有节点的数据是均等的。

2)Logstash是一个完全开源的工具,它可以对你的日志进行收集、过滤、分析,支持大量的数据获取方法,并将其存储供以后使用(如搜索)。说到搜索,logstash带有一个web界面,搜索和展示所有日志。一般工作方式为c/s架构,client端安装在需要收集日志的主机上,server端负责将收到的各节点日志进行过滤、修改等操作在一并发往elasticsearch上去。

3)Kibana 是一个基于浏览器页面的Elasticsearch前端展示工具,也是一个开源和免费的工具,Kibana可以为 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以帮助您汇总、分析和搜索重要数据日志。

2. Docker中下载ELK环境

由于我们使用的是集成镜像,大家也可以使用终端命令Brew等分别自行安装,分开部署可参考https://segmentfault.com/a/1190000006188536

docker pull sebp/elk

下载完之后,查看一下本地的镜像

docker images

在Docker中部署ELK日志分析系统_第1张图片

3. 在Docker中部署ELK

docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -e ES_MIN_MEM=128m -e ES_MAX_MEM=1024m sebp/elk

5601 端口是Kibana的默认端口
9200 端口是Elasticsearch的默认端口
5044 端口是Logstash的默认端口是

这里面添加来 -e 参数用户控制服务器内存(服务器内存较小,还是稳妥点小于1G)

启动之后在浏览器中 分别访问 5601、9200、5044端口查看是否正常访问

默认访问9200 显示
在Docker中部署ELK日志分析系统_第2张图片

先写到这里,下次试试写程序调用elk

你可能感兴趣的:(Docker)