Автоматическое масштабирование базы данных MySQL для удовлетворения меняющегося спроса приложений

с применением Amazon Aurora

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

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

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

Шаг 1. Создание кластера БД Aurora

1.1. Откройте браузер и перейдите к консоли Amazon RDS. Если у вас уже есть аккаунт AWS, войдите в консоль. В противном случае создайте новый аккаунт AWS, чтобы начать работу.

1.2. В верхнем правом углу выберите регион для запуска кластера БД Aurora.

1.3. В окне Amazon Aurora нажмите Create database (Создать базу данных).

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

Варианты ядра

1.4. В качестве ядра базы данных выберите Amazon Aurora.

1.5. В пункте Edition (Версия) выберите Amazon Aurora with MySQL compatibility (Версия Amazon Aurora, совместимая с MySQL).

1.6. В поле Version выберите предпочтительный номер версии Aurora.

1.7. В разделе Database Location (Расположение базы данных) выберите Regional (Региональная).

Функции базы данных

1.8. Выберите One writer and multiple readers (Один писатель и множество читателей).

Шаблоны

1.9. Выберите Production (Производство).

Настройки

1.10. Выберите идентификатор для кластера БД Aurora DB, например database-1.

Размер инстанса БД

1.11. В качестве размера инстанса БД выберите большой инстанс (с постфиксом .large).

Надежность и доступность

1.12. Выберите Create an Aurora Replica/Reader (Создать реплику Aurora или Aurora Reader).

Подключение

1.13. Выберите VPC, в котором необходимо создать базу данных.

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

1.14. Нажмите Additional connectivity configuration (Дополнительная конфигурация подключения).

1.15. Для группы подсети выберите значение по умолчанию.

1.16. Для пункта Publicly Accessible выберите значение No.

Это означает, что к базе данных нужно подключаться из инстанса EC2 в том же VPC.

1.17. Для пункта VPC security group (Группа безопасности VPC) выберите Create new (Создать новую). Вместо этого можно выбрать группу безопасности, позволяющую выполнять подключения по протоколу TCP через порт 3306, если таковая есть. Эта группа безопасности будет управлять доступом к этому кластеру Aurora.

1.18. В строке пункта New VPC security group name (Новое имя группы безопасности VPC) введите aurora-tutorial.

1.19. В поле Database Port сохраните значение по умолчанию.

Дополнительная настройка

В разделе «Дополнительная настройка» сохраните все значения по умолчанию.

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

1.20. В разделе Deletion protection снимите флажок «Enable deletion protection».

Проверка данных и создание

Прежде чем продолжить, бегло просмотрите все значения полей в этой форме.

1.21. Нажмите Create database.

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

1.22. Нажмите View credential details.

1.23. Сохраните имя пользователя, пароль и адрес кластера.

1.24. После закрытия окна с информацией об учетных данных щелкните имя созданной базы данных.

1.25. Скопируйте адреса Writer и Reader. На адрес Writer можно направлять любой трафик чтения и (или) записи, но обычно рекомендуется направлять трафик только для чтения на адрес Reader.

Шаг 2: Добавление политики масштабирования

Aurora Auto Scaling может создавать и удалять реплики по настроенным вами политикам масштабирования. Когда возрастает нагрузка на базу данных и (или) количество подключений к ней, Aurora Auto Scaling добавляет новые реплики Aurora. Когда нагрузка и количество подключений вернутся к обычному уровню, Aurora Auto Scaling удалит ненужные реплики Aurora, чтобы вам не пришлось оплачивать неиспользуемые мощности.

2.1. Выберите кластер БД Aurora.

2.2. Щелкните Actions и выберите «Add replica auto scaling».

Сведения о политике

2.3. Выберите имя политики, например policy-1.

2.4. Выберите метрику для использования с автомасштабированием.

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

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

Политика масштабирования может основываться только на одной метрике, но не забывайте, что вы можете создать несколько политик масштабирования. Для этого учебного пособия выберите «Average connections of Aurora Replicas».

2.5. В поле Target value введите число 20.

Это означает, что Aurora Auto Scaling будет добавлять реплики Aurora, когда число подключений превысит целевое значение 20, и удалит лишние реплики, когда число подключений станет ниже целевого значения. Во всех случаях Aurora Auto Scaling удаляет только те реплики Aurora, которые созданы этим сервисом, но не трогает созданные вами.

Подробные сведения о мощности кластера

2.6. В поле Minimum capacity введите число 1.

2.7. В поле Maximum capacity введите число 2.

Значения минимальной и максимальной мощности можно изменить позднее. Выбор этих значений для реальной рабочей среды будет зависеть от прогнозируемых значений нагрузки, количества подключений и бюджета. Реплики Aurora, созданные Aurora Auto Scaling, всегда относятся к тому же классу инстансов базы данных, что и основные инстансы.

Проверка и продолжение

2.8. Проверьте значения всех полей и щелкните Add policy.

Шаг 3. Изменение политики масштабирования

3.1. Нажмите кластер БД Aurora.

3.2. Щелкните Logs & events.

3.3. Выберите политику автомасштабирования.

3.4. Щелкните Edit.

Подробные сведения о мощности кластера

3.5. Измените значение максимальной мощности на «4».

3.6. Щелкните Save.

Шаг 4. Удаление политики масштабирования

4.1. Щелкните кластер БД Aurora.

4.2. Щелкните Logs & events. 

4.3. Выберите политику автомасштабирования.

4.4. Нажмите Delete.

Шаг 5. Удаление кластера

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

5.1. В области слева выберите Databases (Базы данных).

Будет отображен список всех ваших кластеров БД Aurora.

5.2. Выберите инстанс читателя для созданного в рамках этого учебного пособия кластера БД Aurora.

5.3. Нажмите Actions (Действия) и выберите Delete (Удалить).

5.4. Будет отображен запрос на подтверждение действия. Введите delete me и щелкните Delete (Удалить).

5.5. Выберите инстанс писателя для созданного в рамках этого учебного пособия кластера БД Aurora.

5.6. Нажмите Actions и выберите Delete.

Будет предложено создать окончательную резервную копию. Это рекомендуемое действие, но для этого учебного пособия оно не требуется.

5.7. Снимите флажок в поле «Create final snapshot» и установите флажок в поле «I acknowledge...».

5.8. Введите «delete me» и щелкните Delete.

Статус кластера изменится на «Удаление». На этом этапе вы можете удалить еще и группу безопасности, которую создали ранее, если она уже не требуется.

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

Вы создали кластер БД Aurora с функцией Auto Scaling. Теперь вы знаете, как автоматически изменять мощность кластера БД Aurora, добавляя и удаляя реплики чтения на основе потребностей приложения.

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

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