0Pricing
Azure Fundamentals · Урок

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

Создайте план восстановления ASR, задающий последовательность переключения VM между уровнями приложения, добавьте этапы ручного подтверждения и включите сценарии до и после переключения.

«Планы восстановления и автоматическое переключение» — бесплатный урок Azure Fundamentals на CoddyKit. Это урок 2 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Azure Fundamentals, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Azure Fundamentals содержит 4 уроков всего.

Что такое план восстановления ASR

Recovery Plan в Azure Site Recovery — это структурированная упорядоченная последовательность действий, координирующая переключение нескольких VMs. Вместо переключения каждой VM по отдельности план восстановления объединяет их в группы, которые переключаются последовательно, обеспечивая запуск инфраструктуры (базы данных, промежуточного слоя и веб-уровня) в правильном порядке, как при первоначальном развёртывании.

Создание плана восстановления

Чтобы создать план восстановления, выберите исходный сайт (основной регион) и целевой сайт (вторичный регион), а затем добавьте VMs, которые хотите включить. Мастер плана автоматически создаёт группу по умолчанию, но Вы можете добавить другие группы, чтобы управлять последовательностью переключения. VMs в одной группе переключаются одновременно; группы выполняются в порядке номеров.

# Create an ASR Recovery Plan via CLI:
az site-recovery recovery-plan create \
  --resource-group myRG \
  --vault-name myRecoveryVault \
  --name myRecoveryPlan \
  --primary-fabric-id '/subscriptions/.../replicationFabrics/eastus' \
  --recovery-fabric-id '/subscriptions/.../replicationFabrics/westus' \
  --groups '[{"groupType":"Boot","replicationProtectedItems":[...]}]'

Определение порядка групп для многоуровневых приложений

Для типичного трёхуровневого приложения план восстановления должен содержать три группы:

  • Группа 1 — VMs уровня базы данных (должны запуститься первыми)
  • Группа 2 — VMs уровня приложения и промежуточного слоя
  • Группа 3 — VMs веб-интерфейса (запускаются последними)

Каждая группа ожидает успешного завершения переключения предыдущей группы. Это отражает правильный порядок запуска и не позволяет VMs веб-уровня запуститься до готовности базы данных принимать подключения.

Добавление ручных действий и скриптов

Планы восстановления поддерживают предварительные действия и последующие действия на границе каждой группы. Это могут быть:

  • Ручные действия — приостановить переключение и дождаться подтверждения человека (например, «Убедиться, что база данных готова»)
  • модули Runbook Azure Automation — автоматически выполнить скрипт (например, обновить записи DNS или отключить режим обслуживания)

Использование модулей Runbook Automation обеспечивает полностью автоматическое переключение без участия человека для рабочих нагрузок уровня 1.

# Example Automation runbook action in a recovery plan:
# Pre-group-2 action: Run runbook 'UpdateConnectionStrings'
# This runbook updates app config to point to secondary DB endpoint
# before the application tier VMs start

Незапланированное и плановое переключение

Azure Site Recovery поддерживает два типа переключения:

  • Плановое переключение — инициируется перед известным событием (например, обслуживанием центра обработки данных). Основная VM корректно выключается, данные синхронизируются, затем запускается вторичная VM. Потеря данных отсутствует.
  • Незапланированное переключение — запускается во время фактической аварии. Основная VM может быть недоступна, поэтому ASR использует самую свежую контрольную точку репликации. Возможна потеря части данных в зависимости от RPO.
# Trigger an unplanned failover via CLI:
az site-recovery recovery-plan failover-unplanned \
  --resource-group myRG \
  --vault-name myRecoveryVault \
  --name myRecoveryPlan \
  --failover-direction PrimaryToRecovery

Commit и обратное переключение

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

# Commit the failover:
az site-recovery recovery-plan commit \
  --resource-group myRG \
  --vault-name myRecoveryVault \
  --name myRecoveryPlan

# Then configure reverse replication to enable failback later

Повторная защита после переключения

