Облачная платформаAdvanced

Создание Snapshots для резервного копирования данных

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

CSS позволяет использовать snapshots для резервного копирования и восстановления данных кластера Elasticsearch. Сохраняя snapshot в OBS bucket, вы сохраняете копию данных кластера на определённый момент времени. Восстанавливая этот snapshot, вы можете вернуть кластер в предыдущее состояние. Существует два способа создания snapshots: автоматический и ручной.

  • Автоматическое создание snapshot: Snapshots автоматически создаются ежедневно или еженедельно в соответствии с предустановленным расписанием, обеспечивая постоянную защиту данных. Настраивая политику автоматического создания snapshot, вы сокращаете ручные операции и повышаете надёжность и эффективность резервного копирования.
  • Ручное создание snapshot: Вы создаёте snapshots вручную для особых случаев, например, перед операцией с высоким риском (например, обновлением кластера). Это гарантирует возможность восстановления данных с помощью snapshots в случае непредвиденных проблем. Ручные snapshots предоставляют дополнительную гибкость.

Влияние на Billing

При использовании snapshots для резервного копирования данных созданные snapshots сохраняются в OBS bucket, что приводит к дополнительным расходам. Подробности см. в разделе "Billing" в Object Storage Service User Guide.

Ограничения

  • Создание snapshot кластера увеличит нагрузку на CPU и ввод‑вывод диска. Чтобы минимизировать влияние на производительность системы, рекомендуется планировать выполнение в часы низкой нагрузки.
  • При создании или восстановлении snapshot вы можете выполнять только определённые операции, включая доступ к Kibana, просмотр метрик и удаление других snapshots. Однако следующие операции недоступны: изменение конфигурации, перезапуск или удаление кластера, удаление snapshot, который создаётся или восстанавливается, а также создание или восстановление другого snapshot. Пока для кластера выполняется создание или восстановление snapshot, любая задача автоматического создания snapshot, инициированная для этого кластера, будет отменена.
  • При создании первого snapshot в кластере выполняется полное резервное копирование всех данных. Последующие snapshots являются инкрементными и сохраняют только изменения, произошедшие после предыдущего snapshot. Поскольку каждый инкрементный snapshot зависит от своих предшественников, их необходимо восстанавливать в правильном порядке.
  • В кластере с разъединёнными хранением и вычислениями индекс, находящийся одновременно в состоянии frozen и closed, нельзя резервировать.
  • Для индекса с включённым разделением чтения/записи между leader и follower синхронизацию нельзя остановить во время создания snapshot для него. Чтобы остановить синхронизацию, необходимо дождаться завершения создания snapshot.
  • Индекс, резервируемый с помощью snapshot, нельзя удалить или закрыть. Это ограничение также распространяется на операции удаления или закрытия, инициированные политиками ISM. Чтобы выполнить такие операции, дождитесь завершения создания snapshot.

Предварительные требования

  • OBS bucket, используемый для хранения snapshot кластера, должен быть создан. OBS bucket должен находиться в том же регионе, что и целевой кластер Elasticsearch, а класс хранения должен быть Standard или Warm.
  • Статус кластера Available.

