clickhouse_backup

Статус сборки Ansible Galaxy Оценка качества Ansible Galaxy Последняя версия в GitHub Скачивания Ansible Galaxy

Ansible Роль: Резервное копирование ClickHouse

Ansible роль, управляющая установкой и настройкой инструмента резервного копирования ClickHouse.

Переменные роли

Доступные переменные перечислены и описаны с указанием значений по умолчанию в defaults/main.yml.

Зависимости

Отсутствуют.

Пример Playbook

- hosts: all
  roles:
     - { role: nl2go.clickhouse_backup }
  vars:
    clickhouse_backup_version: 0.5.2
    clickhouse_backup_general_remote_storage: gcs
    clickhouse_backup_gcs_credentials_json: !vault |
      $ANSIBLE_VAULT;1.2;AES256;production
      1234xxx...
    clickhouse_backup_gcs_bucket: clickhouse-backup-bucket
    clickhouse_backup_gcs_path: "clickhouse"
    clickhouse_backup_clickhouse_host: "{{ ansible_default_ipv4.address }}"
    clickhouse_backup_clickhouse_password: 123SECURE

Установка cronjob для выполнения резервного копирования

Роль содержит задачи для автоматической настройки 3 cron задач, которые выполняют резервное копирование регулярно. Установку этих cron задач можно контролировать, установив переменную clickhouse_backup_install_crontab, которая по умолчанию равна true. Настройка по умолчанию будет выполнять ежедневные, еженедельные и ежемесячные резервные копирования. Количество резервных копий, которые следует хранить в удаленном хранилище для каждого типа резервного копирования, можно контролировать с помощью переменных:

clickhouse_backup_general_backups_to_keep_remote_daily: 7
clickhouse_backup_general_backups_to_keep_remote_weekly: 4
clickhouse_backup_general_backups_to_keep_remote_monthly: 12

Указанные здесь числа — это значения по умолчанию.

Разработка

Используйте docker-molecule следуя инструкциям для запуска Molecule или установите Molecule локально (не рекомендуется, могут возникнуть конфликты версий).

Предоставьте токен Hetzner Cloud:

export HCLOUD_TOKEN=123abc456efg

Предоставьте пользовательский или расшифруйте существующий файл учетных данных GCS:

export CI_FILE_SECRET=123
openssl aes-256-cbc -d \
    -in molecule/resources/clickhouse-backup-gcs-credentials.json.enc \
    -out molecule/resources/clickhouse-backup-gcs-credentials.json \
    -md sha256 \
    -k ${CI_FILE_SECRET}

Используйте следующее для запуска тестов:

molecule test --all

Ответственные

Лицензия

Смотрите файл LICENSE.md для получения подробной информации.

Информация об авторе

Эта роль была создана в 2020 году компанией Newsletter2Go GmbH.

О проекте

An Ansible Role that manages installation and configuration of the ClickHouse backup tool clickhouse-backup

Установить
ansible-galaxy install nl2go/ansible-role-clickhouse-backup
Лицензия
mit
Загрузки
4222
Владелец