Настройка и использование скрипта для резервного копирования данных Comindware Platform (Linux)


Экспериментальная функция

Представленная здесь функция находится на стадии разработки. См. «Поддержка экспериментальных функций».

Введение

Здесь представлены инструкции по резервному копированию данных Comindware Platform с помощью скриптов на стороне сервера вместо использования веб-интерфейса.

Это позволяет системному администратору более гибко управлять процессом и параметрами резервного копирования.

Резервное копирование с помощью скриптов включает следующие шаги:

  • создание снимка данных Apache Ignite, архивирование и копирование снимка в хранилище резервных копий, очистка использованных ресурсов;
  • создание снимка данных OpenSearch (Elasticsearch), архивирование и копирование снимка в хранилище резервных копий, очистка использованных ресурсов;
  • синхронизация сетевой папки с пользовательскими файлами (Streams), архивирование и копирование файлов в хранилище резервных копий, очистка использованных ресурсов.

Скрипт резервного копирования (cmw_backups_create.sh) выполняет следующие операции:

  • ведёт журнал по пути, указанном в переменной logFile;
  • сокращает журнал до последних 1000 строк при каждом запуске;
  • использует файл блокировки backup.lock для предотвращения нескольких одновременных запусков резервного копирования;
  • удаляет старые архивы резервных копий согласно параметру backupDepth.

Внимание

  • Создание снимка и сохранение архива могут занимать значительное время в зависимости от размера данных.
  • Требуется достаточное место на диске для временного хранения снимков и архивов.

См. «Рекомендации по резервному копированию» и «Развёртывание ПО. Архитектура и ИТ-ландшафт».

Подготовка и настройка Apache Ignite

  1. Проверьте наличие в директории /usr/share/ignite распакованных скриптов Apache Ignite актуальной версии.

    Если скрипты отсутствуют, скачайте и распакуйте их в указанную директорию либо переустановите Apache Ignite из дистрибутива вспомогательного ПО Comindware Platform. См. «Установка, запуск, инициализация и остановка ПО» и «Пути и содержимое директорий (Linux)».

    Расположение скриптов

    Файлы скриптов резервного копирования по умолчанию расположены в директории /usr/share/comindware/bin.

  2. Разрешите использование клиентского подключения в файле конфигурации Ignite.config Apache Ignite на узлах Comindware Platform в экземпляра Comindware Platform. Для этого найдите соответствующий блок в файле и скорректируйте его согласно следующему примеру:

    ... 
    <property name="clientConnectorConfiguration">
    <bean class="org.apache.ignite.configuration.ClientConnectorConfiguration">
    <property name="thinClientEnabled" value="true" />
    <property name="host" value="127.0.0.1" />
    <property name="port" value="10800" />
    ...
    </bean>
    </property>
    ...
  3. Откройте скрипт резервного копирования cmw_backups_create.sh для редактирования:

    nano /usr/share/comindware/bin/cmw_backups_create.sh 
  4. Настройте в скрипте пути и имена в переменных в соответствии с вашей конфигурацией:

    • instanceName — имя экземпляра Comindware Platform на узле кластера;
    • snapshotPath — директория для снимков узла Apache Ignite, по умолчанию /var/lib/comindware/${instanceName}/Database/snapshots;
    • streamsPath — путь к директории с вложенными файлами;
    • osHost — IP или FQDN сервера OpenSearch (Elasticsearch);
    • osPort — порт подключения к серверу OpenSearch (Elasticsearch);
    • osRepoPath — путь к директории снимков данных OpenSearch (Elasticsearch);
    • osIndexPrefix — префикс индексов OpenSearch (Elasticsearch);
    • backupsPath — директория с резервными копиями, по умолчанию /mnt/share/${instanceName}/Backups/Snapshots;
    • backupDepth — срок хранения резервных копий в днях, по умолчанию 14;
    • igniteHome — директория скриптов Apache Ignite, по умолчанию /usr/share/ignite.
    • logFile — путь к файла журнала резервного копирования, по умолчанию /var/log/comindware/${instanceName}/Logs/cmw_backup.log.

    Внимание!

    В кластерной конфигурации необходимо учитывать, что выполнение команды снимка данных на одном узле произведёт формирование снимка данных на каждом узле кластера Apache Ignite.

    Это может привести к заполнению свободного места и падению узлов Comindware Platform.

    Поэтому рекомендуется директорию со снимками данных Apache Ignite (backupsPath) размещать на выделенной области SSD-хранилища типа NVMe.

  5. Проверьте выполнения скрипта cmw_backups_create.sh, выполнив команду:

    bash /usr/share/comindware/bin/cmw_backups_create.sh -vso 

    Внимание!

    Обратите внимание на время создания снимков, а также время сохранения и размеры архивов.

    Ключи скрипта cmw_backups_create.sh

    Скрипт cmw_backups_create.sh поддерживает следующие ключи:

    • -s — включает создание и архивирование вложенных файлов.
    • -o — включает снятие и архивирование снимков данных OpenSearch (Elasticsearch).
    • -v — подробный вывод (verbose), выводит сообщения в терминал помимо записи в лог
    • -c — только очистка (clean-only), выполняет только операции очистки старых снимков без создания нового.

