Репликация между регионами в Azure Cosmos DB для виртуального ядра MongoDB
Область применения: Виртуальные ядра MongoDB
В этой статье рассматривается аварийное восстановление между регионами для Azure Cosmos DB для виртуального ядра MongoDB. В нем также рассматриваются возможности чтения реплик кластера в других регионах для масштабируемости операций чтения.
Функция репликации между регионами позволяет реплицировать данные из кластера в кластер только для чтения в другом регионе Azure. Реплики обновляются с помощью технологии асинхронной репликации. Вы можете использовать одну реплику кластера в другом регионе для основного кластера Azure Cosmos DB для кластера виртуальных ядер MongoDB. В редких случаях сбоя региона можно повысить уровень реплики кластера в другом регионе, чтобы стать новым кластером чтения и записи для непрерывной работы базы данных MongoDB. Приложения могут продолжать использовать те же строка подключения после того, как реплика кластера в другом регионе становится новым основным кластером.
Реплики — это новые кластеры, которыми вы управляете как обычными кластерами. За каждую реплику чтения выставляется счет с учетом подготовленных вычислительных ресурсов (количество виртуальных ядер) и хранилища (ГБ/месяц). Затраты на вычисления и хранение для кластеров реплик имеют ту же структуру, что и обычные кластеры и цены на регион Azure, где они создаются.
Аварийное восстановление с помощью реплик чтения кластера
Репликация между регионами является одним из нескольких важных принципов в стратегии непрерывности бизнес-процессов Azure и аварийного восстановления (BCDR). Репликация между регионами асинхронно реплицирует те же приложения и данные в других регионах Azure для аварийного восстановления. Не все службы Azure автоматически реплицируют данные или выполняют откат, выполняя переход из неудачного региона для перекрестной репликации в другой включенный регион. Виртуальные ядра Azure Cosmos DB для MongoDB предоставляют возможность создания реплики кластера в другом регионе и записи данных в основном кластере, реплицируемых в этой реплике автоматически. Резервная копия реплики кластера, если в основном регионе возникла сбой, необходимо инициировать вручную.
Если репликация между регионами включена в кластере виртуальных ядер Azure Cosmos DB для MongoDB, каждый сегмент реплицируется в другой регион непрерывно. Эта репликация поддерживает реплику данных в выбранном регионе. Такая реплика готова к использованию в рамках плана аварийного восстановления в редких случаях сбоя основного региона. Репликация выполняется асинхронно. Операции записи в сегменте основного кластера не ожидают завершения репликации в сегмент соответствующей реплики перед отправкой подтверждения успешной записи. Асинхронная репликация помогает избежать увеличения задержки операций записи в основном кластере.
Непрерывные операции записи, операции чтения с репликами кластера и строка подключения
Глобальная строка подключения чтения и записи в Azure Cosmos DB для MongoDB постоянно направляет запись в активный кластер с поддержкой записи. При инициировании повышения уровня кластера реплики кластер реплики в регионе B переключится в режим записи, а исходный основной кластер в регионе A переходит к режиму записи только для чтения. Перед повышением уровня глобальный строка подключения чтения и записи предназначен для основного кластера в регионе А, а затем обновляется, чтобы указать регион B, так как он принимает обязанности по записи. Для приложений с помощью глобальной строка подключения записи операции записи продолжаются без проблем в процессе продвижения, сохраняя непрерывный поток данных.
Кластеры реплик также доступны для чтения. Это помогает выгрузить интенсивные операции чтения из основного кластера или обеспечить снижение задержки для операций чтения клиентам, расположенным ближе к региону репликации. Если репликация между регионами включена, приложения могут использовать самостоятельное строка подключения кластера реплики для выполнения операций чтения из реплики кластера. Основной кластер доступен для операций чтения и записи с помощью собственного самостоятельного строка подключения.
При создании реплики путем включения репликации между регионами он не наследует параметры сети, такие как правила брандмауэра основного кластера. Эти параметры должны быть настроены независимо для реплики. Реплика наследует учетную запись администратора от основного кластера. Учетные записи пользователей должны управляться в основном кластере. Вы можете подключиться к основному кластеру и его кластеру реплики, используя те же учетные записи пользователей.
Повышение уровня кластера реплики
Если происходит сбой в регионе, можно выполнить операцию аварийного восстановления, продвигая реплику кластера в другом регионе, чтобы стать доступной для записи. Во время продвижения реплики выполняются следующие действия:
- Записи на реплике в регионе B включены в дополнение к считываниям. Бывшая реплика становится новым кластером чтения и записи.
- Кластер повышенной реплики в регионе B принимает записи с помощью строка подключения и глобального строка подключения чтения и записи.
- Кластер в регионе A имеет значение "Только для чтения" и сохраняет строка подключения.
Внимание
Так как репликация асинхронна, некоторые данные из кластера в регионе A могут не реплицироваться в регион B при повышении реплики кластера в регионе B. Если это так, повышение приведет к тому, что нереплицированные данные не присутствуют в обоих кластерах.