"); //-->
本文分享自天翼云开发者社区《kubectl logs 报错问题解决》,作者:SummerSnow
目录1.环境介绍
2.问题现象
3.问题原因
4.问题解决
#生产环境部署了一个包含100多台节点、版本为1.19的高可用k8s集群,详细信息如下:[root@xx][~]# kubectl versionClient Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.16", GitCommit:"xxx", GitTreeState:"clean", BuildDate:"xxxx", GoVersion:"go1.15.15", Compiler:"gc", Platform:"linux/amd64"} [root@xx][~]# kubectl get node |wc -l120[root@xx][~]# cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)问题现象
#之前在使用kubectl log命令的时候能看到日志信息,现在在使用命令的时候开始报错 [root@xxx][~] # kubectl logs podA -n nsA failed to get parse function: unsupported log format: "\n"问题原因
# 通过翻阅相关博客,原因大体有两种:A、docker配置文件中的一些设置格式不正确B、pod的日志太大问题解决
#问题原因已找到,接下来就是解决问题,目前方法也是有2种 #方法1 因为是生产环境,如果改动docker的配置文件后还得重启docker,对业务影响较大,所以使用无损生产的方式进行查看 [root@xxx][~] # kubectl logs --tail=10 podA -n nsA #下面就输出了正确的日志2024-08-05T08:52:14xxxxx xxxxx xxxxx #方法2 修改docker的配置文件,然后重启docker cat /etc/docker/daemon.json { "insecure-registries": ["https://xxxxx"], "log-driver": "json-file", ##### 修改下面或者移除 "log-opts": { "max-size": "10m", "max-file": "3", } }
*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。