Общий хостинг с помощью маршрутизации запросов приложений (ARR)

Использование маршрутизации запросов приложений (ARR) в общей среде размещения представляет новую архитектуру развертывания, которая предоставляет дополнительные преимущества и возможности для общих узлов. Этот сценарий включен функцией сходства имен узла в маршрутизации запросов приложений. Дополнительные сведения о функции сопоставления имен узла и о том, как она связана с общим размещением, см . в развертывании общего размещения с помощью маршрутизации запросов приложений.

В этом разделе описано, как настроить функцию сопоставления имен узла в маршрутизации запросов приложений, как показано ниже:

Схема, представляющая общую среду размещения, в которой развертывается R R.

Goal

Настройка маршрутизации запросов приложений в общей среде размещения.

Необходимые компоненты

В этом пошаговом руководстве требуются следующие предварительные требования:

  • IIS 7.0 или более поздней версии в Windows 2008 (любой номер SKU) или более поздней версии.

  • Модули маршрутизации запросов приложений Майкрософт версии 1 и зависимые модули.

  • Не менее двух серверов приложений с рабочими сайтами и приложениями.

    • Серверы должны быть настроены для использования общей конфигурации и общего содержимого. Дополнительные сведения о общей конфигурации см. в статье " Общая конфигурация ".
    • Сайты на серверах должны использовать привязку имени узла.

Выполните действия, описанные в этом документе, чтобы установить маршрутизацию запросов приложений.

В качестве другого необходимого условия необходимо определить и настроить ферму серверов, выполнив действия, описанные в разделе "Определение и настройка группы серверов маршрутизации запросов приложений (ARR).

Шаг 1. Включение сопоставления имен узла

Прежде чем продолжить, убедитесь, что ферма серверов создана с серверами приложений, настроенными с общей конфигурацией и общим содержимым. Сайты на серверах приложений также должны использовать привязку имени узла.

Включение сопоставления имен узла с помощью пользовательского интерфейса

  1. Запустите диспетчер IIS.

  2. Выберите ферму серверов, созданную для этого пошагового руководства.

  3. Показаны следующие значки:

    Снимок экрана: окно

  4. Дважды щелкните сходство сервера.

  5. Чтобы включить сходство имен узлов, выберите "Использовать имя узла" и нажмите кнопку "Применить".

    Снимок экрана: диалоговое окно

    Обратите внимание, что существует два поставщика для определения того, к каким серверам следует присвоить имя узла. Это отличается от алгоритма балансировки нагрузки, и поставщик используется только для функции сопоставления имен узла. Два поставщика:

    • Microsoft.Web.Arr.HostNameRoundRoundRobin
    • Microsoft.Web.Arr.HostNameMemory

    Microsoft.Web.Arr.HostNameRoundRobin пытается равномерно распределить количество сходного имени узла в циклического перебора. Использование этого поставщика не имеет требований к серверам приложений.

    Microsoft.Web.Arr.HostNameMemory пытается распределить количество сопоставленных имен узлов на основе объема доступной памяти на серверах приложений, где сервер с наибольшим объемом доступной памяти будет назначен со следующим именем узла. Этот поставщик использует WMI для запроса доступной памяти (определенной как зафиксированная память или физическая память). Таким образом, серверы приложений должны быть серверами Windows, а дополнительные конфигурации должны быть сделаны на серверах приложений, чтобы разрешить удаленные запросы WMI. Дополнительные сведения см. в статье о настройке службы WMI на серверах приложений для поставщика сходства HostNameMemory.

    Значение времени ожидания используется, чтобы определить, сколько времени после последнего запроса с тем же именем узла необходимо сбросить. Это значение должно иметь то же значение, что и время ожидания для пулов приложений на серверах приложений. По умолчанию это значение составляет 20 минут.

  6. Чтобы проверить эту функцию, нажмите кнопку "Отобразить таблицу маршрутизации".

    Снимок экрана: диалоговое окно

  7. Введите имя узла и нажмите кнопку "Поиск по имени узла". Показан адрес сервера — это расположение, в котором имя узла сопоставлено.

Включение сопоставления имен узла с помощью командной строки

  1. Откройте окно командной строки с правами администратора.

  2. Перейдите к %windir%\system32\inetsrv.

  3. Чтобы включить сходство имен узлов, введите (в следующем примере в качестве имени фермы серверов используется myServerFarm ):

    appcmd.exe set config  -section:webFarms /[name='myServerFarm'].applicationRequestRouting.affinity.useHostName:"True"  /commit:apphost
    

Шаг 2. Укажите количество серверов, используемых для каждого имени узла

По умолчанию все имена узлов могут использовать один сервер приложений. Тем не менее, если владельцы сайта хотят дополнительной емкости, ведущий может указать количество серверов приложений, которые сайты могут использовать для каждого имени узла.

Указание количества серверов, используемых с помощью пользовательского интерфейса

  1. На странице "Сходство сервера" нажмите кнопку "Дополнительно" Параметры.

    Снимок экрана: диалоговое окно

  2. В столбце "Имя узла" введите имя узла. Это обязательное поле.

  3. В столбце "Число выделенных серверов" введите количество серверов, которые может использовать имя узла.

  4. Альтернативные имена узлов — это необязательное поле, которое можно использовать для указания дополнительных имен узлов, которые следует обрабатывать так же, как значения в столбце имени узла. Например, владелец сайта может иметь несколько записей DNS для одного сайта. В этом случае он хотел бы, чтобы ARR обрабатывал несколько записей DNS так же, чтобы только один рабочий процесс запускался на сервере приложений для обоих доменных имен.

  5. Чтобы сохранить изменения, нажмите кнопку "ОК".

  6. Чтобы проверить эту функцию, нажмите кнопку "Отобразить таблицу маршрутизации".

    Снимок экрана: диалоговое окно

  7. Введите имя узла и нажмите кнопку "Поиск по имени узла". Число возвращенных адресов сервера будет совпадать с указанным числом выделенных серверов. Это серверы, к которым можно присвоить имя узла.

Указание количества серверов, используемых с помощью командной строки

  1. Откройте окно командной строки с правами администратора.

  2. Перейдите к %windir%\system32\inetsrv.

  3. Чтобы указать количество серверов на имя узла, введите (следующий пример использует myServerFarm в качестве имени фермы серверов и задает для имени узла число серверов значение 2):www.contoso.com

    appcmd.exe set config  -section:webFarms /+"[name='myServerFarm'].applicationRequestRouting.affinity.[name='www.contoso.com',servers='2']" /commit:apphost
    

Итоги

Теперь вы успешно настроили функцию сопоставления имен узла в маршрутизации запросов приложений для сценария общего размещения. Дополнительные свойства и возможности маршрутизации запросов приложений см. в других пошаговом руководстве по маршрутизации запросов приложений.