P. *_*erg 4 metrics azure-service-fabric rebalancing
在研究Service Fabric上的资源平衡器和动态负载指标时,我们遇到了一些问题(运行devbox SDK GA 2.0.135).
在Service Fabric Explorer(门户网站和独立应用程序)中,我们可以看到平衡是经常运行的,大部分时间它几乎立即完成,这种情况每秒都会发生.在查看节点或分区上的负载度量信息时,它不会在报告负载时更新值.
我们根据交互(对服务的HTTP请求)发送动态负载报告,大量增加单个分区的报告负载数据.这个尖峰在5分钟内变得可见,此时平衡器实际上开始平衡.这似乎是加载数据刷新的间隔.在上次报告的时间得到更新所有的时间,但没有新的价值.
我们将指标添加到applicationmanifest和clustermanifest以确保它在平衡中使用.这意味着资源平衡器使用相同的数据5分钟.这是可配置的设置吗?是约束因为它是在devbox上运行的吗?我们在clustermanifest中尝试了很多变量,但似乎都没有影响这个刷新时间.
如果这不适应,有人可以解释为什么你会使用陈旧数据运行平衡器?为什么选择这5分钟的间隔?
这确实是一个可配置的设置,默认值为5分钟.它背后的想法是,在prod中你有大量的副本都报告所有时间的负载,所以你想要批量处理它们,这样你就不会将所有这些作为独立消息的群集资源管理器垃圾邮件.
你可能是对的,这个值的方式为地方发展太长.我们将考虑更改本地群集的更改,但同时您可以将以下内容添加到本地群集清单中,以更改默认情况下等待的时间.如果其中已有其他设置,只需添加SendLoadReportInterval行.该值以秒为单位,您可以相应地进行调整.以下将默认负载报告间隔从5分钟(300秒)更改为1分钟(60秒).
<Section Name="ReconfigurationAgent">
<Parameter Name="SendLoadReportInterval" Value="60" />
</Section>
Run Code Online (Sandbox Code Playgroud)
请注意,这样做会增加某些系统服务(TANSTAAFL)的负载,并且如果您在生成的或完整的集群清单上运行,请务必在部署之前确保Test-ServiceFabricClusterManifest.如果您正在使用本地开发群集,则部署它的最简单方法可能就是修改群集清单模板(默认情况下为:"C:\ Program Files\Microsoft SDKs\Service Fabric\ClusterSetup\NonSecure\ClusterManifestTemplate". xml")然后添加该行,然后右键单击系统托盘中的Service Fabric Local Cluster Manager并选择"Reset Local Cluster".这将使用您对模板的更改重新生成本地群集.
| 归档时间: |
|
| 查看次数: |
613 次 |
| 最近记录: |