Disaster recovery

Настройка и запуск

Для настройки Disaster recovery в ADBM выполните следующие шаги:

  1. Используя интерфейс ADB Control, добавьте новый кластер, в который будет осуществляться копирование данных из исходного кластера ADB. В дальнейшем добавленный кластер будет называться целевым либо DR-кластером. Обратите внимание, что в ADCM для целевого кластера должны быть добавлены оба сервиса: ADB Control и ADBM.

  2. Откройте страницу Backup Manager в web-интерфейсе ADB Control. Убедитесь, что исходный и целевой кластеры доступны на странице в статусе UP.

    adbm dr dark
    Оба кластера доступны на странице Backup Manager
    adbm dr light
    Оба кластера доступны на странице Backup Manager
    ВНИМАНИЕ
    • Для корректной настройки копирования данных между кластерами их мажорные версии (первые две цифры в номере бандла) должны совпадать. Например, взаимодействие между кластерами с версиями 6.23.4 и 6.23.5 возможно, а между 6.23.4 и 6.24.1 — нет.

    • Основным требованием для восстановления данных в целевом кластере из бэкапа, снятого в другом кластере ADB, является совпадение числа primary-сегментов в этих кластерах. Остальные параметры топологии кластера (такие как настройки зеркалирования, standby, число сегмент-хостов) не влияют на возможность восстановления.

  3. Добавьте конфигурации формирования бэкапов для обоих кластеров. Обратите внимание, что секция Repository в конфигурации исходного кластера должна описывать хранилище, к которому будет доступ из обоих кластеров (например, S3-хранилище).

    Пример заполнения Repository для исходного кластера
    adbm dr3 dark
    Пример заполнения секции Repository для исходного кластера
    adbm dr3 light
    Пример заполнения секции Repository для исходного кластера
    Пример заполнения Repository для целевого кластера
    adbm dr2 dark
    Пример заполнения секции Repository для целевого кластера
    adbm dr2 light
    Пример заполнения секции Repository для целевого кластера
  4. Чтобы в дальнейшем можно было убедиться, что копирование данных проведено успешно — проверьте, какие данные есть в обоих кластерах на текущий момент.

    Исходный кластер
    • Вывод списка таблиц в базе данных adb при помощи psql-команды \dt:

      \dt

      Результат:

                               List of relations
       Schema |      Name       | Type  |  Owner  |       Storage
      --------+-----------------+-------+---------+----------------------
       public | best_books      | table | gpadmin | heap
       public | book_type       | table | gpadmin | heap
       public | spatial_ref_sys | table | gpadmin | heap
       public | test            | table | gpadmin | append only columnar
       public | test2           | table | gpadmin | append only columnar
      (5 rows)
    • Просмотр данных в таблице best_books:

      SELECT * FROM best_books;

      Результат:

       id |   author   |         title         | public_year
      ----+------------+-----------------------+-------------
        1 | Harper Lee | To Kill a Mockingbird |        1960
      (1 row)
    Целевой кластер

     
    Вывод списка таблиц в базе данных adb при помощи psql-команды \dt:

    \dt

    Результат:

                      List of relations
     Schema |      Name       | Type  |  Owner  | Storage
    --------+-----------------+-------+---------+---------
     public | spatial_ref_sys | table | gpadmin | heap
    (1 row)
  5. На вкладке Copy → Configurations страницы Backup Manager нажмите кнопку Create для добавления новой конфигурации DR.

    adbm dr4 dark
    Переход к добавлению конфигурации DR
    adbm dr4 light
    Переход к добавлению конфигурации DR
  6. В открывшемся окне заполните поля:

    • Source cluster — название исходного кластера.

    • Target cluster — название целевого кластера.

    • Autostart — флаг, установка которого означает автоматическое создание потока данных (stream) с типом Copy для выбранной пары кластеров при каждом формировании бэкапа с типом Backup type в исходном кластере.

    • Backup type — типы бэкапов, при формировании которых в исходном кластере следует запускать копирование данных в целевой кластер (stream). Список становится доступен после установки флага Autostart. Возможные значения:

      • Full — полные бэкапы;

      • Diff — дифференциальные бэкапы;

      • Incr — инкрементные бэкапы.

    adbm dr5 dark
    Добавление конфигурации DR
    adbm dr5 light
    Добавление конфигурации DR
  7. Нажмите Create. В результате данные о выбранной паре кластеров отобразятся на вкладке Backup Manager → Copy → Configurations.

    adbm dr6 dark
    Конфигурация добавлена
    adbm dr6 light
    Конфигурация добавлена
  8. Убедитесь, что для исходного кластера в ADBM существует хотя бы одна точка восстановления. Для этого в системе должен присутствовать бэкап. Создание бэкапа возможно либо автоматически согласно настроенному расписанию, либо вручную с помощью действия Backup.

    adbm dr7 dark
    Для исходного кластера создан бэкап с типом Full
    adbm dr7 light
    Для исходного кластера создан бэкап с типом Full
  9. Нажмите на кнопку Create stream на вкладке Backup Manager → Copy → Streams, чтобы перейти к настройке потока данных (stream) для выбранной пары кластеров.

    adbm dr8 dark
    Переход к добавлению stream
    adbm dr8 light
    Переход к добавлению stream
  10. В открывшемся окне заполните следующие поля:

    • Configuration — созданная ранее конфигурация, которая определяет пару кластеров.

    • Restore type — тип восстановления. Возможные значения:

      • Copy — cold standby. Данные в целевом кластере восстанавливаются однократно на момент выбранной точки восстановления в исходном кластере.

      • Streaming — warm standby. Данные в целевом кластере непрерывно восстанавливаются по мере создания точек восстановления в исходном кластере. После прерывания репликации данные в целевом кластере будут актуальны на момент последней точки, полученной из исходного кластера.

    • Restore point — точка восстановления, на момент создания которой требуется восстановить БД исходного кластера в целевом кластере. При выборе типа восстановления Streaming поле Restore point недоступно для редактирования, т.к. всегда используется последняя точка.

    • Databases — список БД исходного кластера для восстановления в целевом кластере.

    • Repository path — путь к репозиторию с бэкапами исходного кластера. По умолчанию заполняется значением из актуальной конфигурации.

    • Processes — максимальное количество процессов для восстановления одного сегмента.

    • Delta — флаг, указывающий на необходимость использования контрольных сумм (checksums) при восстановлении данных.

    • Force — флаг, указывающий на необходимость полного перезаписывания путей к данным и табличным пространствам в PostgreSQL.

    • Restore mirrors — выпадающий список, значение которого определяет, восстанавливать ли данные для зеркал (mirrors) и Standby при их наличии в кластере:

      • No — не восстанавливать зеркала.

      • In parallel — восстанавливать зеркала параллельно с primary-сегментами.

      • After primary — восстанавливать зеркала после того, как все primary-сегменты восстановлены.

        Настройка stream с типом Copy
        Настройка stream с типом Copy
        Настройка stream с типом Copy
        Настройка stream с типом Copy
        Настройка stream с типом Streaming
        Настройка stream с типом Streaming
        Настройка stream с типом Streaming
        Настройка stream с типом Streaming
  11. Нажмите Run. В результате для целевого кластера запускается действие Disaster recovery start stream copy (для типа восстановления Copy) либо Disaster recovery. Start streaming cluster (для типа восстановления Streaming). Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).

    Действие Disaster recovery. Start streaming cluster остается в статусе Started до прерывания stream (см. примечание ниже). В процессе выполнения этого действия будут отслеживаться все точки восстановления, создаваемые в исходном кластере — для применения в целевом.

  12. После успешного применения всех действий данные из исходного кластера будут перенесены в целевой кластер. Чтобы убедиться в этом, можно выполнить запросы с шага 4.

    ВАЖНО

    Если выбран тип восстановления Streaming:

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

      • Запуск действия Restore в исходном кластере.

      • Запуск нового stream, в котором исходный кластер указан в качестве целевого.

      • Создание новой конфигурации бэкапов в исходном кластере, где изменяются настройки репозитория.

      Только после успешного прерывания можно запускать запросы в целевом кластере.

    • БД целевого кластера будет содержать данные исходного кластера на момент последней точки восстановления, примененной в рамках streaming-процесса.

    Проверка целевого кластера
    • Вывод списка таблиц в базе данных adb при помощи psql-команды \dt:

      \dt

      Результат:

                               List of relations
       Schema |      Name       | Type  |  Owner  |       Storage
      --------+-----------------+-------+---------+----------------------
       public | best_books      | table | gpadmin | heap
       public | book_type       | table | gpadmin | heap
       public | spatial_ref_sys | table | gpadmin | heap
       public | test            | table | gpadmin | append only columnar
       public | test2           | table | gpadmin | append only columnar
      (5 rows)
    • Просмотр данных в таблице best_books:

      SELECT * FROM best_books;

      Результат:

       id |   author   |         title         | public_year
      ----+------------+-----------------------+-------------
        1 | Harper Lee | To Kill a Mockingbird |        1960
      (1 row)

