Что такое зоны доступности?
Многие регионы Azure предоставляют зоны доступности, которые разделены группами центров обработки данных в пределах региона. Каждая зона доступности имеет независимую энергетику, охлаждение и сетевую инфраструктуру, так что при возникновении сбоя в одной из зон, региональные службы, ресурсы и высокий уровень доступности поддерживаются остальными зонами.
Зоны доступности обычно разделяются несколькими километрами и обычно находятся в пределах 100 километров. Это расстояние означает, что они находятся достаточно близко, чтобы иметь низкозатратные подключения к другим зонам доступности по высокопроизводительной сети. Тем не менее, они достаточно далеко друг от друга, чтобы снизить вероятность того, что несколько из них будут затронуты местными сбоями или погодой.
Расположения центров обработки данных выбираются с помощью строгих критериев оценки рисков уязвимостей. Этот процесс определяет все значительные риски, связанные с центром обработки данных, и рассматривает общие риски между зонами доступности.
На следующей схеме показано несколько примеров регионов Azure. Регионы 1 и 2 поддерживают зоны доступности, а регионы 3 и 4 не имеют зон доступности.
Сведения о том, какие регионы поддерживают зоны доступности, см. в списке регионов Azure.
Типы поддержки зон доступности
Службы Azure могут обеспечить поддержку двух типов зон доступности: избыточной между зонами и зональными. Каждая служба может поддерживать один или оба типа. При разработке стратегии надежности убедитесь, что вы понимаете, как каждая отдельная служба в вашей рабочей нагрузке поддерживает зоны доступности.
Развертывания с избыточностью между зонами: Ресурсы с избыточностью между зонами автоматически реплицируются или распределяются по нескольким зонам доступности. Зонально-избыточные службы данных реплицируют данные в нескольких зонах, чтобы сбой в одной зоне не влиял на доступность данных. Для некоторых служб можно выбрать набор зон, которые использует ресурс, в то время как в других службах Майкрософт выбирает зоны.
При зонально избыточном развертывании Microsoft управляет распределением запросов и репликацией данных между зонами. Если сбой возникает в зоне доступности, Microsoft автоматически управляет переключением на другую зону.
Зональные развертывания: зональный ресурс развертывается в одной, самостоятельно выбранной зоне доступности. Этот подход не обеспечивает преимущества устойчивости, но помогает достичь более строгих требований к задержке или производительности. Например, виртуальные машины, управляемые диски и стандартные IP-адреса можно развертывать в одной зоне.
Чтобы повысить устойчивость зональных ресурсов, необходимо разработать архитектуру с отдельными ресурсами в нескольких зонах доступности в регионе, но корпорация Майкрософт не управляет процессом. Если сбой возникает в зоне доступности, вы несете ответственность за переключение на другую зону.
При конфигурировании ресурса для обеспечения зональной избыточности или использовании нескольких экземпляров зонального ресурса в разных зонах доступности, ваш ресурс считается устойчивым к зонам: то есть, он устойчив к сбоям одной зоны доступности.
Некоторые службы не используют зоны доступности, пока не настроите их для этого. Если вы явно не настраиваете службу для поддержки зоны доступности, она называется незональным или региональным развертыванием. Ресурсы, настроенные таким образом, могут быть помещены в любую зону доступности в регионе и могут быть перемещены. Если какая-либо зона доступности в регионе испытывает сбой, ресурсы, не связанные с зоной, могут находиться в затронутой зоне и могут испытывать простой.
Внимание
Некоторые службы могут иметь дополнительные требования для поддержки зоны доступности. Например, некоторые могут поддерживать только зоны доступности для определенных уровней или номеров SKU или в подмножестве регионов Azure.
Настройка ресурсов для поддержки зоны доступности
Каждая служба имеет собственный метод настройки поддержки зоны доступности. Сведения о том, как каждая служба поддерживает зоны доступности и как настроить эту поддержку, см. в разделе руководства по надежности Azure для каждой службы.
Физические и логические зоны доступности
Каждому центру обработки данных назначается физическая зона. Физические зоны сопоставляются с логическими зонами в подписке Azure, а разные подписки могут иметь другой порядок сопоставления. Подписки Azure автоматически получают свое назначение сопоставления в момент их создания. Из-за этого сопоставление зоны для одной подписки может отличаться от сопоставления для других подписок.
Например, подписка A может иметь физическую зону 1, сопоставленную с логической зоной 2, а подписка B имеет физическую зону 1, сопоставленную с логической зоной 3:
Чтобы понять сопоставление между логическими и физическими зонами для вашей подписки, используйте API Azure Resource Manager для получения списка местоположений. Azure CLI или Azure PowerShell можно использовать для получения сведений из API.
Чтобы сравнить сопоставление зон для устойчивых решений, охватывающих несколько подписок, используйте специализированный API ARM checkZonePeers. Чтобы использовать checkZonePeers
API, необходимо включить функцию Microsoft.Resources/AvailabilityZonePeering. Дополнительные сведения о включении функций см. в статье "Регистрация функций в подписке Azure".
az rest --method get \
--uri '/subscriptions/{subscriptionId}/locations?api-version=2022-12-01' \
--query 'value[?availabilityZoneMappings != `null`].{displayName: displayName, name: name, availabilityZoneMappings: availabilityZoneMappings}'
Зоны доступности и обновления Azure
Для каждого региона корпорация Майкрософт стремится развернуть обновления в службах Azure в пределах одной зоны доступности одновременно. Этот подход снижает влияние обновлений на активную рабочую нагрузку, что позволяет рабочей нагрузке продолжать работать в других зонах во время обновления. Чтобы использовать преимущества поэтапных обновлений зон, рабочая нагрузка должна быть уже настроена для выполнения в нескольких зонах. Дополнительные сведения о развертывании обновлений Azure см. в статье "Продвижение безопасных методов развертывания".
Примечание.
Как сообщается в блоге об обновлениях Azure, Azure не будет взиматься плата за передачу данных между зонами доступности независимо от использования частных или общедоступных IP-адресов в ресурсах Azure. В связи с этим изменением Azure будет продолжать поощрять и поддерживать усилия клиентов в создании более устойчивых и эффективных приложений и решений в Azure
Задержка между зонами
В каждом регионе зоны доступности подключаются через высокопроизводительную сеть. Корпорация Майкрософт стремится обеспечить взаимодействие между зонами с задержкой кругового пути менее 2 миллисекунда. Низкая задержка позволяет обеспечить высокую производительность взаимодействия в регионе и синхронную репликацию данных в нескольких зонах доступности.
Примечание.
Целевая задержка относится к задержке сетевых каналов. В зависимости от используемого протокола связи и сетевых прыжков, необходимых для любого конкретного сетевого потока, наблюдаемая задержка может отличаться.
В большинстве рабочих нагрузок можно распределять компоненты решения по зонам доступности без заметного влияния на производительность. Если у вас есть рабочая нагрузка с высокой степенью чувствительности к задержке между зонами, важно проверить задержку между выбранными зонами доступности с помощью фактических протоколов и конфигурации. Чтобы сократить трафик между зонами, можно использовать зональные развертывания, но оптимально использовать несколько зон доступности в плане стратегии надежности.
Руководство по архитектуре зоны доступности
Для достижения надежных рабочих нагрузок:
- Рабочие нагрузки должны быть настроены для использования нескольких зон доступности, если регион, в котором они находятся, поддерживает зоны доступности.
- Для критически важных рабочих нагрузок следует рассмотреть решение, которое поддерживает мульти-региональные и мульти-зональные возможности.
Дополнительные сведения об использовании регионов и зон доступности в архитектуре решения см . в рекомендациях по использованию зон доступности и регионов.