Создание кластера для высокодоступной базы данных

в Amazon Aurora

В этом руководстве вы узнаете, как настроить кластер Amazon Aurora для создания высокодоступной базы данных. Высокодоступная база данных состоит из вычислительных узлов, реплицированных в несколько зон доступности, что позволяет повысить масштабируемость операций чтения и применять защиту путем отработки отказа. 

Amazon Aurora – это сервис реляционных баз данных версий, совместимых с MySQL и PostgreSQL, который обеспечивает эффективность и доступность баз данных для организаций с минимальными затратами. Для большинства рабочих нагрузок в реальной эксплуатации вам потребуется высокодоступная база данных.

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

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

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

В этом учебном пособии используется Amazon Aurora с совместимостью с MySQL. Вы создадите кластер Aurora через консоль управления Amazon RDS, добавите реплику Aurora, проверите сценарий отработки отказа и завершите работу среды, созданной для этого учебного пособия.

Это учебное пособие не относится к уровню бесплатного пользования, но будет стоить менее 1 USD при условии выполнения указанных в учебном пособии шагов и удаления ресурсов по окончании его изучения.

Подробнее об этом учебном пособии
Время 10 минут                                           
Стоимость Менее 1 USD
Пример использования Базы данных
Продукты Amazon Aurora, Amazon RDS
Аудитория Администраторы баз данных, разработчики
Уровень Средний
Последнее обновление 12 апреля 2019 г.

1. Регистрация в AWS

Для работы с этим учебным пособием вам понадобится аккаунт AWS. Зарегистрируйте аккаунт, выбрав Sign-up for AWS. 

Шаг 2. Вход в консоль Amazon RDS

Amazon Aurora — это совместимая с MySQL и PostgreSQL реляционная база данных, разработанная для облака. Она является основной для сервиса Amazon Relational Database Service (Amazon RDS). На этом шаге вы войдете в консоль Amazon RDS.

Откройте Консоль управления AWS, оставив открытым данное пошаговое руководство. Когда стартовый экран загрузится, введите имя пользователя и пароль, чтобы начать работу. Выберите Services > RDS, чтобы войти в консоль управления RDS.

Шаг 3. Создание кластера Amazon Aurora

На этом шаге вы создадите кластер Amazon Aurora, состоящий из одного инстанса базы данных Aurora.

а) В правом верхнем углу консоли Amazon RDS выберите параметр Region и укажите регион, в котором вы хотите создать инстанс БД, затем щелкните Create database.

б) На экране «Select engine» выберите Amazon Aurora. Затем выберите значение для параметра Edition и щелкните Next.

в)  Теперь вам нужно настроить базу данных. Сохраните значения по умолчанию для параметров Capacity type и DB engine version. Для DB instance class выберите вычислительную мощность и объем памяти для инстанса базы данных. Amazon Aurora оплачивается за каждый час работы с учетом типа инстанса. Для нашего учебного пособия выберите вариант db.t2.small (1 виртуальный ЦП, 2 ГиБ памяти), чтобы не нести лишних затрат.

В поле «Multi-AZ deployment» выберите вариант No. Amazon Aurora по умолчанию предлагает развертывание в нескольких зонах доступности, но в этом учебном пособии мы будем самостоятельно создавать реплики в других зонах доступности на ваш выбор. 

г)  Введите имя идентификатора инстанса БД, имя пользователя и пароль администратора. Нажмите Next.

д)  Для Amazon RDS поддерживается много расширенных параметров настройки. Для целей этого учебного пособия сохраните все настройки по умолчанию и щелкните Create database.

В зависимости от класса инстанса БД он может стать доступным через несколько минут. Выберите View DB Instance Details

е) Новый инстанс БД Aurora появится в списке баз данныхв консоли RDS. Этот инстанс БД будет иметь статус creating, пока не станет полностью готов к использованию, и тогда он получит статус available. Если статус не изменится в течение нескольких минут, обновите страницу.

Шаг 4. Создание реплики Aurora для повышения доступности

Каждый инстанс Amazon Aurora по умолчанию оснащается мощными механизмами защиты данных. Вы можете повысить доступность вычислительных ресурсов, добавляя реплики чтения в других зонах доступности того же региона AWS. Для кластера базы данных в пределах региона можно настроить до 15 реплик Aurora, распределенных по зонам доступности. 

а)  В консоли Amazon RDS основной инстанс (писатель) кластера Aurora будет указан в списке Databases. Выберите имя этого инстанса и запишите зону доступности, которая указана для него в разделе Networking.

б) Установите переключатель для кластера и создайте новую реплику Aurora, последовательно выбрав Actions > Add reader.

в) Выберите зону доступности, отличную от той, где расположен основной (главный) инстанс базы данных. В разделе Instance specifications выберите тот же класс инстанса, что и для главного инстанса (в нашем примере это db.t2.small), чтобы при отработке отказа производительность базы данных не снижалась. В разделе Settings введите уникальное имя для новой реплики читателя БД Aurora.

Щелкните Add reader.

г) Вы увидите, что в списке баз данных появилась новая реплика с ролью Reader. Прокрутите вниз до свойства Multi-AZ, где значение теперь изменилось на 2 Zones, что подтверждает размещение вычислительного уровня кластера в двух зонах доступности. 

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

Шаг 5 — настройка отработки отказа для кластера базы данных

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

 

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

б)  В процессе отработки отказа Amazon RDS повысит уровень реплики с максимальным приоритетом (начиная с уровня 0), назначив ее новым основным инстансом. В нашем примере еще нет существующих реплик, поэтому для новой реплики мы назначим максимальный приоритет. В разделе Failover выберите Tier-0.

Если две и более реплик имеют одинаковый уровень приоритета, сервис Amazon RDS переместит ту реплику, размер которой совпадает с размером основного инстанса.

Выберите Continue, а затем Modify DB instance.

Шаг 6. Тестирование обработки отказа для базы данных

а)  Выберите переключатель для целевого инстанса. Затем последовательно выберите Actions > Failover. Это действие повышает уровень реплики до нового основного инстанса (писателя), а старый основной инстанс (писатель) теперь становится репликой (читателем).

 

б) Щелкните Failover.

в) Время на выполнение отработки отказа зависит от активности базы данных на момент его выполнения, но обычно не превышает 60 секунд. Вы можете отслеживать ход процесса отработки отказа в разделе Log & events > Recent events.

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

7. Удаление ресурсов

На этом этапе мы удалим среду кластера БД Aurora.

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

а) Выберите кластер Amazon Aurora, работу которого вы намерены завершить, и щелкните имя кластера, чтобы отобразить полный список инстансов этого кластера. Выберите переключатель для инстанса с ролью читателя БД, затем нажмите Actions > Delete.

 

б) Введите фразу delete me и щелкните Delete для подтверждения удаления. Вы увидите, что статус изменился на Deleting.


в) Повторите шаги 6а и 6б для инстанса с ролью писателя базы данных. Вам будет предложено создать окончательный моментальный снимок перед его удалением. Это рекомендованный шаг. Но сейчас мы удаляем тестовый кластер базы данных, поэтому снимите флажок Create final snapshot и подтвердите этот выбор. Введите delete me и щелкните Delete. Этот шаг удаляет кластер Aurora, в том числе все ресурсы хранилища и автоматически созданные резервные копии базы данных.

Поздравляем!

Вы научились настраивать кластер для высокодоступной базы данных Amazon Aurora с использованием Консоли управления AWS. Теперь вы сможете воспользоваться высокой доступностью, производительностью и устойчивостью Amazon Aurora для критически важных приложений.

Была ли полезной информация, представленная в этом учебном пособии?

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