【问题标题】:Service fabric change application count without having to redeploy the whole packageService Fabric 更改应用程序计数,而无需重新部署整个包
【发布时间】:2019-11-07 01:29:07
【问题描述】:

可以减少托管在 Service Fabric 中的应用程序的实例计数,而无需重新部署整个包。

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

【问题讨论】:

  • 你说的是无状态服务实例数吗?

标签: azure-service-fabric


【解决方案1】:

这是我正在使用的 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. 完成后,再次运行Get-ServiceFabricApplication 验证参数。

【讨论】:

    猜你喜欢
    • 2021-09-14
    • 1970-01-01
    • 1970-01-01
    • 2018-09-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-25
    • 1970-01-01
    相关资源
    最近更新 更多