我操作一个本地的Azure Service Fabric集群进行测试。它由三个节点组成,运行在一台虚拟机(Windows Server 2012)上,附有50GB磁盘。
此外,我设置了从TFS发布管道到集群的持续部署。然而,在大约80次部署后,Service Fabric消耗了所有可用的磁盘空间,导致进一步的部署失败。
大部分空间被C:\ProgramData\SF\Data占用,大约占用了28GB,而每个代码包的大小约为130MB。在我手动通过SF门户取消预配许多旧部署之后,只释放了约5GB。许多旧文件仍然存在于C:\ProgramData\SF\Data中。
如何改善这种情况?
- 取消预配后,旧部署的文件为什么仍然在磁盘上? - 是否可以手动删除这些文件? - 是否可以自动取消预配?
在生产环境中,这种情况应该更加轻松(因为每台机器只有一个节点和更大的磁盘)。尽管如此,这只是拖延问题。避免这种情况会让我感到更安全。
编辑
看起来,Service Fabric会在一段时间后才删除部署包。我检查了测试集群一天后,所有未预配的包最终都消失了。
此外,我设置了从TFS发布管道到集群的持续部署。然而,在大约80次部署后,Service Fabric消耗了所有可用的磁盘空间,导致进一步的部署失败。
大部分空间被C:\ProgramData\SF\Data占用,大约占用了28GB,而每个代码包的大小约为130MB。在我手动通过SF门户取消预配许多旧部署之后,只释放了约5GB。许多旧文件仍然存在于C:\ProgramData\SF\Data中。
如何改善这种情况?
- 取消预配后,旧部署的文件为什么仍然在磁盘上? - 是否可以手动删除这些文件? - 是否可以自动取消预配?
在生产环境中,这种情况应该更加轻松(因为每台机器只有一个节点和更大的磁盘)。尽管如此,这只是拖延问题。避免这种情况会让我感到更安全。
编辑
看起来,Service Fabric会在一段时间后才删除部署包。我检查了测试集群一天后,所有未预配的包最终都消失了。