教程:升级 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 网格
- 缩放在 Service Fabric 网格中运行的应用程序
- 升级 Service Fabric 网格中的应用程序
- 删除应用程序
Service Fabric 网格当前为预览版。 需同意补充使用条款才可使用预览版。 在正式版 (GA) 推出之前,此功能的某些方面可能会有所更改。
先决条件
在开始学习本教程之前:
如果没有 Azure 订阅,可以在开始前创建免费帐户。
打开 Azure Cloud Shell 或者在本地安装 Azure CLI 和 Service Fabric 网格 CLI。
升级应用程序配置
将应用程序部署到 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 网格中的应用程序
转到下一教程: