Skip to content

Latest commit

 

History

History
124 lines (68 loc) · 3.8 KB

README.md

File metadata and controls

124 lines (68 loc) · 3.8 KB

KristaBackup

Система автоматизации процесса создания, ротации и перемещения бэкапов.

  • Работает автономно.

  • Имеет кросс-платформенную конфигурацию.

  • Содержит логирование процесса выполнения.

  • Интегрируема с системами мониторинга (например, Zabbix).

Системные требования

  • Ubuntu 14.04 и выше, Debian 8 и выше, CentOS 7, AltLinux 8, Astra Linux 1.6.

  • Python3 (>=3.2).

Установка

Установить систему можно следующим образом:

git clone https://github.com/javister/krista-backup
cd krista-backup

# установка зависимостей веб-сервера
pip install -r requirements.txt

Подробнее про установку можно найти в разделе Установка или docs/text/installation.txt

Использование

Из командной строки можно:

  • Запустить сконфигурированное задание или действие.

  • Добавить/удалить задание из crontab.

  • Запустить веб-интерфейс или веб-api.

  • Редактировать список пользователей веб-интерфейса.

Пример запуска

python3 KristaBackup.py run make_dump

Подробнее об использовании можно найти в разделе Использование или docs/text/usage.txt

Примечание

Чтобы уменьшить вероятность возникновений ошибок с правами доступа рекомендуется запускать задания под root пользователем.

Конфигурирование

Терминология

Действие (action)

Выполняет некоторую конкретную инструкцию. Например, pg_dump или rsync.

Задание (task)

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

Задания могут быть активными или неактивными: активные задания содержться в crontab. Статус заданий можно посмотреть напрямую в crontab или через веб-интерфейс.

Расписание (schedule)

Конфигурации заданий хранятся в расписании.

Описание

Конфигурация описываются в формате yaml. Примеры можно найти в файлах config.yaml.example, servers.yaml.example и users.yaml.example.

Подробнее о конфигурировании можно прочитать в разделе Конфигурация или docs/text/configuration.txt

Схематичный пример конфигурации:

schedule: # расписание
  full_dump: # описание задания
    actions:
      - some_action_1 # действие 1
      - some_action_2 # действие 2

    cron: 00 23 * * 1-6
    descr: вечером по будням выполняются some_action_1 и some_action_2

actions:
  some_action_1: #  описание действия 1
    param: a
    type: type1

  some_action_2: #  описание действия 2
    option: b
    type: type2

Разработчики

s.postnikov@krista.ru, m.adrian@krista.ru

Лицензия

Copyright 2020 ООО НПО Криста

Licensed under the Apache License, Version 2.0