Поиск по сайту:

Создание реплики AWS RDS для MySql


На этой странице

  1. Что мы рассмотрим?
  2. Ключевые примечания относительно реплики чтения
  3. Создание реплик чтения из Консоли управления AWS
  4. Подведение итогов

Amazon RDS — это простой в настройке сервис базы данных, управляемый AWS. Amazon RDS поддерживает два типа функций репликации: 1) развертывание в нескольких зонах доступности 2) реплики чтения.

При развертывании в нескольких зонах доступности RDS хранит резервную реплику базы данных в другой зоне доступности. Здесь обновления базы данных одновременно применяются к основному узлу и узлу-реплике. В случае аварийного переключения RDS автоматически перенесет операции на резервный узел реплики, не унаследовав никаких прерываний в операциях базы данных.

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

Начиная с 11 января 2018 г. реплики чтения Amazon RDS для MySQL и ее ответвления баз данных MariaDB теперь поставляются с возможностью развертывания в нескольких зонах доступности.

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

Что мы будем освещать?

В этом руководстве мы увидим, как создать реплику для чтения экземпляра базы данных MySql RDS.

Ключевые примечания относительно реплики чтения

Прежде чем мы продолжим, рассмотрим некоторые ключевые примечания, касающиеся реплик чтения:

  1. Рекомендуется настраивать реплику чтения так же, как настраивается главный экземпляр БД.
  2. Для реплик чтения поддерживаются только ядра баз данных: MariaDB, Microsoft SQL Server, MySQL, Oracle и PostgreSQL.
  3. Тип хранилища реплики чтения по умолчанию такой же, как у исходного экземпляра БД. Тип хранилища также можно изменить при создании реплики чтения.
  4. Обратите внимание, что при изменении размера хранилища, выделенного для реплики чтения, вы не можете увеличить его менее чем на 10 процентов.
  5. Циклическая репликация не поддерживается Amazon RDS.
  6. Реплики разных механизмов БД имеют несколько отличий.
  7. При создании реплики чтения происходит кратковременная приостановка операций ввода-вывода.
  8. Для создания реплики чтения необходимо включить автоматическое резервное копирование в исходном экземпляре БД. Это можно сделать, установив значение периода хранения резервной копии больше «0».

Создание реплик чтения из Консоли управления AWS

Прежде чем мы приступим к реплике чтения, запустите и запустите свой экземпляр БД. Теперь перейдите в консоль управления RDS, здесь мы видим, что наш экземпляр БД «база данных-1», основанная на базе данных MySQL, работает:

Примечание. Чтобы создать реплику для чтения, мы можем использовать консоль AWS, интерфейс командной строки AWS и RDS API.

Наша основная конфигурация базы данных выглядит следующим образом:

DB instance identifier: ‘database-1’
Database engine: MySql
Database version: 8.0.28
Master username: ‘Your-username’
Master password: ‘Your-password’
DB instance class: db.t2.micro (Free-tier)
Storage size: 20 GiB 
Public Access: ‘No’
Automated backups: ‘Enabled’


С приведенной выше конфигурацией БД мы продолжим работу с репликой чтения:

Шаг 1. В консоли управления RDS выберите целевой экземпляр БД. Теперь щелкните раскрывающееся меню «Действие», расположенное выше, и выберите параметр «Создать реплику чтения»:

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

Шаг 3. В разделе «Источник реплики» выберите исходный экземпляр БД для реплики чтения. Введите имя для экземпляра БД реплики чтения (в нашем случае «DBreplica»). Также выберите регион для запуска реплики чтения. Мы выбрали тот же регион для реплики чтения, что и для инстанса БД.

Мы придерживаемся предварительно выбранных настроек для класса инстанса БД и сведений о хранилище.

Параметр автоматического масштабирования хранилища уже включен в разделе «Хранилище».

Шаг 4. При развертывании в нескольких зонах доступности вы можете создать резервную поддержку или резервную копию для реплики, выбрав «да». Пока пропускаем этот вариант:

Шаг 5. Наша реплика чтения не является общедоступной, поскольку мы выбрали вариант «Не общедоступный». Также аутентификация базы данных основана на «Аутентификации по паролю».

Шаг 6. Поскольку мы не включили параметр шифрования для исходного экземпляра БД, мы также пропустили его здесь. Точно так же параметры мониторинга, ведения журнала и защиты от удаления остаются нетронутыми.

Шаг 7. В опции «Дополнительная конфигурация» базы данных значение порта может быть изменено на значение, отличное от значения по умолчанию. Чтобы скопировать теги в снимки, установите флажок «Копировать теги в снимки». Аутентификацию IAM DB можно включить для управления базой данных через пользователя IAM. Еще одна необязательная вещь, которую вы можете сделать, это включить незначительные обновления базы данных.

Шаг 8. Теперь нажмите кнопку «Создать реплику для чтения», чтобы начать процесс создания реплики.

$ aws rds create-db-instance-read-replica --db-instance-identifier DBreplica --source-db-instance-identifier database-1 --max-allocated-storage 1000

Подведение итогов

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