Обратите внимание, что во время запуска stream в системе создается операция восстановления данных для целевого кластера. Просмотреть ее можно, как и стандартное восстановление, запущенное при помощи действия Restore, на вкладке Backup Manager → Backup → <имя целевого кластера> → Restores. Для восстановлений, выполненных в рамках копирования данных между кластерами, в столбце Restore type отображается значение Copy или Streaming (в зависимости от выбранного типа восстановления). Дополнительную информацию можно найти в статье Просмотр восстановлений БД в ADBM.

Для потоков с типом Streaming операция восстановления переводится в статус Done только после прерывания потока — ручного либо автоматического (см. примечание выше). До этого момента она находится в статусе Running.

adbm dr22 dark
Восстановление данных для целевого кластера
adbm dr22 light
Восстановление данных для целевого кластера

Управление конфигурациями DR

Просмотр списка

Все созданные пары кластеров, между которыми сконфигурирован DR, отображаются на вкладке Copy → Configurations страницы Backup Manager.

adbm dr11 dark
Конфигурации DR на вкладке Backup Manager → Copy → Configurations
adbm dr11 light
Конфигурации DR на вкладке Backup Manager → Copy → Configurations

Вкладка содержит следующую информацию.

Поля вкладки Backup Manager → Copy → Configurations
Поле Описание

