azure – 隔夜关闭ServiceFabric集群

我们正在开发一个处理excel文件并吐出输出的应用程序.可用性不是一个大要求.

我们可以在晚上关闭VM设置并在早上再打开它们吗?这种设置是否适用于服务结构?如果是这样,有没有办法安排它?

谢谢大家的回复.我有机会与Microsoft Azure代表交谈,并在此处记录对话,以供社区使用.

回答初步问题

Service Fabric群集必须维护最少数量的主节点类型,以便系统服务维持仲裁并确保群集的运行状况.您可以在https://azure.microsoft.com/en-gb/documentation/articles/service-fabric-cluster-capacity/处查看有关可靠性级别和实例计数的更多信息.因此,停止所有VM将导致Service Fabric群集进入仲裁丢失.通常可以重新启动节点,Service Fabric将自动从此仲裁丢失中恢复,但这不能保证,并且群集可能永远无法恢复.

但是,如果您不需要在群集中保存状态,则可能更容易每天删除并重新创建整个群集(整个Azure资源组).通过部署新资源组从头开始创建新集群通常需要不到半小时,这可以通过使用Powershell部署ARM模板来实现. https://azure.microsoft.com/en-us/documentation/articles/service-fabric-cluster-creation-via-arm/显示了如何设置ARM模板并使用Powershell进行部署.您还可以使用固定域名或静态IP地址,以便不必重新配置客户端以连接到群集.如果您需要维护其他资源(如存储帐户),则还可以将ARM模板配置为仅删除VM Scale Set和SF Cluster资源,同时保留网络,负载平衡器,存储帐户等.

问)有没有更好的方法来停止/启动VM而不是直接从比例集?

如果要停止VM以节省成本,则直接从比例集启动/停止VM是唯一的选择.

问:我们可以使用我们能找到的最便宜的虚拟机来创建一个主集,并添加一个具有强大虚拟机的辅助集,我们可以打开和关闭它们吗?

是的,绝对有可能创建两种节点类型 – 小型/廉价的主节点和更大的“工作者” – 并在应用程序上设置放置约束以仅部署到那些更大的VM.但是,如果您的Service Fabric服务正在存储状态,那么您仍然会遇到类似的问题,一旦您丢失了工作虚拟机的仲裁(低于3个副本/节点),那么无法保证您的SF服务本身将全部恢复国家维持.在这种情况下,由于主节点正在运行,您的群集本身仍然可以正常运行,但您的服务状态可能处于未知复制状态.

我想你有几个选择:

>而不是将状态存储在Service Fabric的可靠集合中,而是将您的状态存储在Azure Storage或SQL Azure之类的外部.您可以选择使用Redis缓存或Service Fabric的可靠集合,以保持更快的读取缓存,只需确保所有写入都持久保存到外部存储.这样,您可以随时自由删除和重新创建群集.>使用Service Fabric备份/还原来维护您的状态,并在一夜之间删除整个资源组或群集,然后在早上重新创建并恢复状态.备份/恢复持续时间将完全取决于您存储的数据量以及导出备份的位置.>使用Azure Batch之类的东西. Service Fabric并非真正设计为可以定期启动和停止的临时高容量计算平台,因此如果这是您的目标,您可能需要查看HPC平台,例如Azure Batch,它提供本机功能以快速爆发计算容量.

相关文章
相关标签/搜索