docker、kubelet日志不输出到/var/log/message,又能用journalctl查询

背景

客户机器/var目录很小,任何业务运行相关的都要挪走。现在发现/var/log/message一直被docker、kubelet循环写,需要修改输出位置,同时不影响journalctl查询。

配置文件

需要root权限。

cd /etc/rsyslog.d
vim docker.conf     ##不同服务只需要修改$programname即可
if $programname == 'docker' then /data/log/docker/docker.log
if $programname == 'docker' then stop

if $programname == 'dockerd' then /data/log/docker/dockerd.log
if $programname == 'dockerd' then stop

验证

修改完成后,systemctl restart rsyslog
cd到conf配置的路径下查看log文件。没有的话,可以重启一下对应服务,查看是否有新文件生成

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
根据引用,错误提示"Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?"表明在构建Docker镜像时无法连接到Docker守护进程。根据引用中的解决方案,尝试通过执行"service docker restart"重启Docker服务,但并没有解决问题。同时,查看Docker日志文件"/var/log/upstart/docker.log"也没有找到明确的解决方法。引用记录了初次使用Docker时遇到相同的错误,并提供了解决思路。 根据这些信息,问题出现在执行Kubelet时无法获取Docker版本导致的。为了解决该问题,我建议您执行以下步骤: 1. 首先,确保您有足够的权限来访问Docker守护进程。根据您的操作系统,您可能需要使用sudo或以root用户身份运行相关命令。 2. 确认Docker守护进程是否正在运行。您可以使用以下命令来检查Docker守护进程的状态: ``` systemctl status docker ``` 如果Docker守护进程没有运行,您可以使用以下命令启动它: ``` systemctl start docker ``` 3. 如果Docker守护进程正在运行,但问题仍然存在,那么可能是由于Docker守护进程的配置错误导致的。您可以尝试重置Docker配置并重新启动它。执行以下命令重置Docker配置: ``` sudo rm /etc/docker/daemon.json sudo systemctl restart docker ``` 请注意,这将删除现有的Docker配置文件并使用默认配置重新启动Docker守护进程。 4. 如果上述步骤都没有解决问题,您可以尝试重新安装Docker。根据您的操作系统,可以使用适当的包管理器来安装或重新安装Docker。 总结一下,要解决"failed to run Kubelet: failed to get docker version: Cannot connect to the Docker daemon at unix:///var/run/docker.sock"的错误,请确保您具有足够的权限来访问Docker守护进程,确认Docker守护进程是否正在运行,并尝试重置Docker配置或重新安装Docker。希望这些步骤能够解决您的问题。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值