如何将Azure Functions从应用服务计划迁移至消耗计划
将Azure Function Apps从应用服务计划迁移至独立消耗计划的操作步骤
Azure官方不支持直接将应用服务计划中的Function App反向迁移到消耗计划,需通过重新部署+配置迁移的方式完成,以下是具体操作步骤:
1. 创建独立的消耗计划
- 为每个需要迁移的Function App单独创建消耗计划:在Azure门户搜索「应用服务计划」,点击「创建」,选择「消耗」计划类型,配置对应区域、计划名称,完成创建(建议与原Function App同区域,减少网络延迟)。
2. 导出原Function App的配置与代码
- 导出应用配置:进入原Function App的「配置」页面,点击「导出设置」,将包含连接字符串、环境变量的配置保存为JSON文件。
- 导出代码:
- 若使用本地代码仓库,确保代码已同步至本地;
- 若代码仅部署在Azure,可通过「高级工具(Kudu)」进入站点目录,下载
site/wwwroot下的所有文件; - 或使用Azure CLI命令:
az functionapp deployment source export --name <原FunctionApp名称> --resource-group <资源组名称> --output-dir <本地目录>。
3. 创建新Function App并关联目标消耗计划
- 在Azure门户创建新Function App,选择已创建的独立消耗计划,配置与原App一致的运行时栈、存储账户(可复用原存储账户或新建),完成创建。
- 导入配置:进入新Function App的「配置」页面,点击「导入设置」,上传之前保存的JSON配置文件,确认导入所有应用设置。
4. 部署代码到新Function App
- 本地代码部署:使用VS Code Azure扩展直接部署,或通过Azure CLI命令配置本地Git部署后推送代码:
az functionapp deployment source config-local-git --name <新FunctionApp名称> --resource-group <资源组名称>; - 压缩包部署:将从Kudu下载的代码打包为ZIP,通过新Function App的「部署中心」上传ZIP包,或在Kudu的「部署选项」中上传部署。
5. 验证新Function App功能
- 触发函数测试事件,确认业务逻辑正常运行;
- 检查应用日志,排查配置或代码报错;
- 验证连接字符串、环境变量等配置是否生效,确保依赖服务(如存储、数据库)连接正常。
6. 流量切换与清理(可选)
- 若需平滑迁移,将原Function App的自定义域名绑定到新App,更新DNS解析;
- 待流量完全切换、新App稳定运行后,删除原应用服务计划及Function App资源。
内容的提问来源于stack exchange,提问作者JeffC
相关产品推荐
相关产品推荐

