前面我们学的ELK中用filebeat收集docker容器日志,利用的是dcoker默认的logging driver json-file,下面我们用fluentd来收集容器日志

Fluentd是一个开源的数据收集器,他目前又超过500种的plugin,可以连接各种数据源和数据输出组件。

实践:

fluentd负责收集容器的日志,发送给elasticsearch,日志处理流程如下:

这里我们用filebeat将fluentd收集到的日志转发给elasticsearch。这当然不是唯一的方案,fluentd有一个plugin,fluentd-plugin-elasticsearch可以直接将日志转发给elasticsearch,可以根据自己的需要选择合适的方案。

安装Fluentd

 docker run -d -p 24224:24224 -p 24224:24224/udp -v /data:/fluentd/log fluent/fluentd

fluentd会在TCP/UDP端口24224上接收日志数据,日志将保存在Host的/data目录中

重新配置filebeat

vim /etc/filebeat/filebeat.yml,将/data目录添加到监控路径中

重启filebeat

监控容器日志,启动测试容器

docker run -d --log-driver fluentd --log-opt fluentd-address=localhost:24224 --log-opt tag="log-test-container-A" busybox sh -c 'while true;do echo "this is a log message"'

docker run -d --log-driver fluentd --log-opt fluentd-address=localhost:24224

busybox sh -c 'while true;do echo "this is a log message"'

--log-driver=fluentd告诉docker使用fluentd的logging driver

--log-opt fluentd-address=localhost:24224将容器日志发送到fluentd的数据接受端口

 --log-opt tag="log-test-container-A"和--log-opt tag="log-test-container-B"在容器中添加一个tag用于区分不同的容器

容器启动后在kibana就可以看到相关容器的日志了

对于容器的日志管理方案,我们由docker logs引出了dcoker logging driver;进而学习了ELK日志处理stack,通过fluentd logging driver,我们很容易的将fluentd接入到日志管理方案中。

与容器监控一样,容器日志管理也是一个百花齐放的,告诉迭代的技术领域。没有最好的,只有最合适的。

不同的企业由不同的部署规模,有自己的管理流程,有各自的业务目标;运维团队由不同的技术背景,人员结构和工作方式,唯有保持开放的心态,多看,多学,多实践,才能构建出合适的

centos7下安装docker(18.3docker日志---logging driver---fluentd)的更多相关文章

  1. centos7下安装docker(18docker日志---docker logs)

    在微服务架构中,由于容器的数量众多以及快速变化的特性使得记录日志和监控变得越来越重要,考虑到容器的短暂和不固定周期,当我们需要排查问题的时候容器可能不在了.因此,一套集中式的日志管理系统是生产环境中不 ...

  2. docker(一) Centos7下安装docker

    docker(一) Centos7下安装dockerdocker(二) windows10下安装dockerdocker(三) 镜像和容器常用命令 docker(四) 使用Dockerfile构建镜像 ...

  3. CentOS7下安装docker(Docker系列1)

    CentOS7下安装docker 系统要求 为了安装docker,需要准备 64-bit的CentOS 7 删除非官方的Docker包 yum的仓库中有一个很旧的Docker包, 现在Docker官方 ...

  4. centos7下安装docker与镜像加速

    1.背景 centos7下安装docker 2.安装 第一步:检查是否为centos7版本 第二步:依赖环境安装 执行如下两个命令: yum -y install gcc yum -y install ...

  5. centos7下安装docker(18.1docker日志---logging driver)

    将容器的日志发送到STDOUT和STDERR是docker的默认日志行为.实际上,docker提供了多种日志机制帮助用户从容器中提取日志,这些机制被称为logging driver docker的默认 ...

  6. centos7 下安装docker报错:You could try using...

    搞了台VPS,想要装docker,发现死活装不上,各种报错.之前系统是centos6,发现官方现在已经不支持centos6了,遂升级到centos7,然后还是出现下面这个错误. Error: Pack ...

  7. Centos7下安装Docker(详细的新手装逼教程)

    早就听说过Docker,一直不清楚是个啥,今天捣鼓了一下,这里做个记录. --------------------------------------------------------------- ...

  8. Centos7下安装Docker[z]

    [z]https://www.cnblogs.com/qgc1995/p/9553572.html https://yq.aliyun.com/articles/691610?spm=a2c4e.11 ...

  9. Linux(centos7)下安装Docker

    近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器 ...

随机推荐

  1. [android] listview入门

    Listview组件非常重要,4分之一的时间都是在搞这个,还是通过上一节的数据库,写个for循环,插入50条数据. 先使用笨方法显示数据,根布局LinearLayout 定义一个id,在activit ...

  2. Redirection

    Typically, the syntax of these characters is as follows, using < to redirect input, and > to r ...

  3. Python3 系列之 环境包管理神器 pipenv

    环境说明:Windows 10 build 17763 + Python 3.7.2 介绍 pipenv 是在 pip 与 virtualenv 基础上发展而来的,弥补了之前 virtualenv 通 ...

  4. idea项目git版本回退

    idea项目git版本回退 一.查询提交历史 项目上右键,点击Git,点击Show History 二.复制版本号 我这里有两个测试的版本,我的当前版本是[二],所以我选择[一],右键,选择Copy ...

  5. If you did this already, delete the swap file ".git/.MERGE_MSG.swp"

    出现这种情况一般是不正常退出造成的,找到隐藏文件后删除解决

  6. nodeJs express mongodb 建站(window 10 版)

    一.环境搭建 安装 node.git.npm.express.mongodb.主要介绍express.mongodb 的安装. (1)node安装:https://nodejs.org/en/down ...

  7. 2018-12-03 VS Code英汉词典插件v0.0.7-尝试词性搭配

    续上文VS Code英汉词典插件v0.0.6-改为TS实现, 加测试后, 继续重构(提取常量, 避免var, 添加类型等等), 并完善测试. 测试方法参考: Testing Visual Studio ...

  8. Android view层

    当屏幕可以装下内容的时候,他们的值相等,只有当view超出屏幕后,才能看出他们的区别:getMeasuredHeight()是实际View的大小,与屏幕无关,而getHeight的大小此时则是屏幕的大 ...

  9. SAP生产机该不该开放Debuger权限

    前段时间公司定制系统在调用SAP RFC接口的时候报错了,看错误消息一时半会儿也不知道是哪里参数数据错误,就想着进到SAP系统里面对这个接口做远程Debuger,跟踪一下参数变量的变化,结果发现根本就 ...

  10. Microsoft Teams 集成 (协作, 沟通 和 行为)

    Microsoft Teams 集成 (协作, 沟通 和 行为) 概述 Microsoft Teams是在Office 365中以chat为中心的工作空间.软件开发团队可以快速获得在一个专门的团队协作 ...