教程:升级 Service Fabric 网格中运行的 Service Fabric 应用程序

重要

Azure Service Fabric 网格的预览版已停用。 不允许再通过 Service Fabric 网格 API 进行新的部署。 对现有部署的支持将会持续到 2021 年 4 月 28 日。

有关详细信息,请参阅 Azure Service Fabric 网格预览版停用

本教程是一个系列中的第三部分。 本教程介绍如何通过增加分配的 CPU 资源来升级之前部署到 Service Fabric 网格中的 Service Fabric 应用程序。 完成本教程后,你将拥有一个使用更高 CPU 资源运行的 Web 前端服务。

在该系列的第三部分中,你会学习如何:

  • 更改应用程序配置
  • 升级 Service Fabric 网格中的应用程序

在此系列教程中,你会学习如何:

Service Fabric 网格当前为预览版。 需同意补充使用条款才可使用预览版。 在正式版 (GA) 推出之前,此功能的某些方面可能会有所更改。

先决条件

在开始学习本教程之前:

升级应用程序配置

将应用程序部署到 Service Fabric 网格的一个主要优势是能够轻松地更新应用程序配置。 例如,更新服务的 CPU 或内存资源。

本教程使用“待办事项列表”示例作为示例,该示例以前已部署,现在应该处于运行状态。 应用程序有两项服务:WebFrontEnd 和 ToDoService。 每项服务在起初部署时的 CPU 资源数为 0.5。 若要查看 WebFrontEnd 服务的 CPU 资源数,请运行以下命令:

az mesh service show --resource-group myResourceGroup --name WebFrontEnd --app-name todolistapp

在应用程序资源的部署模板中,每项服务都有一个 CPU 属性,该属性可以用来设置请求的 CPU 资源数。 应用程序由多项服务组成,每项服务都具有唯一的 CPU 设置,这些服务可以一起进行部署和管理。 为增加 Web 前端服务的 CPU 资源数,请在部署模板或参数文件中修改 cpue 值。 然后,升级应用程序。

修改部署模板参数

当模板中有希望在部署应用程序后进行更改的值,或者希望可以选择在每个部署的基础上进行更改时(如果计划重用此模板进行其他部署),最佳做法是参数化这些值。

以前,应用程序使用 mesh_rp.windows.json 部署模板mesh_rp.windows.parameter.json 参数文件进行部署。

在本地打开 mesh_rp.windows.parameter.json 参数文件并将 frontEndCpu 值设置为 1

      "frontEndCpu":{
        "value": "1"
      }

保存对参数文件所做的更改。

frontEndCpu 参数在 mesh_rp.windows.json 部署模板的 parameters 节中声明

"frontEndCpu": {
    "defaultValue": "0.5",
    "type": "string",
    "metadata": {
        "description": "The CPU resources for the front end web service."
    }
}

WebFrontEnd 服务代码Packages-resources-requests-cpu>>> 属性引用 frontEndCpu 参数:

    "services": [
          {
            "name": "WebFrontEnd",
            "properties": {
              "description": "WebFrontEnd description.",
              "osType": "Windows",
              "codePackages": [
                {
                  "name": "WebFrontEnd",
                  "image": "[parameters('frontEndImage')]",
                  ...
                  "resources": {
                    "requests": {
                      "cpu": "[parameters('frontEndCpu')]",
                      "memoryInGB": "[parameters('frontEndMemory')]"
                    }
                  },
                  "imageRegistryCredential": {
                    "server": "[parameters('registryServer')]",
                    "username": "[parameters('registryUserName')]",
                    "password": "[parameters('registryPassword')]"
                  }
                }
              ],
              ...

升级应用程序

应用程序正在运行时,可以将其升级,方法是重新部署模板和更新的参数文件:

az mesh deployment create --resource-group myResourceGroup --template-file c:\temp\mesh_rp.windows.json --parameters c:\temp\mesh_rp.windows.parameters.json

这样就会开始应用程序的滚动升级,你会看到 CPU 资源数在数分钟内增加。 若要查看 WebFrontEnd 服务的 CPU 资源数,请运行以下命令:

az mesh service show --resource-group myResourceGroup --name WebFrontEnd --app-name todolistapp

后续步骤

本教程的此部分介绍了如何:

  • 更改应用程序配置
  • 升级 Service Fabric 网格中的应用程序

转到下一教程: