首页 > 解决方案 > 是否可以使用 Service Fabric 中 ResourceMonitorService 的“servicefabric:/_CpuCores”负载指标来平衡集群中的服务?

问题描述

我们正在使用 Service Fabric 中 ResourceMonitorService 的“servicefabric:/_CpuCores”负载指标来自动扩展服务,但是否也可以使用这些数据来平衡集群?

标签: azure-service-fabric

解决方案


当新服务或节点添加到群集时,Service Fabric 资源管理器会自动平衡群集以响应负载变化。

每当您的服务向上或向下扩展时,Service Fabric 都会评估集群平衡以找到合适的平衡,以避免某些节点因更多服务而过载。如果它发现集群不平衡,它将移动服务以均匀地容纳负载。

您可以在集群 PlacementAndLoadBalancing 部分设置一些配置来调整规则,您不必更改它,但如果需要,您可以查看此文档Balancing your service fabric cluster

关于你设置的metrics,这个只适用于服务的弹性伸缩,但是每当服务负载增加时,也可能会触发集群平衡,因为一个节点的metrics是基于它上面运行的所有服务,它会影响节点负载。

您还可以使用资源治理为服务包预留节点容量,这样,SF 只会在节点有承载能力的情况下将您的服务放置在节点中,并且如果所有节点容量都将阻止新服务进入被预定了。


推荐阅读