Поделиться через


Надежность в Azure Logic Apps

В этой статье описывается поддержка надежности в Azure Logic Apps, охватывающая устойчивость внутри региона через зоны доступности и развертывания в нескольких регионах.

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

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

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

Azure Logic Apps с однопользовательской архитектурой выполняет стандартные рабочие процессы на выделенных вам вычислительных ресурсах, которые называются планами. Каждый план может иметь несколько экземпляров, и эти экземпляры могут быть распределены по нескольким зонам доступности. Рабочие процессы выполняются на экземплярах вашего плана.

Рекомендации по развертыванию в производственной среде

Для корпоративных и безопасных рабочих процессов с требованиями к изоляции или сетевой безопасности рекомендуется создавать и запускать стандартные рабочие процессы в однотенантных azure Logic Apps, а не в рабочих процессах потребления в мультитенантных Azure Logic Apps. Дополнительные сведения см. в статье "Создание и развертывание в разных средах".

Для рабочих развертываний с одноарендаторной Azure Logic Apps рекомендуется включить зональную избыточность для распределения ресурсов вашего логического приложения по нескольким доступным зонам.

Временные сбои

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

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

В Azure Logic Apps многие триггеры и действия автоматически поддерживают политики повторных попыток, которые автоматически повторяют запросы, которые завершаются сбоем из-за временных сбоев. Сведения об изменении или отключении политик повторных попыток для приложения логики см. в статье "Обработка ошибок и исключений в Azure Logic Apps".

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

Дополнительные сведения об обработке ошибок в Azure Logic Apps см. в статье "Обработка ошибок и исключений в Azure Logic Apps".

Поддержка зоны доступности

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

Дополнительные сведения о зонах доступности в Azure см. в статье "Что такое зоны доступности?"

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

Новые и существующие рабочие процессы логики Consumption в мультитенантных Azure Logic Apps автоматически имеют включённую зональную избыточность.

Для стандартных рабочих процессов с параметром размещения в Плане службы рабочих процессов в Azure Logic Apps для одного арендатора можно по желанию включить зональную избыточность.

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

Поддерживаемые регионы

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

Приложения логики с зональной избыточностью можно развертывать с помощью планов служб рабочих процессов в любом регионе, поддерживающем зоны доступности для службы приложений Azure. Западная Япония является исключением, которое в настоящее время не поддерживает логические приложения с избыточностью по зонам. Дополнительные сведения см. в разделе «Надежность в службе приложений Azure».

Сведения о том, какие регионы поддерживают зоны доступности для Среда службы приложений версии 3, см. в разделе "Регионы".

Требования

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

Рекомендации

  • Хранилище: При настройке внешнего хранилища для рабочих процессов стандартного уровня необходимо настроить учетную запись хранения для зональной избыточности. Дополнительные сведения см. в статье Рекомендации по хранению для Функций Azure.
  • Соединители: встроенные соединители автоматически становятся зонально избыточными, если ваше приложение логики зонально избыточно.

  • Учетные записи интеграции: учетные записи интеграции уровня "Премиум" по умолчанию являются географически распределенными.

Себестоимость

Дополнительные затраты не применяются к зональной избыточности, которая автоматически включается для новых и существующих рабочих процессов модели 'Потребление' в мультитенантной среде Azure Logic Apps.

Если у вас есть стандартные рабочие процессы с планом службы Workflow в Azure Logic Apps с единым клиентом, дополнительные затраты на включение зон доступности не применяются, если у вас три или более экземпляра плана. Плата взимается на основе стоимости SKU плана, указанной емкости и любых экземпляров, которые увеличиваются или уменьшаются в зависимости от условий автомасштабирования. Если вы включите зоны доступности, но укажете количество менее трех экземпляров, платформа применяет минимальное требование в три экземпляра и взимает плату за эти три экземпляра.

Среда служб приложений версии 3 имеет определенную модель ценообразования для зональной избыточности. Для получения информации о ценах на среды службы приложений версии 3 см. раздел "Цены".

Настройка поддержки зоны доступности

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

  • Создайте новый рабочий процесс с обеспечением зональной избыточности.

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

  • Миграция

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

  • Отключите избыточность зон.

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

Планирование ресурсов и управление ими

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

Нормальная работа

В этом разделе описывается, чего ожидать, когда ресурсы Azure Logic Apps настроены для резервирования зоны и все зоны доступности находятся в рабочем состоянии.

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

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

Опыт понижения зоны

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

  • Обнаружение и ответ. Платформа Azure Logic Apps отвечает за обнаружение сбоя в зоне доступности. Вам не нужно ничего делать, чтобы инициировать переключение на резервную зону.

  • Активные запросы: Если зона доступности становится недоступной, все выполняющиеся на виртуальной машине процессы в этой зоне завершаются. Платформа Azure Logic Apps автоматически возобновляет рабочий процесс на другой виртуальной машине в другой зоне доступности. Из-за этого активные рабочие процессы могут столкнуться с некоторыми временными сбоями или более высокой задержкой, так как новые виртуальные машины добавляются в остальные зоны доступности.

Возврат после отказа

Когда зона доступности восстанавливается, Azure Logic Apps автоматически восстанавливает экземпляры в этой зоне доступности, удаляет все временные экземпляры, созданные в других зонах доступности, и перенаправляет трафик между экземплярами в обычном режиме.

Тестирование зон сбоев

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

Поддержка нескольких регионов

Каждое приложение логики развертывается в одном регионе Azure. Если регион станет недоступным, ваше приложение логики также будет недоступно.

Альтернативные подходы с несколькими регионами

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

  • Разверните приложение логики в первичных и вторичных регионах.
  • При необходимости перенастройка подключений к ресурсам.
  • Настройте политики балансировки нагрузки и переключения при отказе.
  • Запланируйте мониторинг работоспособности основного экземпляра и инициируйте переключение на резервный экземпляр.

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

Соглашение об уровне обслуживания

Соглашение об уровне обслуживания (SLA) для Azure Logic Apps описывает ожидаемую доступность службы. Это соглашение также описывает условия, необходимые для достижения этого ожидания. Чтобы понять эти условия, убедитесь, что вы просматриваете соглашения об уровне обслуживания (SLA) для веб-служб.