Включение Cluster Snapshots

  1. Войдите в консоль управления CSS.
  2. В панели навигации слева выберите Clusters > Elasticsearch.
  3. В списке кластеров нажмите имя целевого кластера. Отобразится страница информации о кластере.
  4. Нажмите вкладку Cluster Snapshots и проверьте, включены ли снимки кластера.
    • Если они включены, пропустите этот шаг.
    • Если они отключены, перейдите к следующему шагу.
  5. На вкладке Cluster Snapshots нажмите Enable Snapshot. В отображаемом диалоговом окне настройте необходимые параметры.
    Table 1 Включение снимков кластера

    Параметр

    Описание

    OBS Bucket

    В раскрывающемся списке выберите OBS bucket для хранения снимков.

    Если ни один OBS bucket не соответствует вашим требованиям, нажмите Create Bucket, чтобы перейти в консоль OBS и создать его.

    Чтобы предоставить пользователю IAM доступ к бакету OBS, необходимо предоставить этому пользователю разрешения GetBucketStoragePolicy, GetBucketLocation, ListBucket и ListAllMyBuckets.

    Backup Path

    Путь к хранилищу Снапшотов в бакете OBS.

    Путь бэкапа не может:

    • Содержать следующие символы: \:*?"<>|'{}
    • Начинаться со слеша (/).
    • Начинаться или заканчиваться точкой (.).
    • Содержать более двух последовательных слешей (/) или точек (.).
    • Превышать 512 символов.

    ВНИМАНИЕ:

    Для хранения Снапшотов можно использовать только стандартное хранилище OBS. Не применяйте правила жизненного цикла OBS к пути бэкапа.

    Максимальная скорость бэкапа (в секунду)

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

    Value format: number + unit

    • Диапазон чисел: 0–9999
    • Единица: KB, MB, GB, TB, PB или B

    Default value: 40 MB

    Значение 0MB означает отсутствие ограничения скорости резервного копирования данных в снапшоты. Слишком высокая скорость резервного копирования может привести к чрезмерному использованию ресурсов, что может повлиять на стабильность кластера. Поэтому задавайте этот параметр внимательно.

    Maximum Recovery Rate (per Second)

    Параметр задает максимальную скорость восстановления на узел. При превышении этого значения срабатывает управление потоком, чтобы предотвратить чрезмерное использование ресурсов и обеспечить стабильность системы. Фактическая скорость восстановления может не достигать заданного значения, так как она зависит от таких факторов, как производительность OBS и диск I/O.

    Value format: number + unit

    • Диапазон чисел: 0–9999
    • Единица: KB, MB, GB, TB, PB или B

    Default value:

    • Для кластеров Elasticsearch версии 7.6.2 и более ранних значение по умолчанию составляет 40 MB.
    • Для кластеров Elasticsearch, выпущенных после версии 7.6.2, значение по умолчанию — 0 MB, что означает отсутствие ограничения.

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

    Для кластеров Elasticsearch, выпущенных после версии 7.6.2, скорость восстановления также ограничивается параметром indices.recovery.max_bytes_per_sec.

    • Если Maximum Recovery Rate (per Second) ниже, чем indices.recovery.max_bytes_per_sec, применяется первое значение.
    • Если Maximum Recovery Rate (per Second) превышает indices.recovery.max_bytes_per_sec, применяется второе значение.

    ПРИМЕЧАНИЕ:
    • Чтобы проверить значение indices.recovery.max_bytes_per_sec, выполните следующую команду:
      GET _cluster/settings
    • Чтобы изменить indices.recovery.max_bytes_per_sec, выполните следующую команду:
      PUT _cluster/settings
      {
      "transient": {
      "indices.recovery.max_bytes_per_sec": "100mb"
      }
      }

    IAM Agency

    Выберите IAM agency, чтобы предоставить текущей учетной записи разрешение на доступ и использование OBS. Чтобы сохранять снимки в OBS bucket, необходимо иметь требуемые разрешения доступа к OBS.

    • Если вы настраиваете агентство впервые, нажмите Automatically Create IAM Agency, чтобы создать css-obs-agency.
    • Если ранее уже был автоматически создан IAM agency, вы можете нажать One-click authorization, чтобы разрешения OBS Administrator были автоматически удалены, а вместо этого автоматически добавлены следующие пользовательские политики для реализации более тонкого контроля разрешений.
      "obs:bucket:GetBucketLocation",
      "obs:object:GetObjectVersion",
      "obs:object:GetObject",
      "obs:object:DeleteObject",
      "obs:bucket:HeadBucket",
      "obs:bucket:GetBucketStoragePolicy",
      "obs:object:DeleteObjectVersion",
      "obs:bucket:ListBucketVersions",
      "obs:bucket:ListBucket",
      "obs:object:PutObject"
    • Когда OBS bucket используют шифрование SSE-KMS, IAM agency должен получить разрешения KMS. Вы можете нажать Automatically Create IAM Agency и One-click authorization, чтобы следующие пользовательские политики были созданы автоматически.
      "kms:cmk:create",
      "kms:dek:create",
      "kms:cmk:get",
      "kms:dek:decrypt",
      "kms:cmk:list"
    • Чтобы использовать Automatically Create IAM Agency и One-click authorization, требуются следующие минимальные разрешения:
      "iam:agencies:listAgencies",
      "iam:roles:listRoles",
      "iam:agencies:getAgency",
      "iam:agencies:createAgency",
      "iam:permissions:listRolesForAgency",
      "iam:permissions:grantRoleToAgency",
      "iam:permissions:listRolesForAgencyOnProject",
      "iam:permissions:revokeRoleFromAgency",
      "iam:roles:createRole"
    • Чтобы использовать IAM agency, требуются следующие минимальные разрешения:
      "iam:agencies:listAgencies",
      "iam:agencies:getAgency",
      "iam:permissions:listRolesForAgencyOnProject",
      "iam:permissions:listRolesForAgency"

    ПРЕДУПРЕЖДЕНИЕ:

    Имя agency может содержать только буквы (с учётом регистра), цифры, символы подчёркивания (_) и дефисы (-). В противном случае бэкап завершится с ошибкой.

    Определите, следует ли включить автоматическое создание снимков в зависимости от потребностей сервиса.

    • Чтобы включить его, выберите Automatic Snapshot Creation и настройте необходимые параметры, обратившись к Configuring Automatic Snapshot Creation.
    • Чтобы отключить его, снимите выделение с Automatic Snapshot Creation; в этом случае вам потребуется создавать снимки вручную.

  6. Нажмите OK, чтобы включить cluster snapshots.

    Информация о конфигурации будет отображена на вкладке Cluster Snapshots.

