• freeman
    2018-11-29
    首先筛选出满足资源的机器。如果可用节点大于等于需求副本集则一个node一份,顺序取node调度即可,如果node节点少于副本数量,则进行一次调度后,剩下的副本重复上面的事情。直到为每个副本找到对应node或者调度失败。
     1
     7
  • Dale
    2018-12-13
    在工作中遇到这个问题,需要将pod尽量分散在不通的node上,通过kubernetes提供的反亲和性来解决的。从回答中老师希望从Priorities阶段中实现,我的想法如下:
    1、首先在Predicates阶段,已经选择出来一组可以使用的node节点
    2、在Priorities阶段,根据资源可用情况将node从大到小排序,加上node节点个数为m
    3、根据pod中配置replicate个数n,在node列表中进行查找出资源可用的top n的node节点
    4、如果node节点个数m不满足pod中的replicate个数,每次选择top m之后,重新计算node的资源可用情况,在选择top(n-m)的node,会存在node上有多个情况,最大程度上保证pod分散在不同的node上
    展开
    
     2
  • tyamm
    2018-11-28
    老师,我有个疑问。这个课程后面会讲到如何搭建master节点高可用么??
    
     2
  • 王景迁
    2019-10-23
    根据老师上面说的,默认的调度策略不是应该有四种类型吗?为什么文章开头说是三种类型?
    
     1
  • 鱼自由
    2019-01-03
    老师,最后你提到为 Priorities 设置权重,请问,这个操作在哪里进行?

    作者回复: google一下 kube-scheduler policy。是一个配置文件或者配置yaml。

    
     1
  • 小朱
    2018-12-05
    请教一个问题,自己启动了另一个scheduler,某一个node上同时存在default-scheduler和second-scheduler调度的资源。但是scheduler只统计schedulerName是自己的pod,这样就和node上面kubelet统计的资源就出现了不一致,这种设计是为什么呢?
    
     1
  • 陈小白( ´・ᴗ・`...
    2019-12-30
    这个我们线上就遇到了,一开始编排好差不多100个系统,发现其中几台主机一堆pod ,内存cpu 都很吃紧,而其他的主机却十分空闲。重启也没用。另外还想请教老师一个问题,我们遇到主机内存不足的时候,经常出现docker hang 住了,就是docker 的命令完全卡死,没反应,不知道老师有遇到过呢?
    
    
  • 东东
    2019-07-04
    找到堆叠的原因,然后通过调整priorities相应的权重来避免“堆叠”
    
    
  • 北卡
    2019-01-15
    细看调度这一块,觉得k8s的设计真的蛮精彩的。
    
    
  • tommyCmd
    2018-12-12
    最近也一直被这个问题困扰,讨论一个方案是把pod的qos都设为Guaranteed,希望老师能够解答困惑
    
    
  • 马希民
    2018-11-28
    想请教一下老师,在做优先级选择的时候节点的剩余资源是如何得到的?是通过已经分配在该节点上的pod声明limit的资源总和还是通过该节点当前的实际资源使用情况呢?按照调度器使用缓存的说法,似乎应该是前者,那么如果一个pod在声明的时候要求了远远高于本身所需的资源,就会造成这个节点资源的极大浪费?小白不太懂,老师多多指教
    
    
  • 周娄子
    2018-11-28
    写一个类似nginx一致性hash的算法
    
    
  • 快乐就好
    2018-11-28
    问一下,我用二进制安装的kubernetes,在实现master的HA时,通过haproxy反代多个Master, 我测试手动注入kube-apiserver故障,进行一下调度和资源操作都是正常的,然后我恢复故障的apiserver,资源操作也都是正常,我用的kube-proxy 是ipvs, 我就发现node上通过ipvsadm查看流量转发情况到apiserver的其他两个master 节点都是有的,但是新恢复的apiserver上面是没有一点流量过来,是否在恢复前需要把故障节点etcd 信息给清了,再启动故障的服务,然后master 状态信息自动同步过来。
    
    
  • Alex
    2018-11-28
    podAntiAffinity:
              requiredDuringSchedulingIgnoredDuringExecution:
              - labelSelector:
                  matchExpressions:
                  - key: name
                    operator: In
                    values:
                    - nginx-demo
                topologyKey: "kubernetes.io/hostname"

    我用了反亲和的特性让pod分到了不同的机器上,不知道是否回答了你的问题
    展开

    作者回复: 这就成了predicate了,我们希望的是一个priority

    
    
  • wilder
    2018-11-28
    沙发
    
    
我们在线,来聊聊吧