nl2go.clickhouse_backup
Ansible Role: ClickHouse バックアップ
ClickHouse バックアップツールのインストールと設定を管理するAnsible Roleです。
Role 変数
使用可能な変数は 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
バックアップ用のcronジョブをインストール
このRoleには、定期的にバックアップを実行するための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ファイルを参照してください。
著者情報
このRoleは2020年にNewsletter2Go GmbHによって作成されました。
プロジェクトについて
An Ansible Role that manages installation and configuration of the ClickHouse backup tool clickhouse-backup
インストール
ansible-galaxy install nl2go.clickhouse_backup
ライセンス
mit
ダウンロード
4.2k