接触的小伙伴多了你就会发现下伙伴的需求真的多种多样,这不最近就有小伙伴提出了这种需求:“将多个不同的Web站点托管在同一负载均衡设备下,实现访问每个网站的域名时都可以定向到其所访问的池中。”通过对小伙伴需求的分析我们决定对其使用Azure Application Gateway的多站点托管来实现其需求:

通过多站点托管,您可以在同一应用程序网关实例上配置多个Web站点。此功能允许您通过向一个应用程序网关添加多达100个网站来为部署配置更高效的拓扑。每个网站都可以定向到自己的池中。例如,应用网关可以作为流量contoso.com和fabrikam.com来自被称为ContosoServerPool和FabrikamServerPool 2个服务器池。

请求http://contoso.com将路由到ContosoServerPool,并http://fabrikam.com路由到FabrikamServerPool。

注意:同样,同一父域的两个子域可以托管在同一个应用程序网关部署中。使用子域的示例可以包括http://blog.contoso.com并http://app.contoso.com托管在单个应用程序网关部署上。

说了这么多下面我们就来看下如何实现这一需求。

创建Application Gateway

点击“创建资源”—“Network”—“Application Gateway”:

clip_image002

设置Application Gateway名称并选择使用WAF层:

clip_image004

选择虚拟网络以及Application Gateway所用子网,设置前端IP地址配置:

clip_image006

确认无误点击创建:

clip_image008

创建完成如下图所示:

clip_image010

添加后端池

添加Web01后端池:

点击“Backend pools”—“Add”,在添加后端池位置输入相关信息,并选择我们准备好的后端池“Web01-test”:

clip_image012

添加Web02后端池:

点击“Backend pools”—“Add”,在添加后端池位置输入相关信息,并选择我们准备好的后端池“Web02-test”:

clip_image014

添加完成,如下图所示:

clip_image016

配置监听器

点击“Listeners”—“+Multi Site”:

clip_image018

如下图所示添加Web01:

注意:Host name位置需要输入用户访问进来的域名:

clip_image020

如下图所示添加Web02:

注意:Host name位置需要输入用户访问进来的域名:

clip_image022

配置Rule

点击“Rule”+“+basic”:

clip_image024

添加Web01的后端池并选择对应的监听器:

clip_image026

添加Web02的后端池并选择对应的监听器:

clip_image028

添加完成如下图所示:

clip_image030

在公网域名解析机构设置域名解析:

clip_image032

配置好域名解析后验证web01.mspcloud.club和web02.mspcloud.club是否解析到同一地址:

clip_image034

使用浏览器访问web01.mspcloud.club,可以看到跳转到Web01:

clip_image036

使用浏览器访问web02.mspcloud.club,可以看到跳转到Web02:

clip_image038