Настройка Automatic Snapshot Creation

Вы можете включить automatic snapshot creation после того, как cluster snapshots уже включены.

  1. На вкладке Cluster Snapshots нажмите Modify Settings. В отображаемом диалоговом окне выберите Automatic Snapshot Creation и настройте необходимые параметры.
    Table 2 Настройка automatic snapshot creation

    Parameter

    Description

    Snapshot Name Prefix

    Имя snapshot состоит из snapshot name prefix и метки времени, например, snapshot-1566921603720.

    Префикс имени snapshot может содержать от 1 до 32 символов. Он должен начинаться со строчной буквы и может содержать только строчные буквы, цифры, дефисы (-) и подчёркивания (_).

    Значение по умолчанию: snapshot.

    Time Zone

    Выберите time zone для времени начала backup.

    Backup Start Time

    Укажите время начала авто бэкапа.

    Выберите значение из раскрывающегося списка. Интервал может быть Daily, Hourly или еженедельно (выбором конкретного дня недели), а время бэкапа можно установить на любой час от 00:00 до 23:00 (только полные часы).

    Сохранённые Снапшоты

    Количество автоматически сохраняемых Снапшотов. Значение может быть от 1 до 90. Система автоматически удаляет избыточные Снапшоты каждые полчаса. (Политика удаления по истечении срока применяется только к Снапшотам, которые были автоматически созданы с той же частотой, что и текущая политика автоматического создания Снапшотов.)

    ПРИМЕЧАНИЕ:

    Если интервал создания Снапшотов короткий или размер данных индексов велик, количество автоматически сохраняемых Снапшотов может не достичь значения, установленного этим параметром.

    Индекс

    Укажите имя индекса для бэкапа.

    • Вы можете выполнить бэкап указанного индекса. Чтобы указать несколько индексов, разделяйте их запятыми (,), например, index1,index2,index3.
    • Можно использовать символ звёздочки (*) для совпадения нескольких индексов. Например, index* указывает, что все индексы с префиксом index будут включены в бэкап.

    Если параметр не указан, по умолчанию будет выполнен бэкап всех индексов в кластере.

    Имя индекса может содержать от 0 до 1024 символов. Оно не может содержать пробелы, заглавные буквы или специальные символы "\<|>/?.

    ПРИМЕЧАНИЕ:

    Можно выполнить команду GET /_cat/indices для получения имён всех индексов в кластере.

  2. Нажмите OK, чтобы включить автоматическое создание Снапшотов.

    После включения Automatic Snapshot Creation, параметр в области Cluster Snapshots отображается как Enabled.

    Снимки, автоматически создаваемые в соответствии с политикой снимков, а также созданные вручную, отображаются в списке задач снимков кластера.

    Когда статус задачи снимка меняется на Available, снимок создаётся. Если создание снимка не удалось, нажмите справа от списка снимков, чтобы просмотреть количество неудачных задач и узнать причины сбоев. Отображается не более 20 неудачных задач. Когда функция снимков отключена или кластер удалён, записи о сбоях также удаляются.

  3. Проверьте, успешно ли выполнен бэкап данных.

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

  4. Чтобы отключить автоматическое создание снимков, нажмите Modify Settings. В открывшемся диалоговом окне снимите выделение с Automatic Snapshot Creation и нажмите OK. В открывшемся диалоговом окне выберите, следует ли удалять автоматически созданные снимки. Затем нажмите OK, чтобы отключить автоматическое создание снимков.
    Caution
    • При отключении автоматического создания снимков, если вы выбираете Delete snapshots created automatically, будут удалены только существующие снимки. Снимки, которые находятся в процессе создания, всё равно будут созданы.
    • Если автоматическое создание снимков отключено без удаления автоматически созданных снимков, все такие снимки в кластере нельзя будет удалить вручную после повторного включения автоматического создания снимков. Вместо этого их может удалить только система в соответствии с политикой жизненного цикла снимков. Например, если в политике параметр Retained Snapshots установлен в значение 10, система автоматически удалит лишние снимки (сначала самые старые) на следующей получасовой отметке, когда количество существующих снимков превысит этот предел.

    После отключения автоматического создания снимков параметр Automatic Snapshot Creation в области Cluster Snapshots отображается как Disabled.

