服务结构更改应用程序计数,而不必重新部署整个程序包

时间:2019-06-25 08:48:40

标签: azure-service-fabric

可以减少Service架构中托管的应用程序的实例数量,而不必重新部署整个程序包。

当我部署它时,应用程序实例计数设置为-1。现在我想将其减少到3

1 个答案:

答案 0 :(得分:0)

这是我正在使用的powershell脚本。它将xml转换为powershell参数,并使用它运行Start-ServiceFabricApplicationUpgrade

Param
(
    [Parameter(Mandatory=$true)]
    [String]
    $ApplicationName,

    [Parameter(Mandatory=$true)]
    [String]
    $ApplicationTypeVersion,

    [Parameter(Mandatory=$true)]
    [String]
    $ApplicationParameterFile
)
function Read-ApplicationParameters
{
    Param (
        [ValidateScript({Test-Path $_ -PathType Leaf})]
        [String]
        $ApplicationParameterFile
    )
    $applicationParameterXml = [Xml] (Get-Content $ApplicationParameterFile)
    $applicationParameter = @{}
    $applicationParameterXml.Application.Parameters.ChildNodes | Foreach {$applicationParameter[$_.Name] = $_.Value}
    return $applicationParameter
}
$appParams = Read-ApplicationParameters $ApplicationParameterFile
Start-ServiceFabricApplicationUpgrade -ApplicationName $ApplicationName -ApplicationTypeVersion $ApplicationTypeVersion -ApplicationParameter $appParams -UnmonitoredAuto
  1. 获取最新的应用程序参数xml文件
  2. 修改您要更新的值(保持另一个不变)
  3. 连接到群集
  4. 运行Get-ServiceFabricApplication
  5. 运行上面的脚本,并从第4点的执行中获取ApplicationName,ApplicationTypeVersion值。ApplicationParameterFile是新修改的xml文件的路径。
  6. 使用Get-ServiceFabricApplicationUpgrade -ApplicationName fabric:/MyApp
  7. 进行监视器升级
  8. 完成后,再次运行Get-ServiceFabricApplication来验证参数。