一,引言
今天,我们学习一个新的知识点-----Azure Application Gateway,通过Azure 应用程序网关为我么后端的服务提供负载均衡的功能。我们再文章头中大概先了解一下什么是应用程序网关。
Azure Application Gateway 是一种应用程序层(OSI 层 7)负载均衡,Azure 应用程序网关可以执行基于 URL 的路由。而上一篇介绍的 Azure Load Balancer 则是传输层(OSI 层 4 - TCP 和 UDP)进行操作,并基于源 IP 地址和端口将流量路由到目标 IP 地址和端口。简单来讲,四层就是基于IP+端口的负载均衡;七层就是基于URL等应用层信息的负载均衡。通过微软官方提供的文档,我们可以看到 Applcation Gateway 做了如下优化。
1,SSL/TLS终结
2,SKU为 “Standard” 或者 “WAF_v2” 的应用程序网关或者WAF 部署支持自动缩放,可根据变化的流量负载模式进行扩展或缩减。 自动缩放还无需在预配期间要求选择部署大小或实例计数。
3,区域冗余
4,WAF防火墙
5,AKS的入口控制器,应用程序网关入口控制器 (AGIC) 允许你使用应用程序网关作为 Azure Kubernetes 服务 (AKS) 群集的入口。
6,基于URL的路由
7,支持Websocker
........ 等等
接下来,我们依旧看看当前设计的基础设施架构图,我们今天只去了解它的 HTTP 7层的负载均衡
--------------------我是分割线--------------------
--------------------我是分割线--------------------
Azure Web App 和Azure VM 部署系列:
1,Azure Web App(一)发布你的Net Core Web 项目
2,Azure Web App(二)使用部署槽切换部署环境代码
3,Azure Web App(三)切换你的Net Core Web 项目的数据库连接字符串
4,Azure Traffic Manager(一) 为我们的Web项目提供负载均衡
5,Azure Traffic Manager(二) 基于权重与基于优先级的路由策略为我们的Web项目提供负载均衡
6,Azure Load Balance(一) 为我们的Web项目提供负载均衡
7,Azure Load Balancer(二) 基于内部的负载均衡来转发访问请求
8,Azure Application Gateway(一)对后端 Web App 进行负载均衡
9,Azure Application Gateway(二)对后端 VM 进行负载均衡
二,正文
Azure Portal 首页,点击 “Create a resource” 创建资源
搜素框输入 “Application Gateway”,进行搜索,点击 “Create”,进行创建资源
Resource group 选择创一个新的 “Web_Test_AG_RG”
Application gateway name:“cnbateweb_applicationgateway”
Region:“East Asia”
Tier:“Standard”
其他都是默认选项
Virtual network 选择创建一个新的网络
Name:“cnbateblogweb_NET”
Subnet name:“cnbateblogweb_SubNET”
Address range:“10.0.1.0/24”
点击 “OK”
点击 “Next:Frontends”,设置应用程序网关的 前端
Frontend IP address type:Public
Public IP address:我们选择创建一个新的公共的 Public IP
我们点击 “Next:Backends”
点击 “Add a Backend pool” 需要添加后端池
我们可以看到应用程序网关的后端池的目标类型,也就是Target type 我们选择 “App Service”
Name:“cbbateblogweb_applicationgateway_backendpool”
Add backend pool with targets 选择:“No”
Target 选择之前再介绍 Web App 是创建的 “cnbateblogweb01” 和 “cnbateblogweb02”
我们可以刚刚添加的两个应用程序后端池目标,点击 “Add”
点击 “Next:Configuration>” 进行下一步配置路由信息
点击 “Add a routing rule”,添加路由信息
Rule name:“cnbateblogweb_applicationgateway_rule”
Listener name:‘cnbateblogweb_httplisten"
Frontend IP 选择之前创建好的 Frontends 的 Public IP
其他的选择默认
点击 “Backend target”的 Tab 页
Target type 选择 “Backend pool”
Backend target 选择 创建好的后端池 “cbbateblogweb_applicationgateway_backendpool”
HTTP setting 点击 “Add new” 创建一个新的 HTTP Setting
Http setting name:“cnbateblogweb_applicationgateway_httpsetting”
Backend protocol 选择:HTTP
Backend port :"80"
Host name 配置信息
Overrider with new host name (覆盖为新的主机名) 选择:“Yes”
Host name override (覆盖主机名)选择:“Pick host name from backend target(从后端池选取主机名)”
其他选择默认,点击 ”Add“,添加 HTTP setting,点击 ”Add“ 添加 一条路由规则
我们可以看到 “Frontends” 的信息,”Routing rules“ 信息,”Backend pools“ 信息
点击 “Next:Tags”
点击”Next:Review + create“
等待预校验完成后,我们点击”Create“ 进行创建
等待创建完成后,我们跳转到创建好的 Azure Application Gateway 中看看
我们找到 健康检查,我们重新设置一下默认的参数,选择 “Settings=>Health probes” ,点击当前圈中的默认的健康的配置
我们可以看到默认的一些配置,比如 超时时间,不健康的阈值次数,间隔时间等等信息
接下来,我们进行修改一下(此步骤大家在实践的过程中可以忽略,改不改都不会影响到当前应用程序网关的正常使用)
Interval(间隔时间) 从30 秒 我们改为 2 秒
Timeout(超时时间)从30 秒 我们改为 5 秒
Unhealthy threashod(不正常阈值) 从 3 次 我们改为1次
点击 “Save”,进行保存操作
接下来,我们就可以进行测试,看看我们的应用程序网关是否可以为我们的后端web App 提供负载均衡的功能
负责下图中权重的前端Public IP 的地址到浏览器中
ok,bingo!!!!!成功。再次撒花
原文地址:https://www.cnblogs.com/AllenMaster
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。