-
在k8s环境下,使用ray operator创建ray cluster, 客户端通过ray.init(“ray://*****”)连接,并提交计算任务后,如果客户端主动停止,会导致ray cluster在不停的扩缩容,经过排查扩缩容的相关代码,发现是从head中获取的metircs有问题,其中resource_demand_pb.backlog_size 一直不变化了,没有清零。
【Ray使用环境】生产
【Ray版本和类库】 ray==1.12.1
【使用现场】
1.创建ray cluster 1 head + 3 worker (min=1 ,max=3), 提交任务后,扩容到3个worker
-
客户端crtl +c 主动断开连接:
3.节点没有任务运行,触发缩容,但是马上有扩容了
4.在扩容第相关代码打印日志:
monitor.py
打印的block_size:
可以看到打印的block_size一直没变化,但是其实这个时候客户端早就断开连接了,这些block的资源需求应该清零,否则ray cluster会一直重复的扩缩容。