如何重新启动 Service Fabric 应用程序

Posted

技术标签:

【中文标题】如何重新启动 Service Fabric 应用程序【英文标题】:How to restart a Service Fabric Application 【发布时间】:2019-02-02 09:09:39 【问题描述】:

我有一个运行无状态 Service Fabric 应用程序的 gMSA 服务帐户。该帐户最近已作为成员添加到新的安全组。我们没有看到该应用程序正在运行,我认为这是因为用户声称是在应用程序启动时加载的。我已经看到要让它在 Windows 服务上工作,我们需要重新启动服务(mmc-> 服务,右键单击重新启动)。我想在 Service Fabric 中做类似的事情。

我看到了重新启动节点的选项,但这是一种比我想使用的更严厉的方法。这是在生产中,我想确定问题的解决方案。该节点上的其他应用程序没有问题,因此我宁愿不要将它们关闭。

Service Fabric Deactivate (pause) vs Deactivate (restart)?

提前致谢, 格雷格

【问题讨论】:

【参考方案1】:

您要查找的是Restart-ServiceFabricDeployedCodePackage 命令。

Restart-ServiceFabricDeployedCodePackage cmdlet 会结束代码包进程,这会重新启动该进程中托管的所有用户服务副本。本次重启模拟集群中的代码包进程故障,测试你的服务的故障转移恢复路径。

您可以指定一个代码包,也可以指定一个 ReplicaSelector 来重新启动副本所在的节点和代码包组合。这简化了对主主机节点的测试,无需在重新启动该节点之前确定哪个 Service Fabric 节点是主节点。

【讨论】:

谢谢,这并没有解决我的问题,但它确实回答了我的问题 :) 这个问题与 SF 无关。

以上是关于如何重新启动 Service Fabric 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

在生产中正常重新启动 Service Fabric 应用程序以反映对数据包的更新

Service Fabric 中的 Stateless Worker 服务在同一进程中重新启动

如何使用Powershell更新Service Fabric应用程序参数

启动 Service Fabric 群集时出错 (v 1.5.175)

管理来宾可执行文件依赖项 - 本地 Service Fabric

如何在 Service Fabric 中安装批处理文件