config.yaml中

时间:2019-02-28 17:04:03

标签: dask dask-distributed

使用Helm设置dask集群时,config.yaml文件中有一组变量用于自定义工作程序的数量,我希望在术语方面有所帮助。例如,如果我设置一个具有16个虚拟机,8个核心/计算机和32GB /虚拟机的Kubernetes集群,那么最终我将拥有128个vCPU和512GB内存。如果我通过“ helm ... update -f config.yaml”

worker:
  name: worker
  allowed-failures: 2
  replicas: 48
  resources:
    limits: 
      cpu: 2
      memory: 8G
    requests:
      cpu: 2
      memory: 8G

似乎我应该能够创建64个工作组,每个工作组具有2个cpus,并使用我所有的512 GB RAM。 (减去专用于调度程序的资源)。但是,实际上,分布式客户端最多可以容纳40个工作人员,80个内核和320 GB的总RAM。

是否有关于设置Pod以最大程度利用群集的最佳实践?我从这个post中知道,就每个工作人员的线程和进程的使用而言,工作负载是第一位的,但是工作人员的数量==内核的数量==容器的数量?如果是这样,上面的.yaml文件中cpu关键字的作用是什么?

1 个答案:

答案 0 :(得分:0)

我的第一个猜测是,其他事情正在您的节点上运行,因此Kubernetes很难满足您的要求。例如,Kubernetes本身会占用一些内存。