Ручное создание Snapshot

Когда снимки включены для кластера, вы можете вручную создавать снимки для него.

  1. В разделе Cluster Snapshot Tasks нажмите Manually Create Snapshot. В открывшемся диалоговом окне настройте политику снимков.
    Table 3Параметры для ручного создания снимка

    Параметр

    Описание

    Snapshot Name

    Установите snapshot name. В отличие от автоматически создаваемых snapshots, вручную созданные snapshots не имеют автоматически добавляемой к их именам информации о времени.

    Значение может содержать от 4 до 64 символов и должно начинаться с буквы. Допускаются только строчные буквы, цифры, дефисы (-) и подчёркивания (_).

    Index

    Укажите имя index для резервного копирования.

    • Вы можете выполнить резервное копирование указанного index. При указании нескольких indexes используйте запятые (,) для их разделения, например, index1,index2,index3.
    • Вы можете использовать символ * для соответствия нескольким indexes. Например, index* указывает, что все indexes с префиксом index будут включены в резервное копирование.

    Если этот параметр не указан, по умолчанию будут резервно копироваться все indexes в кластере.

    Имя index может содержать от 0 до 1024 символов. Оно не может содержать пробелы, заглавные буквы или специальные символы "\<|>/?

    ПРИМЕЧАНИЕ:

    Вы можете выполнить команду GET /_cat/indices для получения имён всех indexes в кластере.

    Snapshot Description

    Добавьте snapshot description.

    Значение может содержать от 0 до 256 символов и не может включать специальные символы !\u003c\u003e=\u0026\\"'

  2. Нажмите OK, чтобы начать создание snapshots.

    Снимки, созданные вручную, а также автоматически в соответствии с политикой создания снимков, отображаются в списке задач cluster snapshot task list.

    Когда статус задачи снимка меняется на Available, снимок создаётся. Если создание снимка не удалось, нажмите справа от списка snapshot list, чтобы просмотреть количество неудачных задач и узнать причины сбоев. Отображается не более 20 неудачных задач. Когда функция снимков отключена или кластер удалён, записи о сбоях также удаляются.

  3. Проверьте, успешно ли выполнено резервное копирование данных.

    В списке задач cluster snapshot task list нажмите слева от имени снимка. Отображаются сведения о снимке. Проверьте шарды и индексы, которые были резервированы, чтобы убедиться в успешности резервного копирования.

Отключение Cluster Snapshots

Если функция cluster snapshot больше не нужна, её можно отключить, чтобы освободить ресурсы хранения.

На странице Cluster Snapshots нажмите Disable Snapshot. В появившемся диалоговом окне нажмите OK. Отключение cluster snapshots не приводит к автоматическому удалению существующих снимков. Вместо этого их необходимо удалить вручную в консоли OBS.