nl2go.clickhouse_backup

Statut de construction Ansible Galaxy Score de qualité d'Ansible Galaxy Dernière version GitHub Téléchargements Ansible Galaxy

Rôle Ansible : Sauvegarde ClickHouse

Un rôle Ansible qui gère l'installation et la configuration de l'outil de sauvegarde ClickHouse.

Variables du rôle

Les variables disponibles sont listées et décrites avec leurs valeurs par défaut dans defaults/main.yml.

Dépendances

Aucune.

Exemple de Playbook

- hôtes: all
  rôles:
     - { rôle: 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

Installer cronjob pour exécuter des sauvegardes

Le rôle contient des tâches pour configurer automatiquement 3 cron jobs qui exécutent la sauvegarde régulièrement. L'installation de ces cron jobs peut être contrôlée en définissant la variable clickhouse_backup_install_crontab, dont la valeur par défaut est true. La configuration par défaut mettrait en place des sauvegardes quotidiennes, hebdomadaires et mensuelles. Le nombre de sauvegardes à conserver sur le stockage distant pour chaque type de sauvegarde peut être contrôlé par les variables :

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

Les nombres donnés ici sont les valeurs par défaut.

Développement

Utilisez docker-molecule en suivant les instructions pour exécuter Molecule ou installez Molecule localement (non recommandé, des conflits de version peuvent apparaître).

Fournissez le token de Hetzner Cloud :

export HCLOUD_TOKEN=123abc456efg

Fournissez un fichier de credentials GCS personnalisé ou déchiffrez un fichier de credentials existant :

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}

Utilisez ce qui suit pour exécuter les tests :

molecule test --all

Mainteneurs

Licence

Voir le fichier LICENSE.md pour plus de détails.

Informations sur l'auteur

Ce rôle a été créé en 2020 par Newsletter2Go GmbH.

À propos du projet

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

Installer
ansible-galaxy install nl2go.clickhouse_backup
Licence
mit
Téléchargements
4.2k
Propriétaire