Azure应用程序网关WAF_V2无法进行ARM部署

如何解决Azure应用程序网关WAF_V2无法进行ARM部署

在部署具有多个侦听器的App网关waf_v2时出错。对于单个列表器,它工作正常。

错误:

{“代码”:“ DeploymentFailed”,“消息”:“至少一项资源部署操作失败。请列出部署操作以了解详细信息。请参阅https://aka.ms/DeployOperations以获取使用详细信息。”,“详细信息”:[ {“代码”:“ BadRequest”,“消息”:“ {\ r \ n”错误“:{\ r \ n”代码“:” ApplicationGatewayHttpListenersUsingSameFrontendPortAndFrontendIpConfig“,\ r \ n”消息“:”应用程序的两个Http侦听器网关journal-listner和attachmentmgmt-listner使用相同的前端端口/subscriptions/77585cb5-cc1b-47a6-b60d-4c1ec4b078fc/resourceGroups/drgr001appgatewaydevtest-au/providers/Microsoft.Network/applicationGateways/bo-appgw-waf-v2-entdev1 / frontendPorts / frontendPorts和FrontendIpConfiguration /subscriptions/77585cb5-cc1b-47a6-b60d-4c1ec4b078fc/resourceGroups/drgr001appgatewaydevtest-au/providers/Microsoft.Network/applicationGateways/bo-appgw-waf-v2-entdev1/frontendIPConfigurations/P。 r \ n“详细信息”:[] \ r \ n} \ r \ n}“}]}

模板代码:

  // Application Gateway
{
  "name": "[parameters('applicationGatewayName')]","type": "Microsoft.Network/applicationGateways","apiVersion": "2020-03-01","location": "[parameters('location')]","zones": "[parameters('availabilityZones')]","properties": {
    "sku": {
      "name": "WAF_v2","tier": "WAF_v2","capacity": "[parameters('capacity')]"
    },"sslCertificates": [
      {
        "name": "[parameters('certName')]","properties": {
          "data": "[parameters('certData')]","password": "[parameters('certPassword')]"
        }
      }
    ],"gatewayIPConfigurations": [
      {
        "name": "gatewayIp","properties": {
          "subnet": {
            "id": "[variables('subnetRef')]"
          }
        }
      }
    ],"trustedRootCertificates": "[parameters('trustedRootCertificates')]","frontendIPConfigurations": [
      {
        "name": "PublicFrontendIp","properties": {
          "privateIPAllocationMethod": "Dynamic","publicIPAddress": {
            "id": "[parameters('publicIpResourceId')]"
          }
        }
      },{
        "name": "PrivateFrontendIp","properties": {
          "privateIPAddress": "[parameters('privateIPAddress')]","privateIPAllocationMethod": "Static","subnet": {
            "id": "[variables('subnetRef')]"
          }
        }
      }
    ],"frontendPorts": [
      {
        "name": "frontendPorts","properties": {
          "Port": 443
        }
      }
    ],"backendAddressPools": "[parameters('backendAddressPools')]","probes": "[parameters('probes')]","copy": [
      {
        "name": "backendHttpSettingsCollection","count": "[length(parameters('backendHttpSettings'))]","input": {
          "name": "[parameters('backendHttpSettings')[copyIndex('backendHttpSettingsCollection')].name]","properties": {
            "port": 443,"pickHostNameFromBackendAddress": true,"protocol": "Https","probeEnabled": "[parameters('backendHttpSettings')[copyIndex('backendHttpSettingsCollection')].probeEnabled]","probe": {
              "id": "[resourceId('Microsoft.Network/applicationGateways/probes',parameters('applicationGatewayName'),parameters('backendHttpSettings')[copyIndex('backendHttpSettingsCollection')].probe)]"
            }
          }
        }
      },{
        "name": "httpListeners","count": "[length(parameters('httpListeners'))]","input": {
          "name": "[parameters('httpListeners')[copyIndex('httpListeners')].name]","properties": {
            "protocol": "Https",// Set hostname if it exists
            "hostName": "[if(contains(parameters('httpListeners')[copyIndex('httpListeners')],'hostName'),parameters('httpListeners')[copyIndex('httpListeners')].hostName,'')]","sslCertificate": {
              "id": "[concat(variables('applicationGatewayId'),'/sslCertificates/',parameters('httpListeners')[copyIndex('httpListeners')].sslCertificateName)]"
            },"frontendIPConfiguration": {
              "id": "[concat(variables('applicationGatewayId'),'/frontendIPConfigurations/PrivateFrontendIp')]"
            },"frontendPort": {
              "id": "[concat(variables('applicationGatewayId'),'/frontendPorts/frontendPorts')]"
            }
          }
        }
      },{
        "name": "requestRoutingRules","count": "[length(parameters('requestRoutingRules'))]","input": {
          "name": "[parameters('requestRoutingRules')[copyIndex('requestRoutingRules')].name]","properties": {
            "ruleType": "Basic","backendAddressPool": {
              "id": "[concat(variables('applicationGatewayId'),'/backendAddressPools/',parameters('requestRoutingRules')[copyIndex('requestRoutingRules')].backendpoolName)]"
            },"backendHttpSettings": {
              "id": "[concat(variables('applicationGatewayId'),'/backendHttpSettingsCollection/',parameters('requestRoutingRules')[copyIndex('requestRoutingRules')].backendHttpSetting)]"
            },"httpListener": {
              "id": "[concat(variables('applicationGatewayId'),'/httpListeners/',parameters('requestRoutingRules')[copyIndex('requestRoutingRules')].httpListener)]"
            }
          }
        }
      }
    ],"redirectConfigurations": "[parameters('redirectConfigurations')]","enableHttp2": "[parameters('enableHttp2')]","webApplicationFirewallConfiguration": "[variables('webApplicationFirewallConfiguration')]","urlPathMaps": "[parameters('urlPathMaps')]","authenticationCertificates": "[parameters('authenticationCertificates')]","sslPolicy": {
      "policyType": "Predefined","policyName": "AppGwSslPolicy20170401S"
    },"rewriteRuleSets": "[parameters('rewriteRuleSets')]"
  }
}

使用的参数:

"backendHttpSettings": {
  "value": [
    {
      "name": "https-attachment","probeEnabled": true,"probe": "attachment-probe"
    },{
      "name": "https-journal","probe": "journal-probe"
    }
  ]
},"backendAddressPools": {
  "value": [
    {
      "name": "AttachmentServicePool","properties": {
        "backendAddresses": [
          {
            "fqdn": "attachmentmgmt-svc-api-dev-euw.aseentdev.sys.dom"
          }
        ]
      }
    },{
    "name": "journalServicePool","properties": {
        "backendAddresses": [
          {
            "fqdn": "journalmgmt-svc-api-dev-euw.aseentdev.sys.dom"
          }
        ]
      }
    }
  ]
},"availabilityZones": {
  "value": [
    1,2
  ]
},"probes": {
  "value": [

    {
      "name": "attachment-probe","properties": {
        "protocol": "Https","PickHostNameFromBackendHttpSettings": true,"path": "/index.htm","interval": 5,"timeout": 10,"match": {
          "statusCodes": [
            200
          ],"body": "SUCCESS"
        }
      }
    },{
      "name": "journal-probe","body": "SUCCESS"
        }
      }
    }
  ]
},"httpListeners": {
  "value": [
    {
      "name": "attachmentmgmt-listner","sslCertificateName": "abc"
    },{
      "name": "journal-listner","sslCertificateName": "abc"
    }
  ]
},"urlPathMaps": {
  "value": []
},"requestRoutingRules": {
  "value": [

    {
      "name": "attachment-routing-rule","backendpoolName": "AttachmentServicePool","backendHttpSetting": "https-attachment","httpListener": "attachmentmgmt-listner"
    },{
      "name": "journal-routing-rule","backendpoolName": "journalServicePool","backendHttpSetting": "https-journal","httpListener": "journal-listner"
    }
  ]
},

