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

Azure

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

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

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

Diagram showing Azure availability zones 1-3.

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

Эталонные архитектуры зон доступности

Следующие архитектуры имеют сценарии с высоким уровнем доступности:

Обеспечение надежности в Azure

Проектирование решений, которые продолжают функционировать, несмотря на сбой, является ключом к повышению надежности решения. В облачных решениях сборка для выживания сбоев является общей ответственностью. Это можно просмотреть на трех уровнях: устойчивый фундамент, устойчивые службы и устойчивые приложения. Основой является инвестиции Корпорации Майкрософт в платформу, включая зоны доступности. На основе этого фундамента находятся службы Azure, которые клиенты могут поддерживать высокий уровень доступности, например хранилище, избыточное между зонами (ZRS), которое реплицирует данные между зонами. Клиент создает приложения на основе включенных служб, поддерживаемых фондом. Приложения должны быть спроектированы для поддержки устойчивости.


Ваши приложения

Архитектура приложения или рабочей нагрузки

Устойчивые службы

Возможности Azure, которые вы включаете по мере необходимости

Отказоустойчивая основа

Возможности Azure , встроенные в платформу


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

Зональная и избыточность между зонами архитектуры

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

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

С зональной архитектурой ресурс можно развернуть в определенной локальной зоне доступности для достижения более строгих требований к задержке или производительности. Отказоустойчивость в данном случае достигается самостоятельно путем репликации приложений и данных в одну или несколько зон в пределах региона. Вы можете выбрать определенные зоны доступности для синхронной репликации, обеспечивая высокий уровень доступности или асинхронную репликацию, обеспечивая преимущество резервного копирования или затрат. Вы можете закреплять ресурсы (например, виртуальные машины, управляемые диски или стандартные IP-адреса) в конкретной зоне, что обеспечивает повышенную устойчивость при использовании одного или нескольких экземпляров ресурсов, распределенных между зонами.

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

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

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

Diagram showing zonal architecture.

Например, зональная LB, виртуальная машина, управляемые диски, масштабируемые наборы виртуальных машин.

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

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

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

Diagram showing a zone-redundant load balancer.

Например, балансировщик нагрузки, избыточный между зонами, Шлюз приложений Azure, Служебная шина Azure, виртуальная частная сеть (VPN), хранилище, избыточное между зонами, Azure ExpressRoute, Центры событий Azure, Azure Cosmos DB.

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

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

Соглашение об уровне обслуживания, предоставляемое зонами доступности

С зонами доступности Azure предлагает лучшие в отрасли 99,99 % соглашение об уровне обслуживания для виртуальных машин. В полном соглашении об уровне обслуживания Azure поясняется гарантированная доступность Azure в целом.

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

Diagram showing levels of HA that are offered by a single VM, Availability Sets, and availability zones.

При использовании рабочей нагрузки виртуальной машины в качестве примера одна виртуальная машина имеет соглашение об уровне обслуживания 99,9 %. Это означает, что виртуальная машина будет доступна 99,9 % времени. В рамках одного центра обработки данных, используя группы доступности, можно повысить уровень обслуживания SLA до 99,95 %, защищая набор виртуальных машин и гарантируя, что они не используются на одном и том же оборудовании. В пределах региона рабочие нагрузки виртуальных машин можно распределять между зонами доступности, чтобы увеличить соглашение об уровне обслуживания до 99,99 %. Дополнительные сведения см. в разделе "Параметры доступности" для виртуальных машин в Azure.

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

  • Каковы требования к доступности?

  • Какое время простоя приемлемо?

  • Во сколько возможный простой обойдется вашему бизнесу?

  • Сколько вы должны инвестировать в высокую доступность приложения?

  • Каковы требования к резервному копированию данных?

  • Каковы требования к репликации данных?

  • Каковы требования к мониторингу?

  • Есть ли для вашего приложения особые требования к задержке?

Дополнительные рекомендации см. в разделе "Принципы надежности".

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

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