После подтверждения переключения реплицируемые элементы в исходном основном регионе больше не реплицируются активно. Чтобы восстановить защиту, необходимо выполнить повторную защиту элементов — это изменит направление репликации: новый основной регион (бывший вторичный) будет реплицировать данные в исходный основной регион. Повторная защита занимает время, поэтому её следует запустить сразу после того, как исходный основной регион снова станет доступен.

Измерение RTO в планах восстановления

Каждый шаг плана восстановления увеличивает общее значение RTO. Обычно время затрачивается на следующее:

  • запуск VM (2–5 минут на одну VM)
  • подготовка приложения к работе (инициализация пула подключений к базе данных, прогрев кэша)
  • распространение изменений DNS после смены IP-адресов
  • ожидание ручного подтверждения

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

Автоматизация обновлений DNS

После переключения VM во вторичном регионе получают другие IP-адреса. Если приложения доступны по общедоступному имени DNS, необходимо обновить DNS, чтобы он указывал на новые IP-адреса. Используйте сценарий автоматизации Azure как действие после переключения, чтобы обновить состояние работоспособности конечных точек Azure DNS или Traffic Manager и автоматически перенаправить трафик, исключив ручной шаг, который может увеличить RTO.

# Example: Update Azure DNS record in a runbook after failover:
# az network dns record-set a update \
#   --resource-group dnsRG \
#   --zone-name myapp.com \
#   --record-set-name '@' \
#   --set 'ARecords[0].ipv4Address=<new-secondary-ip>'

Мониторинг выполнения плана восстановления

Во время переключения представление заданий на портале Azure в хранилище Recovery Services показывает ход выполнения каждого шага плана восстановления в реальном времени. Вы можете видеть, какая группа выполняется, какие VM успешно запущены и ожидаются ли какие-либо сценарии или ручные действия. Мониторинг этого представления позволяет команде восстановления быстро вмешаться, если какой-либо шаг завершится с ошибкой.

Рекомендации по планам восстановления

Основные рекомендации по планам восстановления:

  • Делайте группы небольшими (5–10 VM), чтобы ограничить область воздействия при сбое группы
  • По возможности используйте сценарии автоматизации вместо ручных действий, чтобы уменьшить RTO
  • Документируйте ожидаемое время запуска каждой группы, чтобы можно было рассчитать RTO
  • Проводите тестовое переключение не реже одного раза в квартал, чтобы проверять план
  • Пересматривайте и обновляйте план при добавлении новых VM или изменении архитектуры приложения

Быстрая проверка

Проверьте своё понимание концепций Microsoft Azure Fundamentals (AZ-900), рассмотренных в этом уроке.

Итоги урока

В этом уроке вы узнали, что план восстановления организует упорядоченное переключение нескольких VM с предварительными и последующими действиями для каждой группы; незапланированное переключение использует последнюю контрольную точку репликации, тогда как при плановом переключении потеря данных равна нулю; а после переключения необходимо зафиксировать изменения и повторно защитить ресурсы, чтобы восстановить защиту DR. Далее мы рассмотрим, как тестировать планы DR, не затрагивая рабочую среду.

Часто задаваемые вопросы

Урок «Планы восстановления и автоматическое переключение» бесплатный?

Да — полный текст урока «Планы восстановления и автоматическое переключение» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Azure Fundamentals, подпишись на CoddyKit PRO. Курс Azure Fundamentals содержит 4 уроков всего.

Чему я научусь в уроке «Планы восстановления и автоматическое переключение»?

Создайте план восстановления ASR, задающий последовательность переключения VM между уровнями приложения, добавьте этапы ручного подтверждения и включите сценарии до и после переключения. Ты практикуешь Azure Fundamentals с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Azure Fundamentals?

Предыдущий опыт не требуется. Azure Fundamentals на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 2 из 4.

Сколько времени занимает урок «Планы восстановления и автоматическое переключение»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Azure Fundamentals?

Да. Каждый урок Azure Fundamentals включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Определение RTO, RPO и уровней восстановления
  2. Планы восстановления и автоматическое переключение
  3. Тестирование DR без влияния на рабочую среду
  4. DR для служб PaaS
← Назад к Azure Fundamentals