Вложенные профили диспетчера трафика

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

Каждый профиль диспетчера трафика определяет один метод маршрутизации трафика. Но бывают случаи, когда требуется более сложная маршрутизация трафика, чем та, которую может обеспечить отдельный профиль диспетчера трафика. Чтобы воспользоваться преимуществами нескольких методов маршрутизации трафика, можно выполнить вложение профилей диспетчера трафика. Вложенные профили позволяют переопределить стандартное поведение диспетчера трафика, реализуя поддержку крупных и сложных развертываний приложений.

Чтобы создать вложенный профиль, добавьте дочерний профиль в качестве конечной точки в родительский профиль. Некоторые примеры приведены в этой статье.

MinChildEndpoints

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

В родительском профиле доступны следующие параметры:

  • MinChildEndpoints: минимальное количество работоспособных дочерних конечных точек для состояния вложенного профиля.
  • MinChildEndpointsIPv4: минимальное количество работоспособных дочерних конечных точек IPv4 для состояния вложенного профиля.
  • MinChildEndpointsIPv6: минимальное количество работоспособных дочерних конечных точек IPv6 для состояния вложенного профиля.

Важно!

Для любого вложенного профиля MultiValue должен быть по крайней мере одна конечная точка IPv4 и одна конечная точка IPv6. Всегда настраивайте значения для MinChildEndpointsIPv4 и MinChildEndpointsIPv6 на основе многозначного механизма маршрутизации и не просто используйте значения по умолчанию.
Значение MinChildEndpoints должно быть достаточно высоким, чтобы обеспечить доступность всех типов конечных точек. Для слишком низких значений отображается сообщение об ошибке.

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

Пример 1. Объединение маршрутизации трафика для повышения производительности и маршрутизации трафика со взвешиванием

Предположим, приложение развернуто в нескольких регионах Azure: в западной части США, Западной Европе и Восточной Азии. Вы используете метод маршрутизации трафика по производительности, т. е. диспетчер трафика направляет трафик в ближайший для пользователя регион.

Отдельный профиль диспетчера трафика

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

И вы не можете использовать одновременно два метода маршрутизации трафика в одном профиле. Чтобы реализовать такой сценарий вам нужно создать отдельный профиль диспетчера трафика для двух конечных точек в регионе Западная Европа с маршрутизацией трафика по методу взвешивания. Затем вам нужно сделать этот профиль дочерним, добавив его в качестве конечной точки в родительский профиль. В родительском профиле используется маршрутизация трафика по производительности, а также содержатся остальные глобальные развертывания в качестве конечных точек.

Этот пример представлен на схеме ниже.

Вложенные профили диспетчера трафика

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

Так как родительский профиль использует маршрутизацию трафика по производительности, каждой конечной точке должно быть назначено расположение. Расположение указывается при настройке конечной точки. Выберите ближайший к вашему развертыванию регион Azure. Именно регионы Azure отслеживаются в таблице задержек Интернета. Дополнительные сведения см. в разделе Метод маршрутизации трафика по приоритету.

Пример 2. Мониторинг конечных точек во вложенных профилях

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

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

Отработка отказа вложенного профиля (поведение по умолчанию)

Возможно, такой подход вас вполне устроит. Но также вас может и не устроить то, что в тестовое развертывание будет попадать весь трафик, предназначенный для Западной Европы, а не ограниченная его часть. Возможно, вы бы предпочли, чтобы отработка отказа при сбое рабочего развертывания в Западной Европе выполнялась в другие регионы, независимо от работоспособности тестового развертывания.

В приведенном ниже сценарии значение MinChildEndpoints равно 2. Ниже этого порогового значения родительский профиль считает весь дочерний профиль недоступным и направляет трафик на другие конечные точки:

Отработка отказа для вложенных профилей при MinChildEndpoints = 2

Примечание

Метод маршрутизации трафика по приоритетам направляет весь трафик к одной конечной точке. Поэтому в таком случае нет смысла задавать значение выше 1 для параметра MinChildEndpoints.

Пример 3. Расположенные по приоритетам регионы отработки отказа при маршрутизации трафика для повышения производительности

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

Но предположим, что вы хотели бы направлять трафик из Западной Европы при отработке отказа только в западную часть США, и лишь при недоступности обеих конечных точек — в другие регионы. Такое решение можно создать с помощью дочернего профиля и метода маршрутизации трафика по приоритетам.

Маршрутизация трафика для повышения производительности с отработкой отказа по предпочтению

Так как конечная точка в Западной Европе имеет более высокий приоритет, чем конечная точка в западной части США, весь трафик будет отправляться в конечную точку в Западной Европе пока обе эти точки работоспособны. В случае сбоя конечной точки в Западной Европе ее трафик направляется в западную часть США. При использовании вложенного профиля трафик направляется в Восточную Азию, только если одновременно происходят сбои конечных точек в регионах Западная Европа и западная часть США.

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

Пример 4. Управление маршрутизацией трафика для повышения производительности между несколькими конечными точками в одном регионе

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

Распределение трафика в регионе при маршрутизации трафика по производительности (поведение по умолчанию)

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

Маршрутизация трафика по производительности с пользовательской настройкой распределения трафика в регионе

Пример 5. Параметры мониторинга каждой конечной точки

Предположим, вы используете диспетчер трафика, чтобы без остановок перенести трафик с устаревшего локального веб-сайта на новую версию, размещенную в облаке Azure. Вы намерены использовать адрес домашней страницы старой версии сайта для мониторинга его работоспособности. В новой облачной версии вы реализуете отдельную страницу мониторинга (по адресу /monitor.aspx) с дополнительными проверками.

Мониторинг конечных точек диспетчером трафика (поведение по умолчанию)

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

Мониторинг диспетчером трафика конечных точек с индивидуальными параметрами

Пример 6. Мониторинг конечных точек с помощью вложенных профилей с несколькими значениями с использованием конечных точек IPv4 и IPv6

Предположим, что у вас есть конечные точки вложенных дочерних элементов IPv4 и IPv6 и вы хотите задать минимальное количество работоспособных дочерних элементов обоих типов. Существуют новые параметры, позволяющие определить минимальное ожидаемое количество работоспособных конечных точек каждого типа. Параметры Минимальное число конечных точек IPv4 и Минимальное число конечных точек IPv6 определяют минимальное количество работоспособных конечных точек, необходимых для каждого параметра, чтобы родительский объект был помечен как работоспособный.

Значение по умолчанию для общего минимального числа дочерних конечных точек всегда равно 1, а значение по умолчанию для конечных точек IPv4 и IPv6 устанавливается равным 0, чтобы обеспечить обратную совместимость.

Поведение min-child диспетчера трафика

В этом примере конечная точка Восточная часть США неработоспособна, так как она не удовлетворяет требованию по наличию не менее 1 работоспособной конечной точки IPv4, которое задается свойством ipv4-min-child.

Часто задаваемые вопросы

Дальнейшие действия

Узнайте больше о профилях диспетчера трафика.

Узнайте, как создать профиль диспетчера трафика