Source cluster

Исходный кластер, из которого копируются данные

Target cluster

Целевой кластер, в который копируются данные

Username

Логин пользователя, создавшего текущую конфигурацию в web-интерфейсе ADB Control

Stream ID

Идентификатор потока, запущенного в настоящий момент времени для пары кластеров из текущей конфигурации

Status

Статус потока. См. Status ниже

Restore type

Тип восстановления, выбранный при настройке потока

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

  • Source cluster — фильтрация по названию исходного кластера (см. Source cluster выше). Значение следует выбрать из выпадающего списка.

  • Target cluster — фильтрация по названию целевого кластера (см. Target cluster выше). Значение следует выбрать из выпадающего списка.

  • Username — фильтрация по имени пользователя (см. Username выше). Искомое значение вводится полностью.

adbm dr23 dark
Фильтры на вкладке Backup Manager → Copy → Configurations
adbm dr23 light
Фильтры на вкладке Backup Manager → Copy → Configurations

Редактирование

Для редактирования конфигурации выполните следующие шаги:

  1. Нажмите на иконку edit dark edit light в столбце Actions на вкладке Copy → Configurations страницы Backup Manager.

    adbm dr24 dark
    Переход к редактированию
    adbm dr24 light
    Переход к редактированию
  2. В открывшемся окне измените необходимые данные. Значения полей Source cluster и Target cluster не редактируются.

    adbm dr25 dark
    Редактирование конфигурации
    adbm dr25 light
    Редактирование конфигурации
  3. Нажмите кнопку Save.

