Резервное копирование в ClickHouse с помощью утилиты clickhouse-backup.
1. Установка clickhouse-backup
Загрузим и установим пакет clickhouse-backup:
wget https://github.com/Altinity/clickhouse-backup/releases/download/v2.6.5/clickhouse-backup_2.6.5_amd64.deb
dpkg -i clickhouse-backup_2.6.5_amd64.deb
2. Просмотр конфигурации
Посмотрим пример конфигурационного файла и текущий конфиг:
cat /etc/clickhouse-backup/config.yml.example
clickhouse-backup default-config
3. Настройка конфигурационного файла
Создадим файл /etc/clickhouse-backup/config.yml со следующим содержимым:
general:
remote_storage: s3
backups_to_keep_local: 1
clickhouse:
username: root
password: "password"
host: localhost
port: 9000
s3:
access_key: "your_access_key"
secret_key: "your_secret_key"
bucket: "your-bucket"
endpoint: "https://s3.us-east-1.amazonaws.com"
region: us-east-1
path: "your_path"
4. Проверка подключения
Выполним команду для проверки доступных таблиц в ClickHouse:
clickhouse-backup tables
5. Создание резервной копии
clickhouse-backup create
6. Просмотр списка резервных копий
clickhouse-backup list
7. Автоматизация бэкапа с загрузкой в S3
Создадим скрипт /root/clickhouse_backup.sh:
#!/bin/bash
yesterday=$(date -d "yesterday" +%Y_%m_%d)
clickhouse-backup create clickhouse_$yesterday && \
clickhouse-backup upload clickhouse_$yesterday