定义和配置应用程序请求路由服务器场

作者:IIS 团队

概述

本主题引导读者完成在 IIS 7.0 及更高版本上为应用程序请求路由 (ARR) 版本 1 定义和配置服务器组的步骤。 服务器场是应用程序服务器的逻辑组,其中根据 HTTP 检查规则和负载均衡算法路由 HTTP 请求。

目标

在 IIS 上的应用程序请求路由版本 1 中定义和配置服务器场,如下所示:

涉及两个应用程序服务器的 A R R 1 服务器组的服务器场配置的示意图。

先决条件

本演练要求满足以下先决条件:

  • IIS 7.0 或更高版本(在 Windows 2008(任何 SKU)或更高版本上)。
  • Microsoft 应用程序请求路由版本 1 和依赖模块。
  • 至少有两个包含工作站点和应用程序的应用程序服务器。

按照文档中概述的步骤安装应用程序请求路由。

步骤 1 - 在应用程序请求路由中创建服务器场

若要使用 UI 创建和定义服务器场,请执行以下操作:

  1. 启动 IIS Manager。

  2. 应用程序请求路由是一种服务器级功能。 选择并展开服务器的根目录。

    展开的 A R R 1 根文件夹的屏幕截图。在 I S 经理中。

  3. 若要创建服务器场,右键单击“服务器场”,然后选择“创建服务器场...”

    右键单击服务器场以访问“创建服务器场”的屏幕截图。

  4. 为服务器场输入名称。 在下面的示例中,myServerFarm 是服务器场的名称。 单击 “下一步”

    “创建服务器场”对话框的屏幕截图,其中包含名为“我的服务器场”的新联机服务器场。

  5. 下一步是将服务器添加到服务器场。 在向导的“添加服务器”页上,根据需要添加任意数量的应用程序服务器。 单击“完成”以创建服务器场,并将输入的应用程序服务器设为服务器场成员

    注意

    借助“高级选项...”可将 HTTP 和 HTTPS 端口配置为非标准端口(HTTP 为 80,HTTPS 为 443):在“添加服务器”对话框中查看高级选项的屏幕截图。

  6. 已成功创建一个服务器组,其成员包含应用程序服务器。

若要使用行命令创建和定义服务器场,请执行以下操作:

  1. 使用管理员特权打开命令提示符

  2. 导航到 %windir%\system32\inetsrv

  3. 若要创建名为 myServerFarm 的服务器场,请输入以下内容:

    appcmd.exe set config  -section:webFarms /+"[name='myServerFarm']" /commit:apphost
    
  4. 若要将名为 wonyoo-w2k8 的应用程序服务器添加到名为 myServerFarm 的服务器场,请输入以下内容:

    appcmd.exe set config  -section:webFarms /+"[name='myServerFarm'].[address='wonyoo-w2k8']" /commit:apphost
    

    根据需要多次重复此命令,将更多服务器添加到服务器场

  5. 仅当使用 appcmd 创建服务器场时,才需要执行此步骤。 使用 UI 创建服务器场时,会自动创建 URL 重写规则。 使用 appcmd 时,必须手动创建 URL 重写规则。 若要将所有传入的 HTTP 请求路由到名为 myServerFarm 的服务器场,请输入以下内容:

    appcmd.exe set config  -section:system.webServer/rewrite/globalRules /+"[name='ARR_myServerFarm_loadbalance', patternSyntax='Wildcard',stopProcessing='True']" /commit:apphost
    
    appcmd.exe set config  -section:system.webServer/rewrite/globalRules /[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].match.url:"*"  /commit:apphost
    
    appcmd.exe set config  -section:system.webServer/rewrite/globalRules /[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].action.type:"Rewrite" /[name='ARR_myServerFarm_loadbalance',patternSyntax='Wildcard',stopProcessing='True'].action.url:"http://myServerFarm/{R:0}"  /commit:apphost
    

步骤 2 - 为应用程序请求路由配置服务器场属性

创建和定义服务器场后,可以设置其他属性来管理应用程序请求路由的行为。 本演练仅涵盖一小部分设置。

若要使用 UI 配置服务器场属性,请执行以下操作:

  1. 选择服务器场 myServerFarm。 将显示以下图标:

    选择服务器场后显示的默认服务器场图标的屏幕截图。

  2. 在本演练中,你将更改用于服务器组 myServerFarm 的负载均衡算法。 双击“负载均衡”。 从“负载均衡算法”下拉列表中选择“加权的轮循机制”,然后单击“应用”

    负载均衡算法设置为加权轮循机制的屏幕截图,负载分布设置为偶数分布。

  3. ARR 可配置为将 GET 请求发送到 URL,以确定服务器的运行状况。 若要配置此功能,请双击“运行状况测试”,然后键入应由 ARR 测试的 URL。 单击“应用”保存所做的更改。

    “运行状况测试”窗格的屏幕截图,其中包含默认选项,在“U R L 测试”部分中没有指定的 U R L。

  4. 浏览其他图标以熟悉 ARR 设置。

总结

现已成功创建和定义服务器场 myServerFarm。 此时,myServerFarm 已配置为在已添加为服务器场成员的应用程序服务器之间均匀分配传入请求。 有关更高级的负载均衡设置,请参阅使用应用程序请求路由实现 HTTP 负载均衡