阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Docker 容器日志管理Fluentd

228次阅读
没有评论

共计 1657 个字符,预计需要花费 5 分钟才能阅读完成。

随着 Docker 容器广泛应用,,大规模运行的容器集群来说,日志不能集中管理是一件很痛苦的事情。不能合理的收集,管理检索应用日志,在应用发生了故障的时候将无法很好的追溯问题发生的原因。本文主要介绍 Docker 配置 Fluentd 进行日志管理

1、快速启动 Fluentd

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

此时会在宿主机 /data 目录下生成 data.<fluentd 容器 id>.log, 所有收集到的日志文件将存储至此。

Docker 容器日志管理 Fluentd

2、启动一个测试容器查看日志是否存储到 fluentd

# docker run -d –log-driver fluentd –log-opt fluentd-address=localhost:24224 –log-opt tag=”nginx-test” –log-opt fluentd-async-connect  –name nginx-test -p 8080:80 nginx

–log-driver: 配置 log 驱动
–log-opt: 配置 log 相关的参数

fluentd-address: fluentd 服务地址
fluentd-async-connect:fluentd-docker 异步设置, 避免 fluentd 挂掉之后导致 Docker 容器也挂了

配置好之后访问 nginx 页面,每次刷新会出现如下日志

Docker 容器日志管理 Fluentd

2018-05-03T07:21:55+00:00    nginx-test    {
    “container_name”: “/nginx-test”,
    “source”: “stdout”,
    “log”: “172.96.247.193 – – [03/May/2018:07:21:55 +0000] \”GET / HTTP/1.1\” 304 0 \”-\” \”Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36\” \”-\””,
    “container_id”: “0cd8d7d68fe233238679b31327d53ad0fffe5b419f1847ad9140db063dded7f3”
}

3、Docker 全局日志配置

# cat /etc/docker/daemon.json
{
  “registry-mirrors”: [“https://zcg96r7h.mirror.aliyuncs.com”],
  “log-driver”: “fluentd”,
  “log-opts”: {
    “fluentd-address”: “127.0.0.1:24224”
  }
}

# 注意:

a、使用了 fluentd 之后,将无法使用 docker logs 查看;

b、在配置 fluentd 之前创建的容器日志不会写入到 Fluentd,如果想要存储进去需要重建容器;

c、全局配置 fluentd 之后,如果 fluentd 服务异常,将无法启动容器;

# docker run –rm nginx
docker: Error response from daemon: failed to initialize logging driver: dial tcp 127.0.0.1:24224: getsockopt: connection refused.

再启动一个测试容器,可以查看到日志同样存储到 Fluentd

Docker 容器日志管理 Fluentd

Docker 容器日志管理 Fluentd

参考文档:

1、https://www.fluentd.org/guides/recipes/docker-logging
2、安装文档:https://docs.fluentd.org/v1.0/articles/quickstart#step-1:-installing-fluentd
3、Docker 配置 Fluentd:https://docs.docker.com/config/containers/logging/fluentd/

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计1657字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中