V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Frankcox
V2EX  ›  Kubernetes

k8s 是否可以用代码模拟 Pod 分配 Node?

  •  
  •   Frankcox · 2023-09-22 16:07:26 +08:00 · 1071 次点击
    这是一个创建于 426 天前的主题,其中的信息可能已经有所发展或是发生改变。
    是否可以用代码模拟 Pod 分配到 Node 的过程?就是类似于同时 dry-run 多个 pod ?
    看了下 cluster-autoscaler 和 open-simulator ,好像有类似功能,不过感觉有些复杂。
    6 条回复    2023-09-23 10:46:55 +08:00
    xiaooloong
        1
    xiaooloong  
       2023-09-22 16:55:56 +08:00
    pod 分配 node 不是 kube-scheduler 的工作么
    Frankcox
        2
    Frankcox  
    OP
       2023-09-22 19:43:18 +08:00
    @xiaooloong 是的,但是我现在需要自己跑一遍,来看自己的一组 Pod 的分配情况
    dayeye2006199
        3
    dayeye2006199  
       2023-09-23 05:12:41 +08:00
    你是想整明白
    - 给定 node
    - 给定 pod 需求

    k8s 的 scheduler 会怎么分配 pod ?

    你的程序是对 scheduling 有特殊的依赖需求吗?如果有的话需要考虑一下这个依赖是不是合理?
    dayeye2006199
        4
    dayeye2006199  
       2023-09-23 05:17:53 +08:00
    要不直接写个自己的 scheduler 测试,看看结果是啥样的? https://github.com/kubernetes/kubernetes/tree/master/test/integration/scheduler
    Frankcox
        5
    Frankcox  
    OP
       2023-09-23 10:43:47 +08:00
    @dayeye2006199 #3 我是想测试 drain 一个集群内 Node 后,该 Node 上的所有 Pod 在剩余 Node 上的分配情况。即在 drain Node 之前做一次预 drain ,看 drain 之后集群的一个情况。
    Frankcox
        6
    Frankcox  
    OP
       2023-09-23 10:46:55 +08:00
    @dayeye2006199 #4 这样倒是可以,但是我看 cluster-autoscaler 和那个 open-simulator 里好像没直接重新写一边 scheduler ,cluster-autoscaler 里应该是通过实现 ClusterSnapshot 做了一些操作,不过我还没来得及看 scheduler 的源码,具体不太清楚。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5312 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 07:35 · PVG 15:35 · LAX 23:35 · JFK 02:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.