nl2go.clickhouse_backup

Build Status Ansible Galaxy Ansible Galaxy Qualitätsbewertung GitHub-Tag (neueste nach Datum) Ansible Galaxy Downloads

Ansible Rolle: ClickHouse Backup

Eine Ansible Rolle, die die Installation und Konfiguration des ClickHouse Backup Werkzeugs verwaltet.

Rollenvariablen

Verfügbare Variablen sind in defaults/main.yml aufgelistet und beschrieben, zusammen mit den Standardwerten.

Abhängigkeiten

Keine.

Beispiel-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 zur Ausführung von Backups installieren

Die Rolle enthält Aufgaben, um automatisch 3 Cron-Jobs einzurichten, die regelmäßig Backups durchführen. Die Installation dieser Cron-Jobs kann durch Setzen der Variablen clickhouse_backup_install_crontab, die standardmäßig auf true gesetzt ist, gesteuert werden. Die Standardkonfiguration würde tägliche, wöchentliche und monatliche Backups einrichten. Die Anzahl der Backups, die im Remote-Speicher für jede Art von Backup aufbewahrt werden, kann durch die Variablen gesteuert werden:

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

Die hier angegebenen Zahlen sind die Standardwerte.

Entwicklung

Verwenden Sie docker-molecule und folgen Sie den Anweisungen, um Molecule auszuführen oder installieren Sie Molecule lokal (nicht empfohlen, da Versionskonflikte auftreten können).

Geben Sie das Hetzner Cloud-Token an:

export HCLOUD_TOKEN=123abc456efg

Geben Sie eine benutzerdefinierte Datei für GCS-Anmeldeinformationen an oder entschlüsseln Sie eine bestehende Datei:

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}

Um Tests auszuführen, verwenden Sie Folgendes:

molecule test --all

Pfleger

Lizenz

Siehe die LICENSE.md Datei für Details.

Autor Informationen

Diese Rolle wurde 2020 von Newsletter2Go GmbH erstellt.

Über das Projekt

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

Installieren
ansible-galaxy install nl2go.clickhouse_backup
GitHub Repository
Lizenz
mit
Downloads
4.2k