解决方法

您不能在同一端口上创建两个基本侦听器。多站点侦听器可以使用不同的端口或两个不同的主机名。

enter image description here

,

通过传递httplistner主机名的参数文件更改工作正常。

"httpListeners": {
"value": [
{
  "name": "listner1","sslCertificateName": "ABC","hostName": "wb.abc.dom"
},{
  "name": "listner2","hostName": "wb1.abc.dom"
}  
]
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


依赖报错 idea导入项目后依赖报错,解决方案:https://blog.csdn.net/weixin_42420249/article/details/81191861 依赖版本报错:更换其他版本 无法下载依赖可参考:https://blog.csdn.net/weixin_42628809/a
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下 2021-12-03 13:33:33.927 ERROR 7228 [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPL
错误1:gradle项目控制台输出为乱码 # 解决方案:https://blog.csdn.net/weixin_43501566/article/details/112482302 # 在gradle-wrapper.properties 添加以下内容 org.gradle.jvmargs=-Df
错误还原:在查询的过程中,传入的workType为0时,该条件不起作用 <select id="xxx"> SELECT di.id, di.name, di.work_type, di.updated... <where> <if test=&qu
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist); ^ server.c: 在函数‘hasActiveC
解决方案1 1、改项目中.idea/workspace.xml配置文件,增加dynamic.classpath参数 2、搜索PropertiesComponent,添加如下 <property name="dynamic.classpath" value="tru
删除根组件app.vue中的默认代码后报错:Module Error (from ./node_modules/eslint-loader/index.js): 解决方案:关闭ESlint代码检测,在项目根目录创建vue.config.js,在文件中添加 module.exports = { lin
查看spark默认的python版本 [root@master day27]# pyspark /home/software/spark-2.3.4-bin-hadoop2.7/conf/spark-env.sh: line 2: /usr/local/hadoop/bin/hadoop: No s
使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams['font.sans-serif'] = ['SimHei'] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -> systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping("/hires") public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate<String
使用vite构建项目报错 C:\Users\ychen\work>npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-