测试集群配置
60CPU,320G RAM
测试内容:先运行一个需要60CPU的Application1,再运行一个需要50CPU的Application2。
结果分析
- 如果要等Application1全部执行完才执行Application2,说明资源是静态分配的(standalone模式就是静态分配)。
- 如果Application1执行完部分task,释放出了空闲的cpu资源给Application2执行,说明资源是动态分配的。
运行截图
运行图1:
运行图2:
通过上面的结果我们可以很清楚的看出,mesos资源调度是动态执行的。
在新的framework加入到mesos中时,就会使用DRF算法进行资源分配,并且每当Application1中有task结束,容器会被”销毁”,释放新的资源,然后slave向master汇报空闲资源,master向framework(在这是Application2)执行资源邀约(resource offer),Application2获得资源后运行task。