内容纲要
概要描述
本案例介绍关闭k8s组件日志输出到/ var/log/kubernetes/ 的功能;
在 TDH 5.x 系列,apiserver/scheduler/controller-manager 都是通过容器起的,日志在docker的容器日志已经有一份,所以无需再保存一份到/var/log/kubernetes/;
k8s组件的日志不再需要打印到 /var/log/kubernetes/ ;
详细说明
apiserver/scheduler/controller-manager这些组件的启动都是通过 manifest 文件控制的,启动项配置也是在这些文件里面,只需要修改配置文件中的两个日志开关即可:
–alsologtostderr=true //删除该行
–logtostderr=false //修改为 –logtostderr=true
修改配置文件
涉及到的修改文件:
/opt/kubernetes/manifests-multi/tos-apiserver.manifest
/opt/kubernetes/manifests-multi/tos-scheduler.manifest
/opt/kubernetes/manifests-multi/tos-controller.manifest
/usr/lib/systemd/system/kubelet.service
查看修改前的配置文件内容:
对上面四个文件做如下修改:
--alsologtostderr=true //删除该行
--logtostderr=false //修改为 --logtostderr=true
修改后的配置文件内容:
重启服务
将 tos-apiserver.manifest、tos-scheduler.manifest、tos-controller.manifest 移动到其他目录,如/tmp目录下,修改完之后再移动到/opt/kubernetes/manifests-multi/下
修改完 /usr/lib/systemd/system/kubelet.service 文件后,执行命令重启:
systemctl daemon-reload && systemctl restart kubelet
验证
修改并重启完后,通过以下类似命令检查下相关组件是否还在刷日志:
tailf /var/log/kubernetes/apiserver/hyperkube.INFO