You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure VM规模集部署Flask应用并配置负载均衡与启动脚本?

Azure VMSS+负载均衡器部署Flask应用指南

一、关联负载均衡器与VMSS,实现流量分发

你已经创建了LB、VMSS和VNet,接下来完成以下配置:

  • 将VMSS加入LB后端池:进入VMSS资源页,选择「负载均衡」,关联已创建的负载均衡器,指定LB中对应的后端地址池(若LB无后端池,先在LB的「后端池」页面创建,选择VMSS所在的VNet子网)。
  • 配置健康探测:在LB的「健康探测」中新建探测规则,协议选HTTP/HTTPS,端口填Flask应用的监听端口(如5000),探测路径建议设为/health(需在Flask中添加健康检查接口:@app.route('/health')返回200 OK),确保LB能识别实例是否正常运行。
  • 创建负载均衡规则:在LB的「负载均衡规则」中新建规则,前端端口设为80(或443,若用HTTPS),后端端口匹配Flask的监听端口,后端池选择关联的VMSS池,健康探测选刚才创建的规则,会话持久性按需选择(分布式场景建议选「无」)。

二、修正Flask应用监听地址

单实例能通过公网IP访问,但要接收LB分发的流量,必须让Flask监听实例的所有网卡地址,启动命令改为:

app.run(host='0.0.0.0', port=5000)

建议用systemd将Flask配置为后台服务,避免实例重启后服务中断。

三、为VMSS添加启动脚本(ARM/Terraform)

ARM模板实现

在VMSS的virtualMachineProfile节点下添加自定义脚本扩展,示例片段:

"virtualMachineProfile": {
  "extensionProfile": {
    "extensions": [
      {
        "name": "flask-setup-script",
        "properties": {
          "publisher": "Microsoft.Azure.Extensions",
          "type": "CustomScript",
          "typeHandlerVersion": "2.1",
          "autoUpgradeMinorVersion": true,
          "settings": {
            "fileUris": ["https://your-storage-blob-url/setup-flask.sh"],
            "commandToExecute": "./setup-flask.sh"
          }
        }
      }
    ]
  }
}

setup-flask.sh脚本可包含安装Python依赖、拉取Flask代码、配置systemd服务等操作。

Terraform实现

在azurerm_virtual_machine_scale_set资源中添加自定义脚本扩展块:

resource "azurerm_virtual_machine_scale_set" "flask_vmss" {
  # 基础VMSS配置(如SKU、存储、网络等)...

  extension {
    name = "flask-setup-script"

    publisher = "Microsoft.Azure.Extensions"
    type      = "CustomScript"
    type_handler_version = "2.1"

    settings = jsonencode({
      fileUris = ["https://your-storage-blob-url/setup-flask.sh"]
      commandToExecute = "./setup-flask.sh"
    })
  }
}

若脚本无需公开,可将脚本内容写入protected_settings的commandToExecute字段,或使用存储账户SAS令牌限制访问。

四、自动缩放配置提示

在VMSS的「自动缩放」页面设置缩放规则,针对N系列GPU实例,建议基于GPU使用率设置阈值(如使用率>70%时增加实例,<30%时减少),也可结合CPU使用率或自定义指标(如请求队列长度),确保流量能被动态扩容的实例承接。

内容的提问来源于stack exchange,提问作者Ashcom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 08:35:29