Запуск скрипта с помощью планировщика (cron)

Здесь представлен пример настройки резервного копирования по расписанию: раз в час с 6:00 до 22:00.

  1. Откройте очередь задач crontab:

    sudo crontab -e 
  2. Добавьте строку запуска скрипта cmw_backups_create.sh:

    0 6-22 * * * sudo bash /usr/share/comindware/bin/cmw_backups_create.sh 

Запуск скрипта cmw_backups_create.sh для нескольких узлов кластера

С помощью crontab можно распределить операции резервного копирования узлов кластера на разные временные интервалы.

Например, настроим поочередное выполнение резервного копирования на 4-х узлах кластера раз в час с 6-00 до 22-00.

  1. На каждом хосте с узлами кластера откройте очередь задач crontab:

    sudo crontab -e 
  2. Добавьте строки запуска скрипта для первого узла:

    # Запуск резервного копирования текущего узла 
    0 6-18/4 * * * sudo bash /home/admin-ag/cmw_snapshot_create.sh -so
    # Сохранение снимков
    30 6-21 * * * sudo bash /home/admin-ag/cmw_snapshot_create.sh -c
  3. Для второго узла добавьте строки:

    # Запуск резервного копирования текущего узла 
    0 7-19/4 * * * sudo bash /home/admin-ag/cmw_snapshot_create.sh -so
    # Сохранение снимков
    30 6-19/4 * * * sudo bash /home/admin-ag/cmw_snapshot_create.sh -c
  4. Аналогичным образом разнесите по времени и настройте автозапуск скрипта на остальных узлах.

  5. В результате запуск скриптов для узлов кластера должен выполняться по представленному в следующей таблице графику:
Узел node_0 node_1 node_3 node_4
Хост CBAP-node1 CBAP-node2 CBAP-node4 CBAP-node5
Снимок Apache Ignite 06:10



10:10



14:10



18:10



22:10

7:10



11:10



15:10



19:10


8:10



12:10



16:10



20:10



9:10



13:10



17:10



21:10
Время crontab 10 6-22/4 * * * 10 7-19/4 * * * 10 8-20/4 * * * 10 9-21/4 * * *
Очистка снимков
(-c)
7:35-21:35/4 7:35-21:35/4 7:35-21:35/4 7:35-21:35/4
Время crontab 35 7-21 * * * 35 6-22 * * * 35 6-22 * * * 35 6-22 * * *
К началу


Номер Статьи: 5140
Размещено: Wed, Oct 29, 2025
Последнее обновление: Wed, Nov 5, 2025

Online URL: https://kb.comindware.ru/article/nastrojka-i-ispolzovanie-skripta-dlya-rezervnogo-kopirovaniya-dannyh-comindware-platform-linux-5140.html