Amazon RDS в нескольких зонах доступности
Простые в управлении реляционные базы данных, оптимизированные с учетом совокупной стоимости владения
Что такое RDS в нескольких зонах доступности
Развертывание Amazon RDS в нескольких зонах доступности обеспечивает повышенную доступность и надежность инстансов базы данных RDS, что позволяет эффективно справляться с нагрузками при использовании рабочих БД. Вы можете выбрать между несколькими зонами доступности с одним резервным инстансом или двумя резервными инстансами с возможностью чтения в зависимости от доступности, необходимой для ваших рабочих нагрузок.
RDS в нескольких зонах доступности с одним резервным инстансом
Автоматическое резервное переключение
Поддержите высокую доступность своего приложения благодаря автоматическому резервному переключению, которое выполняется всего за 60 секунд без потери данных и вмешательства пользователя.
Защита производительности базы данных
Предотвратите приостановку ввода-вывода на основном инстансе во время резервного копирования, проводя резервное копирование с резервного инстанса.
Повышенная надежность
Используйте технологии синхронной репликации RDS в нескольких зонах доступности, чтобы сохранять актуальность данных на резервном инстансе базы данных.
Повышение доступности
Повысьте доступность, развернув резервный инстанс во второй зоне доступности, и обеспечьте отказоустойчивость в случае сбоя зоны доступности или инстанса базы данных.
RDS в нескольких зонах доступности с двумя резервными инстансами с возможностью чтения
Оно, как правило, занимает менее 35 секунд
Пользуйтесь автоматическим резервным переключением, которое производится без потерь данных и вмешательства пользователя менее чем за 35 секунд.
Используйте отдельные адреса для чтения и записи
Направляйте запросы на серверы записи и соответствующие резервные инстансы реплик чтения, чтобы максимально повысить производительность и масштабируемость.
Почти двукратное снижение задержки транзакций подтверждения записи
Обеспечьте почти двукратное снижение задержки операций записи по сравнению с развертыванием в нескольких зонах доступности с одним резервным инстансом.
Незначительные обновления версий обычно занимают менее 1 секунды
Сократите время простоя при обновлении незначительных версий до менее чем 35 секунд. Сократите время простоя до 1 секунды и даже меньше, добавив в развертывание прокси-сервер с открытым исходным кодом или прокси-сервер RDS.
Сравнительная таблица
Amazon RDS в одной зоне доступности или Amazon RDS в нескольких зонах доступности с одним резервным инстансом, либо Amazon RDS в нескольких зонах доступности с двумя резервными инстансами с возможностью чтения
|
Функция
|
Развертывание в одной зоне доступности
|
В нескольких зонах доступности с одним резервным инстансом
|
В нескольких зонах доступности с двумя резервными инстансами с возможностью чтения
|
|---|---|---|---|
|
Доступные движки
|
|
|
|
|
Дополнительный ресурс чтения
|
|
|
· |
|
Низкая задержка (повышенная пропускная способность) для подтверждения записи транзакций
|
|
|
|
|
Длительность автоматической обработки отказов
|
|
|
|
|
Время простоя при обновлении второстепенных версий
|
|
|
|
|
Более стабильная работа при отказе зон доступности
|
|
|
|
|
Меньше джиттера при подтверждении записи транзакций
|
|
|
|
Цены
Amazon RDS в нескольких зонах доступности доступен для: RDS для PostgreSQL, RDS для MySQL, RDS для MariaDB, RDS для SQL Server, RDS для Oracle и RDS для Db2. RDS в нескольких зонах доступности с двумя резервными инстансами поддерживает RDS для PostgreSQL и RDS для MySQL. Чтобы узнать, как Amazon Aurora обеспечивает повышенную доступность и надежность за счет распределения данных по трем зонам доступности, изучите раздел Развертывания в нескольких зонах доступности с использованием реплик Aurora.
Для развертываний как в одной, так и в нескольких зонах доступности (с одним резервным инстансом или двумя резервными инстансами с возможностью чтения) стоимость вычисляется пропорционально количеству часов использования каждого инстанса БД (с момента запуска до момента остановки или удаления). Неполные часы работы инстансов БД подлежат оплате на посекундной основе с минимальным платежом за десять минут работы инстанса с момента изменения его статуса, приводящего к началу работы (т. е. с момента создания, запуска или изменения класса инстанса БД).
Более подробная информация о ценах на RDS для нескольких зон доступности доступна на странице цен на RDS.
Общие вопросы
Открыть всеПри создании или изменении инстанса БД для запуска его развертывания в нескольких зонах доступности сервис Amazon RDS автоматически предоставляет и поддерживает синхронизированную резервную реплику в другой зоне доступности. При обновлении инстанса БД синхронно обновляются и резервные реплики в других зонах доступности, что обеспечивает синхронизацию и защиту последних обновлений базы данных от сбоев инстанса БД.
Во время планового обслуживания некоторых типов или в маловероятном случае сбоя инстанса БД или всей зоны доступности Amazon RDS автоматически выполняет обработку отказа и переключение на резервную реплику, поэтому выполнение операций записи и чтения БД будет сразу же возобновлено. Адрес инстанса БД в процессе не меняется, поэтому приложение сможет продолжить работу с базой данных без дополнительной ручной настройки. Репликация при развертывании в нескольких зонах доступности осуществляется незаметно. Пользователь не выполняет никаких действий непосредственно с резервной репликой, ее нельзя использовать для распределения трафика операций чтения. Подробнее о развертывании в нескольких зонах доступности см. в Руководстве пользователя Amazon RDS.
Зоны доступности – это отдельные местоположения внутри региона, которые в силу особенностей конфигурации защищены от влияния сбоев в других зонах доступности. Каждая зона доступности выполняется в собственной, физически изолированной, независимой инфраструктуре и изначально обладает высокой надежностью. Стандартные точки отказа (например, генераторы и оборудование для охлаждения) не используются совместно различными зонами доступности. Кроме того, зоны доступности физически отделены друг от друга, благодаря чему даже самые редкие стихийные бедствия (например, пожары, торнадо или наводнения) затронут только одну зону доступности. Между зонами доступности в одном и том же регионе работает сетевое подключение с низкой задержкой.
Основной инстанс БД, работающий в нескольких зонах доступности, обслуживает операции записи и чтения БД. Кроме него, Amazon RDS автоматически создает и поддерживает резервные инстансы, представляющие собой актуальные реплики основного инстанса. Резервные инстансы задействуются при выполнении сценария обработки сбоя. После обработки сбоя резервный инстанс становится основным и выполняет операции с базой данных. Ни на одном этапе использования резервного инстанса (т. е. предоставления ресурсов для выполнения операций чтения) пользователь не работает с ним напрямую. Подробнее о масштабировании операций чтения за пределы ресурсов отдельного инстанса БД см. в разделе вопросов и ответов о репликах чтения.
Основные преимущества запуска инстанса БД с развертыванием в нескольких зонах доступности – это повышение отказоустойчивости и доступности базы данных. Повышенная доступность и отказоустойчивость делают развертывание в нескольких зонах доступности оптимальным решением для использования в рабочей среде.
Запуска инстанса БД в нескольких зонах доступности обеспечивает защиту от потери данных в маловероятном случае сбоя компонента инстанса БД или при отсутствии доступа к одной из зон доступности. Например, в случае сбоя тома хранилища основного инстанса Amazon RDS автоматически выполнит обработку сбоя и переключение на резервный инстанс, содержащий все обновления базы данных. Таким образом обеспечивается повышенная сохранность данных по сравнению со стандартными развертываниями в одной зоне доступности, при которых восстановление требуется запускать вручную, а обновления, выполненные со времени последней точки восстановления (как правило, за последние пять минут), окажутся недоступны.
Запуск инстанса с развертыванием в нескольких зонах доступности также обеспечивает повышенную доступность базы данных. Если произойдет сбой зоны доступности или инстанса БД, база данных будет недоступна только во время автоматической обработки отказа. Развертывание в нескольких зонах доступности обеспечивает непрерывную работу в периоды планового обслуживания.
Например, при автоматическом резервном копировании выполнение операций ввода‑вывода на основном инстансе в рамках заданного интервала резервного копирования не приостанавливается, поскольку резервные копии делаются с резервного инстанса. При установке обновлений безопасности или масштабировании класса инстансов БД эти операции сначала выполняются для резервных инстансов перед автоматической обработкой отказа. Благодаря этому период недоступности БД сокращается до времени, требуемого на автоматическую обработку отказа.
Еще одно преимущество запуска инстанса БД в нескольких зонах доступности состоит в том, что обработка отказа инстанса БД осуществляется автоматически, без участия администратора. При использовании Amazon RDS не требуется отслеживать события инстанса БД и вручную инициировать восстановление инстанса БД (с помощью API RestoreDBInstanceToPointInTime или RestoreDBInstanceFromSnapshot) в случае сбоя последнего или всей зоны доступности.
В связи с синхронной репликацией данных может наблюдаться увеличение задержки по сравнению со стандартным развертыванием инстанса БД в одной зоне доступности.
Для развертывания инстанса БД в нескольких зонах доступности при его запуске в Консоли управления AWS выберите Yes для параметра Multi‑AZ Deployment.
Либо выполните вызов CreateDBInstance в API сервиса Amazon RDS и установите значение true для параметра Multi‑AZ. Чтобы преобразовать существующий стандартный (для одной зоны доступности) инстанс БД для работы в нескольких зонах доступности, измените инстанс БД в Консоли управления AWS или с помощью API ModifyDBInstance, установив значение true для параметра Multi‑AZ.
- Делается снимок состояния основного инстанса.
- На основе снимка состояния в другой зоне доступности создается новый резервный инстанс.
- Настраивается синхронная репликация между основным и резервным инстансами.
В RDS для PostgreSQL, RDS для MySQL, RDS для MariaDB, RDS для SQL Server, RDS для Oracle и RDS для Db2 при преобразовании инстанса Amazon RDS из объекта для одной зоны доступности в объект для нескольких происходят следующие события.
Соответственно, во время конвертации инстанса, развернутого в одной зоне доступности, в инстанс, развернутый в нескольких зонах доступности, простоя в работе не происходит. Может, однако, наблюдаться увеличение задержки в те моменты, когда данные резервного инстанса синхронизируются с данными основного.
- Потеря доступа в первичной зоне доступности
- Потеря сетевого подключения к основному инстансу
- Сбой вычислительного блока основного инстанса
- Сбой хранилища основного инстанса
Amazon RDS определяет самые распространенные сценарии отказа и выполняет автоматическое восстановление, возобновляя работу базы данных в кратчайшие сроки и без вмешательства администратора. Amazon RDS выполняет автоматическую обработку отказа при любом из следующих условий:
Примечание. Когда в отношении инстансов, развернутых в нескольких зонах доступности, инициируются такие операции, как масштабирование инстанса БД или применение исправлений к ОС, в целях повышения доступности они применяются сначала к резервным репликам перед выполнением автоматической обработки отказа. В результате период недоступности сокращается до времени, требуемого на выполнение автоматической обработки отказа. Обратите внимание, что при развертывании в нескольких зонах доступности в Amazon RDS не предусмотрено автоматическое резервное переключение при таких операциях с базами данных, как длительно выполняющиеся запросы, взаимоблокировка или повреждения самой базы данных.
Да. Amazon RDS создает событие инстанса БД для оповещения об автоматическом резервном переключении. Для получения информации о событиях, связанных с инстансом БД, щелкните по разделу «Events» в консоли Amazon RDS или используйте вызов API DescribeEvents. Можно также использовать оповещения о событиях Amazon RDS, чтобы узнавать об определенных событиях, произошедших в БД.
Резервное переключение выполняется сервисом Amazon RDS автоматически, поэтому работа с БД возобновляется очень быстро и не требует вмешательства администратора. При выполнении обработки отказа Amazon RDS изменяет запись канонического имени (CNAME) для инстанса БД таким образом, чтобы она указывала на резервную реплику, которая становится основной. Рекомендуется выполнить повторную попытку подключения к базе данных на уровне приложения.
Время обработки отказа, определяемое как интервал между обнаружением сбоя в основной реплике и возобновлением транзакций в резервной, обычно составляет от одной до двух минут. Время обработки отказа может зависеть от необходимости восстановления больших независимых транзакций. Для повышения эффективности в этом случае рекомендуется использовать типы инстансов соответствующего размера. AWS также рекомендует использовать с инстансами, работающими в нескольких зонах доступности, хранилища с выделенным объемом IOPS, что обеспечит быструю, прогнозируемую и стабильную передачу данных.
При возникновении различных состояний отказа Amazon RDS автоматически выполняет резервное переключение, не требующее вмешательства администратора. Кроме того, Amazon RDS позволяет инициировать обработку отказа при перезагрузке инстанса. Это можно сделать с помощью Консоли управления AWS или вызова API RebootDBInstance.
Для этого достаточно установить значение true для параметра Multi‑AZ. Создание резервных реплик, синхронная репликация и обработка отказа выполняются автоматически. Таким образом, нельзя выбрать зону доступности, в которой будет развернута резервная реплика, или задать число доступных резервных реплик. Amazon RDS выделяет одну резервную реплику на одну основную реплику инстанса БД. Резервную реплику также нельзя настроить для обслуживания операций чтения БД. Подробнее о развертывании в нескольких зонах доступности.
Да. Резервная реплика автоматически создается в другой зоне доступности того же региона, в котором находится основная реплика инстанса БД.
Да. Увидеть местоположение текущей основной реплики можно в Консоли управления AWS или с помощью API DescribeDBInstances.
Зоны доступности спроектированы с учетом обеспечения низкой задержки сетевого подключения к другим зонам доступности того же самого региона. Кроме того, в архитектуре приложения и других ресурсов AWS может потребоваться предусмотреть избыточное копирование в несколько зон доступности, чтобы обеспечить отказоустойчивость приложения в случае сбоя одной из зон доступности. Это выполнимо на уровне баз данных благодаря развертыванию в нескольких зонах доступности и не требует ручного администрирования.
Как при стандартном развертывании в одной зоне доступности, так и при развертывании в нескольких зонах доступности автоматическое резервное копирование и работа со снимками состояния БД выполняются одинаково. При запуске развертывания в нескольких зонах доступности система автоматически делает резервные копии и снимки состояния БД резервной реплики, чтобы не приостанавливать выполнение операций ввода‑вывода на основной. Обратите внимание, что во время резервного копирования в обоих типах развертываний может увеличиваться задержка при операциях ввода‑вывода (как правило, до нескольких минут).
Восстановление (на момент времени или из снимка состояния БД) при развертывании в нескольких зонах доступности выполняется точно так же, как и в стандартных развертываниях. Новые развертывания инстансов БД можно создавать с помощью вызовов API RestoreDBInstanceFromSnapshot или RestoreDBInstanceToPointInTime. Эти новые развертывания могут быть как стандартными, так и в нескольких зонах доступности, независимо от того, с какого развертывания была сделана резервная копия.
Начало работы с RDS в нескольких зонах доступности
Ищете информацию о том, как быстро начать работу с RDS в нескоьких зонах доступности? Ниже приведены наиболее важные руководства по технической документации, руководства пользователя и учебные пособия, в которых показано, как начать работу с RDS в нескоьких зонах доступности за несколько шагов.