azure-service-fabric - 强制删除 Service Fabric 应用程序

标签 azure-service-fabric

我在开发过程中遇到问题,服务启动期间的异常导致应用程序卡在错误状态。这可以防止进一步调试。我似乎也无法通过集群管理门户删除应用程序,它只是超时。

我发现修复的唯一方法是重置集群,这需要几分钟时间,并且还会从集群中删除所有其他应用程序。

强制删除单个应用程序的正确方法是什么?

最佳答案

我创建了以下似乎可以解决问题的 powershell 脚本:

param([string]$applicationName = "SomeAppName", [string]$version = "1.0.0")

$applicationUri = "fabric:/" + $applicationName
$applicationTypeName = $applicationName + "Type"

Connect-ServiceFabricCluster localhost:19000

Write-Host ""
Write-Host "Removing $applicationUri from local cluster"

Remove-ServiceFabricApplication -ApplicationName fabric:/$applicationName

Write-Host ""
Write-Host "Removing $applicationTypeName (v$version) from local cluster"

Unregister-ServiceFabricApplicationType -ApplicationTypeName $applicationTypeName -ApplicationTypeVersion $version

Write-Host ""
Write-Host "Complete"

可以这样调用:

.\Delete-SF-App.ps1 -applicationName "MyService" -version "1.0.0"

编辑:

如果上述方法不起作用,则可以使用以下 powershell 命令删除单个副本:

$nodes = Get-ServiceFabricNode

foreach($node in $nodes)
{
    $replicas = Get-ServiceFabricDeployedReplica -NodeName $node.NodeName -ApplicationName $applicationName
    foreach ($replica in $replicas)
    {
        Remove-ServiceFabricReplica -ForceRemove -NodeName $node.NodeName -PartitionId $replica.Partitionid -ReplicaOrInstanceId $replica.ReplicaOrInstanceId
    }
}

关于azure-service-fabric - 强制删除 Service Fabric 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50730928/

相关文章:

c# - 服务结构可靠的集合和不变性

c# - 在 Service Fabric 应用程序中禁用 TLS 握手客户端证书请求

web-services - 将 soap 服务 (.asmx) 与 Azure 服务结构一起使用

azure-service-fabric - 在开发人员计算机上自动创建没有DefaultServices的服务

Azure Service Fabric 集群预配问题

c# - Service-Fabric 绑定(bind)到多个端点

azure - 是否可以将 NServiceBus 与 Azure Service Fabric 结合使用?

c# - 如何浏览Service Fabric上的应用程序?

azure-devops - 如何从 VSTS 发布管道部署 Service Fabric 应用程序?

c# - 如何对在其方法内获取另一个参与者的引用的参与者进行单元测试?