如何查看kubernetes 具体的调度日志,kube-scheduler 日志怎么看

发布于 2022-09-12 23:47:24 字数 216 浏览 41 评论 0

我使用的 kubeadm 搭建的 kubernetes 集群,
有kube-scheduler 的 pod
但是查看这个pod 的日志,并没有具体的调度记录
image.png

我想查看每个pod的调度记录,甚至是 kube-scheduler 打分的记录,
不知道是否可以查看到?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

浪漫之都 2022-09-19 23:47:24

我使用的是kubeadm部署的,解决方案如下:
1、修改/etc/kubernetes/manifests/kube-scheduler.yaml,在日志级别的参数,如--v=4;
2、等待kube-scheduler自动重启
3、使用kubectl logs kube-scheduler-master01 -n kube-system查看日志。
重启完成后,我提交了一个deployment,查看了调度器的日志,确实有改Pod的调度记录。
关于“ kube-scheduler 打分的记录”暂时没有看见,待继续验证:1、调整日志级别;2、查看调度器源码是否有日志记录。
期望能够帮助你。

======更新=====
查看源码:

if klog.V(10).Enabled() {
        if len(pod.Spec.Volumes) > 0 && utilfeature.DefaultFeatureGate.Enabled(features.BalanceAttachedNodeVolumes) && nodeInfo.TransientInfo != nil {
            klog.Infof(
                "%v -> %v: %v, map of allocatable resources %v, map of requested resources %v , allocatable volumes %d, requested volumes %d, score %d",
                pod.Name, node.Name, r.Name,
                allocatable, requested, nodeInfo.TransientInfo.TransNodeInfo.AllocatableVolumesCount,
                nodeInfo.TransientInfo.TransNodeInfo.RequestedVolumes,
                score,
            )
        } else {
            klog.Infof(
                "%v -> %v: %v, map of allocatable resources %v, map of requested resources %v ,score %d,",
                pod.Name, node.Name, r.Name,
                allocatable, requested, score,
            )

        }
    }

发现日志等级要设置为10,可以打印“NodeResourcesBalancedAllocation”的计算分数

参考:
1、https://stackoverflow.com/que...
2、https://stackoverflow.com/que...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文