config.yaml中dask分布式pod,worker,CPU和RAM之间的关系

问题描述 投票:0回答:1

使用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知道,工作负载首先是每个工作线程和进程的使用,但是工作者数量==核心数量== pod数量?如果是这样,cpu关键字在上面的.yaml文件中的作用是什么?

dask dask-distributed
1个回答
0
投票

我的第一个猜测是你的节点上正在运行其他东西,因此Kubernetes对你提出的所有内容感到不舒服。例如,Kubernetes本身会占用一些内存。

© www.soinside.com 2019 - 2024. All rights reserved.