Удаление

ВНИМАНИЕ
Никогда не удаляйте конфигурацию выполняющегося stream.

Для удаления конфигурации выполните следующие шаги:

  1. Нажмите на иконку delete dark delete light в столбце Actions на вкладке Copy → Configurations страницы Backup Manager.

    adbm dr12 dark
    Переход к удалению
    adbm dr12 light
    Переход к удалению
  2. Подтвердите операцию удаления в открывшемся окне, нажав на кнопку Delete.

    adbm dr13 dark
    Подтверждение удаления
    adbm dr13 light
    Подтверждение удаления

    В результате данные о конфигурации удаляются из системы и более не отображаются на вкладке Backup Manager → Copy → Configurations.

    adbm dr14 dark
    Конфигурация удалена из системы
    adbm dr14 light
    Конфигурация удалена из системы

Управление потоками

Просмотр списка активных потоков

Все активные потоки для копирования данных между кластерами (streams) отображаются на вкладке Copy → Streams страницы Backup Manager. К активным относятся потоки со статусами, отличными от Impossible, Down, Restored (для отображения потоков в этих статусах предназначена вкладка Copy → History).

adbm dr15 dark
Вкладка Backup Manager → Copy → Streams
adbm dr15 light
Вкладка Backup Manager → Copy → Streams

Вкладка содержит следующую информацию.

Поля вкладки Backup Manager → Copy → Streams
Поле Описание

Stream ID

Уникальный идентификатор потока

Source cluster

Исходный кластер, из которого копируются данные в рамках потока

Target cluster

Целевой кластер, в который копируются данные в рамках потока

Username

Логин пользователя, создавшего текущий поток в web-интерфейсе ADB Control

Status

Статус потока. Возможные значения:

  • Init — инициализация;

  • Ready — проверка перед восстановлением проведена успешно;

  • Restoring — выполняется восстановление;

  • Streaming — поток с типом восстановления Streaming активен;

  • Terminating — запущено прерывание потока: ручное либо автоматическое (см. примечание выше).

Start time

Дата и время создания потока в формате DD/MM/YYYY HH:mm:ss

Restore type

Тип восстановления, выбранный при настройке потока

Replication lag

Насколько целевой кластер "отстает" от исходного кластера. Рассчитывается как разница между текущим временем и временем применения последней точки восстановления к целевому кластеру в рамках streaming-процесса. Заполняется только для потоков с типом восстановления Streaming в статусе Streaming

В заголовках столбцов таблицы со списком streams расположены фильтры, которые можно использовать для отбора необходимых данных. Для открытия фильтра необходимо нажать на иконку openside dark openside light. Для тех столбцов, где набор возможных значений ограничен (например, Status), в фильтре можно выбрать значение из выпадающего списка. Для некоторых столбцов (например, Username) требуется ввести искомое значение. Для столбцов, показывающих дату и время (например, Start time), временной диапазон можно выбрать из календаря.

Иконка filtered dark filtered light означает, что для столбца определен фильтр. Для сброса всех фильтров нажмите Reset.

Просмотр списка завершенных потоков

Вкладка Backup Manager → Copy → History предназначена для вывода потоков в следующих статусах:

  • Impossible — запуск невозможен.

  • Down — сбой при выполнении.

  • Restored — восстановление выполнено успешно.

В отличие от описанной выше вкладки Streams, на вкладке History отсутствует столбец Replication lag, а действия для потоков недоступны. В остальном содержимое двух вкладок полностью совпадает.

ВАЖНО

В настоящее время таблица, расположенная на вкладке Backup Manager → Copy → History, по умолчанию показывает потоки, созданные за текущую дату. Чтобы вывести все потоки, воспользуйтесь фильтрами.

Вкладка Backup Manager - Copy - History
Вкладка Backup Manager → Copy → History
Вкладка Backup Manager - Copy - History
Вкладка Backup Manager → Copy → History

