我有下一个 azure 设置:
具有自己的 vnet 的应用程序网关平衡器。
应用程序网关后端池中的两个虚拟机,它们有自己的 vnet 和应用于虚拟机的网络安全组。
主要问题: 如何指示网络安全组仅允许来自应用程序网关的 http/https 流量?
我试过的:
a) 在源标记为 AzureBalancer 的网络安全组中添加入站规则。不管用 。探针告诉我 vm 处于不健康状态。
b) 我已经对两个 vnet 进行了对等连接,并且我添加了一个具有源标记 VirtualNetwork 的入站规则。同上,探测器告诉我虚拟机处于不健康状态。
c) 我在 nsg 中添加了一个入站规则,只允许来自应用程序网关的公共 ip 的流量。这工作正常,探测器看到虚拟机处于健康状态。
唯一的问题是应用网关的公网ip地址是动态的,不能设为静态。
因此,当 ip 更改时,我的规则将不起作用。
我很想知道如何使这个设置工作。
我在 azure 文档站点上看到的所有示例都包含一个具有多个子网的 vnet。
我正在将 ASP.Net 网站迁移到 Azure 托管。我正在使用具有 SSL 卸载功能的应用程序网关,因此我的个人负载平衡 Web 服务器没有安装 SSL 证书。由于 SSL 是在应用程序网关上处理的,我如何向客户端请求 SSL 并将其从 HTTP 重定向到 HTTPS?
我已经在 Azure 资源组(无 ASE)中使用 WAF(默认检测模式)创建了一个应用程序网关,并带有应用服务 Web 应用后端池成员/目标MS 链接(通过 Azure 门户和 PowerShell 遵循严格说明)。
我没有使用任何自定义域,只是使用基本配置,我的 backendPool 成员是 Azure Web App,即 mywebapp.azurewebsites.net(Web App 是一个基本的 ASP.NET 测试站点,可以在其 .azurewebsites.net 地址上正常运行)。
MS 应用程序网关文档指出,他们现在支持应用程序服务作为后端池目标(FQDN/我使用的)。
据我所知,我的基本 httpSettings、基本侦听器和规则都设置正确(HTTP 端口 80.
因此,本质上我的应用程序网关应该侦听附加到它的公共 IP 的端口 80,并将任何传入请求转发到 backendPool 成员(Web 应用程序)。
但是,当我尝试访问网关公共 IP(或 DNS 地址)时,我不断收到“找不到 Azure 404 网站”的消息。页面/错误。
奇怪的是,如果我从 Azure 门户停止 Web 应用程序,我会收到 502/错误网关错误,直到我重新启动 Web 应用程序并返回 404 页面。
我不知道我在这里是否遗漏了什么?有人有什么建议吗?我似乎无法让这个工作。
gateway azure azure-web-app-service azure-application-gateway
正在处理一个项目,以将一个宁静的API应用程序和单独的TCP服务部署到Azure容器实例。由于遗留原因,TCP服务需要一个静态Ipv4地址。
我试图隔离我的选项,以将静态公共IP地址分配给Azure容器实例上托管的TCP服务。有什么选择 ?
具有静态公共IP地址的已部署Azure应用程序网关。App Gateway允许将后端池定向到IP或FQDN端点。这似乎是可操作的(请参见图)。后端池中的所有选项似乎都只允许HTTP和HTTPS,而不允许自定义端口。如果TCP服务可以在80上侦听,而Web API在443上侦听,则可以对此进行操作。应用程序网关是仅用于HTTP和HTTPS流量的第7层资源。
Azure负载平衡器。只能针对VM,可用性集或VM缩放集。
为资源分配静态地址。不允许用于容器实例。
交通经理。似乎不是此部署的正确资源类型。
参见图。当我通过BASH会话查询时,API和TCP SERVICE的容器实例具有相同的专用IP地址。建议将它们托管在附图中的同一主机上(标记为容器组)。不知道这是不是正确的标签,抱歉,我是Container tech的新手。
感谢您的任何建议。史考特
containers azure azure-traffic-manager azure-application-gateway azure-load-balancer
我有一个用于 docker 的 Web 应用程序,当前运行 django,gunicorn 作为 wsgi 服务器,Nginx 作为反向代理。我没有通过 Nginx 提供任何静态资产,并且 SSL 由 Azure 负责。
所以我的问题是,如果我使用 Azure 应用程序网关(有或没有 WAF),我可以删除 Nginx 吗?我看不出它有任何用处,除非我想使用缓存,但我不想使用缓存。HTTP/2 也由应用程序网关提供。
我已经在 Azure 中的几乎五个不同区域设置了应用程序网关,每次 Azure 大约需要 15-20 分钟才能完成设置。
AWS 几分钟内就能完成,为什么 Azure 需要这么长时间?
如何在 Azure 应用程序网关上启用 CORS?我有一个 signalhub 作为 Dapr 应用程序在 Azure kubernetes 服务上运行。该应用程序已正确设置所有 .net cors 策略,问题似乎是从 JavaScript 到网关。
最近,我正在使用 Azure 应用程序网关,当我尝试上传文件时,我收到响应 413 实体太大。我读到了有关文件上传的限制是 2GB,但我很困惑,因为我成功上传了 3.2GB 的文件。这个限制有变化吗?当我尝试上传 4.6 GB 的文件时失败。我使用的是 Standard_v2 SKU 尺寸。
我有一些 Terraform 代码,它在应用程序网关后面部署 AKS 以及与该问题无关的其他基础设施。该代码基于https://learn.microsoft.com/en-us/azure/developer/terraform/create-k8s-cluster-with-aks-applicationgateway-ingress。如果需要,我可以提供实际文件。
所有基础设施都在初始创建时成功部署,但是当我配置 AGIC Pod 并部署 Nginx 等应用程序时,它会在应用程序网关上创建 Terraform 未知的资源,例如路由规则,因此如果我运行 Terraform 部署,它将恢复到代码中的内容(无论我是否做了任何更改)。这会导致通过入口控制器路由到我的应用程序返回 502,直到重新部署为止。
我该如何解决这个问题?
> terraform apply -var-file=".\env\DEV.tfvars"
Acquiring state lock. This may take a few moments...
azurerm_resource_group.k8snetworkingrg: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG]
azurerm_resource_group.k8srg: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sRG]
azurerm_resource_group.acrrg: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sCRRG]
azurerm_resource_group.k8ssupportrg: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sSupportRG]
azurerm_container_registry.acr: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sCRRG/providers/Microsoft.ContainerRegistry/registries/DEVK8sCR]
azurerm_public_ip.publicip: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG/providers/Microsoft.Network/publicIPAddresses/DEV-K8sPublicIP]
azurerm_virtual_network.vnet: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG/providers/Microsoft.Network/virtualNetworks/DEV-K8sVNET]
azurerm_log_analytics_workspace.log: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourcegroups/DEV-k8ssupportrg/providers/microsoft.operationalinsights/workspaces/DEV-k8sloganalyticsworkspace]
data.azurerm_subnet.vnet_subnet1: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG/providers/Microsoft.Network/virtualNetworks/DEV-K8sVNET/subnets/DevTestSubnet1]
azurerm_virtual_network_peering.vnet_peer: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG/providers/Microsoft.Network/virtualNetworks/DEV-K8sVNET/virtualNetworkPeerings/DevTest-K8stoDevTest-Peering]
data.azurerm_subnet.vnet_subnet_ag: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG/providers/Microsoft.Network/virtualNetworks/DEV-K8sVNET/subnets/DevTestAppGatewaySubnet]
azurerm_application_gateway.appgateway: Refreshing state... [id=/subscriptions/<Subscription_ID>/resourceGroups/DEV-K8sNetworkingRG/providers/Microsoft.Network/applicationGateways/DEV-K8sAppGateway] …Run Code Online (Sandbox Code Playgroud) azure terraform azure-application-gateway terraform-provider-azure
我按照这里的文档https://docs.microsoft.com/en-us/azure/application-gateway/application-gateway-create-multisite-portal但仍然收到错误:
Azure 应用程序网关错误 502 - Web 服务器在充当网关或代理服务器时收到无效响应。您要查找的页面有问题,无法显示。当 Web 服务器(同时充当网关或代理)联系上游内容服务器时,我
有什么帮助吗?