Rootop 服务器运维与web架构

fluentd收集docker日志

1、安装fluentd docker版:

docker run \
-dit \
--name fluentd \
--hostname fluentd \
-p 24224:24224/udp \
-p 24224:24224 \
-v /fluentd/log:/fluentd/log \
docker.io/fluent/fluentd

这样fluentd日志就挂载到宿主机的/fluentd/log目录下。

2、创建服务,指定fluentd信息

docker service create \
--replicas 6 \
-dt \
--name ping \
--network onet \
--log-driver=fluentd \
--log-opt=fluentd-address=192.168.10.80:24224 \
--log-opt=tag=TagOfPingService \
--log-opt=fluentd-async-connect \
--with-registry-auth \
hub.xxx.com/test/java8:0402 \
ping www.baidu.com

注意事项:
1、docker service create 创建服务,指定镜像为私库路径,提示 没有这个镜像。 解决方法如下:

一)、管理节点及工作节点需要登录私库 docker login -u xxx -p xxx repoAddr 认证信息保存在 cat /root/.docker/config.json 中
二)、docker service create 添加参数 –with-registry-auth 进行私库验证
以上两步就可以拉取私库镜像了。

2、如果fluentd服务挂掉,新建的服务容器无法启动。
会提示starting container failed: failed to initialize logging driver: dial tcp 192.168.10.80:24224: connect: connection refused错误。
如果是容器已启动,fluentd挂掉会继续运行。

原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/4304.html

作者:Venus

服务器运维与性能优化

评论已关闭。