nl2go.clickhouse_backup
Rola Ansible: ClickHouse Backup
To jest rola Ansible, która zarządza instalacją i konfiguracją narzędzia do tworzenia kopii zapasowych ClickHouse (Kliknij tutaj).
Zmienne roli
Dostępne zmienne są wymienione i opisane wraz z wartościami domyślnymi w pliku defaults/main.yml.
Zależności
Brak.
Przykładowy 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
Instalacja zadania cron do wykonywania kopii zapasowych
Rola zawiera zadania, które automatycznie tworzą 3 zadania cron, które regularnie wykonują kopię zapasową. Instalację tych zadań cron można kontrolować, ustawiając zmienną clickhouse_backup_install_crontab
, której domyślna wartość to true
. Domyślna konfiguracja ustawi kopie zapasowe dzienne, tygodniowe i miesięczne. Liczbę kopii zapasowych, które należy przechowywać w zdalnej pamięci dla każdego rodzaju kopii zapasowych, można kontrolować za pomocą zmiennych:
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
Podane tutaj liczby to wartości domyślne.
Rozwój
Użyj docker-molecule zgodnie z instrukcjami, aby uruchomić Molecule lub zainstaluj Molecule lokalnie (niezalecane, mogą wystąpić konflikty wersji).
Podaj token Hetzner Cloud:
export HCLOUD_TOKEN=123abc456efg
Podaj niestandardowy plik z danymi logowania GCS lub odszyfruj istniejący plik:
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}
Użyj poniższego polecenia do uruchomienia testów:
molecule test --all
Utrzymanie
Licencja
Szczegóły znajdują się w pliku LICENSE.md.
Informacje o autorze
Ta rola została stworzona w 2020 roku przez Newsletter2Go GmbH.
An Ansible Role that manages installation and configuration of the ClickHouse backup tool clickhouse-backup
ansible-galaxy install nl2go.clickhouse_backup