我正在自动将Service Fabric应用程序部署到Azure。到目前为止,我已经自动化:
现在,我正要连接到Fabric管理端点,以便可以部署应用程序。但是,如果在部署状态为“成功”后短时间内尝试连接,则会出现连接错误。如果我当时检查Service Fabric群集状态,则它仍在部署过程中。
我可以一直尝试每10秒进行一次连接,直到能够到达管理端点为止,但这似乎很脏,因为 actual 实际部署集群失败会导致构建超时。但是,由于管理端点尚不可用,因此我无法确定群集的运行状况,因此这似乎使我陷入了困境。
是否有一种标准,更清洁的方法来确定Service Fabric群集是否已准备好连接到我,以便部署我的应用程序?
答案 0 :(得分:0)
首先,这个假设来自哪里:
but this seems dirty, since actual failures to deploy the cluster would eventuate in a build timeout.
如果arm模板成功部署-SF集群将出现,就是这样。其次,可以使用Get-AzResource
在Azure中轮询SF资源并确定其状态。使用有限次数的尝试进行指数回退。
这整个方法毫无意义。您的应用程序管道不应依赖于基础结构管道。因此,一旦手臂模板部署完成且没有错误,则应将基础结构管道标记为已完成。因为此超时将在第一次运行时发生(我什至不确定,我只是在引用您)。同一群集的所有后续手臂模板更新不会使群集管理端点无法访问。