Просмотр детальной информации о потоке

Чтобы просмотреть детальную информацию о потоке, нажмите на его идентификатор (Stream ID) в таблице на вкладке Backup Manager → Copy → Streams или Backup Manager → Copy → History.

adbm dr17 dark
Выбор потока
adbm dr17 light
Выбор потока

Открывшаяся страница содержит следующие секции:

  • Overview

  • Statuses

  • Restore points (отображается только для типа восстановления Streaming)

Секция Overview показывает базовую информацию о потоке.

adbm dr18 dark
Секция Overview
adbm dr18 light
Секция Overview
Поля секции Overview
Поле Описание

Source cluster

Исходный кластер

Target cluster

Целевой кластер

Username

Логин пользователя, создавшего текущий поток в web-интерфейсе ADB Control

Date

Дата и время создания потока в формате DD/MM/YYYY HH:mm:ss

Restore ID

Идентификатор восстановления в целевом кластере. Для перехода к просмотру деталей восстановления нажмите на его идентификатор

Database

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

Restore type

Тип восстановления, выбранный при настройке потока

Repository path

Путь к репозиторию, указанный при настройке потока

Processes

Количество процессов, выбранное при настройке потока

Flags

Флаги, выбранные при настройке потока (см. Restore mirrors, Delta, Force в описании выше)

Action name

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

Restore point

Идентификатор точки восстановления, выбранной при настройке потока

Replication lag

Насколько целевой кластер "отстает" от исходного кластера. Рассчитывается как разница между текущим временем и временем применения последней точки восстановления к целевому кластеру в рамках streaming-процесса. Заполняется только для потоков с типом восстановления Streaming в статусе Streaming

Секция Statuses показывает историю изменения статуса выбранного потока.

Секция Statuses
Секция Statuses
Секция Statuses
Секция Statuses
Поля секции Statuses
Поле Описание

Stream history ID

Идентификатор записи о смене статуса потока

Status

Статус потока на момент времени, указанный в поле Date

Date

Дата и время смены статуса потока в формате DD/MM/YYYY HH:mm:ss

Секция Restore points показывает список точек восстановления, примененных к целевому кластеру в рамках текущего stream. Секция отображается только для потоков с типом восстановления Streaming.

Секция Restore points
Секция Restore points
Секция Restore points
Секция Restore points
Поля секции Restore points
Поле Описание

Restore point name

Название, присвоенное точке восстановления в исходном кластере

Time applied

Дата и время применения точки восстановления к целевому кластеру (в формате DD/MM/YYYY HH:mm:ss)

Прерывание потока

ВАЖНО
Действие Terminate доступно только для потоков с типом Streaming в статусе Streaming.

Чтобы прервать выполняющийся поток с типом Streaming, выполните следующие шаги:

  1. Примените действие Terminate к нужному потоку на вкладке Backup Manager → Copy → Streams. Для открытия выпадающего списка с возможными действиями нажмите кнопку added actions dark added actions light в столбце Action.

    Переход к прерыванию потока
    Переход к прерыванию потока
    Переход к прерыванию потока
    Переход к прерыванию потока
  2. Подтвердите действие в открывшемся окне, нажав на кнопку Run.

    Подтверждение действия
    Подтверждение действия
    Подтверждение действия
    Подтверждение действия
  3. В результате для целевого кластера запускается действие Disaster recovery. Start terminate. Это действие, в свою очередь, порождает несколько дочерних действий (subactions). Просмотреть их можно на вкладке Actions (см. Просмотр действий в ADBM).

    В ходе выполнения прерывания:

    • Ранее запущенное действие Disaster recovery. Start streaming cluster переводится в статус Done.

    • Операция восстановления данных для целевого кластера переводится в статус Done.

    • Статус выбранного stream изменяется по следующей схеме: Streaming → Terminating → Restoring → Restored.

    • Stream перемещается с вкладки Backup Manager → Copy → Streams на Backup Manager → Copy → History.

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней