Docker笔记02-日志平台ELK搭建
OS: Centos7
准备工作:
虚拟机中安装Centos, 搭建Docker环境
ELK简介: 略
文档地址 https://elk-docker.readthedocs.io/
需要注意的是在Beats套件加入ELK Stack后,新的称呼是 Elastic Stack , 本次实践的是 filebeat + elk
由于elk镜像很大7.0.1版本大约1.8G 开始前建议将镜像源设置成国内地址 如阿里镜像库,网易镜像库等
阿里镜像源设置可参考 https://www.cnblogs.com/anliven/p/6218741.html/
1.下载镜像
docker pull sebp/elk
2.运行镜像
docker run -p 5601:5601 -p 9200:9200 -p 5044:5044 -v /usr/dockerfile:/data -it -d --name elk sebp/elk
- 5601 (Kibana web interface).
- 9200 (Elasticsearch JSON interface).
- 5044 (Logstash Beats interface, receives logs from Beats such as Filebeat – see the Forwarding logs with Filebeat section).
本机elk镜像运行有点慢,查看运行日志
docker logs elk
3. 配置logstash文件 可以不用配置 由于filebeat比logstash有更好的性能基本是用filebeat搜集日志后直接发给elasticsearch来分析存储
如果需要处理日志可以filebeat收集日志发给logstash,再由logstash整理后给elasticsearch
vim /usr/dockerfile/config/logstash.yml input 数据来源是filebeat 端口是5044 禁用ssl
output 输出是elasticsearch 配置 elasticsearch 地址 和索引
input {
beats {
port => 5044
ssl => false
codec => "json"
}
}
output {
elasticsearch {
hosts => ["127.0.0.1:9200"]
index => "filebeat-%{+YYYY.MM.dd}"
}
}
4.查看elk是否成功启动
host 192.168.95.131 是本地虚拟机的ip
http://192.168.95.131:9200/_search?pretty
能正常打开页面表示成功了
5.安装filebeat
可以根据Kibana页面提示安装filebeat
进入Kibana Home页后 选择 Add log data => Logstash logs

根据对应主机系统选择不同的安装方式
6.配置filebeat.yml
cd /etc/filebeat 进入配置文件路径
ls fields.yml filebeat.reference.yml filebeat.yml modules.d
需要配置的就是filebeat.yml , filebeat.reference.yml 是完整的配置项
filebeat.inputs:
- type: log
enabled: true # 启用 #
paths:
- /data/logs/*.log # 扫描的文件logs目录下所有.log后缀的文件 #
- /data/logs/*/*.txt # 扫描logs目录下文件夹下的.txt后缀的文件#
fields: # 标签 表示 name = host value = 192.168.95.130 logstash中 获取方式 fields.host #
host: "192.168.95.130" filebeat.config.modules:
path: ${path.config}/modules.d/*.yml reload.enabled: true setup.template.settings:
index.number_of_shards: 1
_source.enabled: true output.elasticsearch:
hosts: ["192.168.95.131:9200"] #elasticsearch 地址# processors:
- add_host_metadata: ~
- add_cloud_metadata: ~
- drop_fields:
fields: ["cpu.user","cpu.system","host.os.family"] # 过滤的字段 # logging.to_files: true # filebeat 运行日志 保存到 /var/log/filebeat 路径下 #
logging.files:
path: /var/log/filebeat
7.filebeat 停止/启动/状态查看命令
sudo service filebeat stop
sudo service filebeat start
sudo service filebeat status
启动filebeat后需查看status来确认是否成功启动,通常失败的原因是filebeat.yml文件配置有误
成功状态如下 :

8.验证elk平台是否正常
登陆Kibanna > Management > Kinbana > Index Patterns 根据提示创建索引

点击 Discover 选择索引 filebeat-* 或者 logstash-* 点击刷新 查看日志

或者点击Logs 菜单 查看所有日志 可以点击 Stream live 实时查看日志

遇到的坑:
1.启动elk失败,内存不足
https://www.cnblogs.com/yidiandhappy/p/7714489.html
2.filebeat 启动时提示成功了 但是收集不到日志,使用 sudo service filebeat status 查看启动状态 发现是失败的,后来验证是filebeat.yml配置错误
elk基础功能搭建完成
其他功能还在探索中....
参考
https://www.imooc.com/article/70996
在实践Filebeat发送日志给Logstash的过程中一直有些问题,最终发现是logstash配置文件有误,真确的路径是进入容器后的/etc/logstash/conf.d/02-beats-input.conf
参考 https://juejin.im/post/5ba4c8ef6fb9a05d082a1f53 在收集filebeat自己的运行日志时发现一直没产生?!
解决方案是配置filebeat.yml
查看filebeat运行状态
# sudo service filebeat status

然后 # sudo filebeat run

这条命令是阻塞式的,然后新开窗口进入日志目录进看到日志

下一篇 Docker网络模式
Docker笔记02-日志平台ELK搭建的更多相关文章
- 日志框架elk 搭建
CENTOS7 安装 NGINX ELK之LOGSTASH ELK之ELASTICSEARCH安装 ELK之KIBANA
- 分布式日志系统ELK搭建
ELK:Elasticsearch Logstash Kibana Elasticsearch:是基于JSON的分布式搜索和分析引擎,专为实现水平扩展.高可用和管理便捷性而设计 Logstash:是 ...
- 啃掉Hadoop系列笔记(02)-Hadoop运行环境搭建
一.新增一个普通用户bigdata
- 从头开始搭建分布式日志平台的docker环境
上篇(spring mvc+ELK从头开始搭建日志平台)分享了从头开始搭建基于spring mvc+redis+logback+logstash+elasticsearch+kibana的分布式日志平 ...
- ELK搭建实时日志分析平台之一ElasticSearch搭建
文:铁乐与猫 系统:CentOS Linux release 7.3.1611 (Core) 注:我这里为测试和实验方便,ELK整套都装在同一台服务器环境中了,生产环境的话,可以分开搭建在不同的服务器 ...
- 基于Kafka+ELK搭建海量日志平台
早在传统的单体应用时代,查看日志大都通过SSH客户端登服务器去看,使用较多的命令就是 less 或者 tail.如果服务部署了好几台,就要分别登录到这几台机器上看,等到了分布式和微服务架构流行时代,一 ...
- ELK快速搭建日志平台
1. 抛砖引入 <Elasticsearch> <Logstash> <Filebeat> <Filebeat模块与配置> <Kibana> ...
- 利用 ELK 搭建 Docker 容器化应用日志中心
利用 ELK 搭建 Docker 容器化应用日志中心 概述 应用一旦容器化以后,需要考虑的就是如何采集位于 Docker 容器中的应用程序的打印日志供运维分析.典型的比如SpringBoot应用的日志 ...
- elk日志平台搭建小记
最近抽出点时间,搭建了新版本的elk日志平台 elastaicsearch 和logstash,kibana和filebeat都是5.6版本的 中间使用redis做缓存,版本为3.2 使用的系统为ce ...
随机推荐
- P2P网贷第三方托管模式存在5大缺陷,护法是最大的赢家
1.注冊开户须要2次,用户体验非常差劲儿. 理財人和借款人.首先在平台注冊,然后还要在第三方托管账户注冊. 非常多相似的地方,用户体验非常差劲. 比方.password4个. 平台:登 ...
- iOS 第三方库(1)
MKNETWORK 被广泛使用的第三方网络访问开源库.用于提供更加友好的网络访问接口.相信很多搞iOS开发的朋友都用过它 RegexKit RegexKit是一个正则表达式工具类.提供强大的正则表达式 ...
- Watchdog问题实例分析
1.日志获取 Watchdog相关的问题甚至需要以下所有的日志: logcat 通过adb logcat命令输出Android的一些当前运行日志,可以通过logcat的 -b 参数指定要输出的日志缓冲 ...
- React事件处理函数传参问题
React事件处理函数参数 HTML标签与React 组件是不同的,事件对象e是HTML标签元素的,组件没有的.
- css3中的制作动画小总结
系列教程 CSS3属性中有关于制作动画的三个属性:Transform,Transition,Animation: Transform 在CSS3中transform主要包括以下几种:旋转rotate. ...
- <模拟电子学习1>Multisim 12.0 结构和仿真51最小的单芯片系统
周围环境: 系统环境: win7 64位置 软件平台:Multisim 12.0 目的: 刚毕业,可是模电知识也忘得差点儿相同了,加之自己想搞搞硬件设计.假设仅仅是看模电书.不实践,还是终觉浅.当做兴 ...
- Gamma 函数及其应用
1. Γ(⋅) 函数定义 Γ(α)=∫∞0tα−1e−tdt 可知以下基本性质: Γ(α+1)=αΓ(α)(分部积分法) Γ(1)=1 ⇒ Γ(n+1)=n! Γ(12)=π√ 2. 常见变形 对于 ...
- uinty3d导入错误问题解决
导入第一被复制到文件unity3d在相应的文件夹的安装文件夹.回归后,unity3d软体.正确的选择"输入". 版权声明:本文博主原创文章.博客,未经同意不得转载.
- 真的懂了:TCP协议中的三次握手和四次挥手(关闭连接时, 当收到对方的FIN报文时, 仅仅表示对方不在发送数据了, 但是还能接收数据, 己方也未必全部数据都发送对方了。相当于一开始还没接上话不要紧,后来接上话以后得让人把话讲完)
一.TCP报文格式 下面是TCP报文格式图: (1) 序号, Seq(Sequence number), 占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记. (2) 确 ...
- 在sqlserver中,使用sql语句更新数据库:生成随机数,更新每一行中的年龄字段
use School --指定数据库 declare @min_id int --声明整数变量@x set @min_id=(select MIN(Id) from Students) --给变量@x ...
