update vykar
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Grégory Lebreton 2026-04-23 17:45:02 +02:00
parent c0542212c4
commit 7ba85c2812

View File

@ -38,9 +38,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
### 1. Préparer les partitions ZFS
??? example "Installer ZFS et créer les datasets"
```bash
```{ .bash .copy }
# Installer ZFS
sudo apt install zfsutils-linux
@ -53,7 +51,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
sudo zfs create tank/mysql
sudo zfs create tank/data
# Définir les points de montage
# Déf{ .ini .copy }r les points de montage
sudo zfs set mountpoint=/var/www tank/www
sudo zfs set mountpoint=/var/lib/mysql tank/mysql
@ -67,9 +65,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
### 2. Installer vykar-server
??? example "Télécharger et installer le binaire"
```bash
```{ .bash .copy }
# Télécharger le binaire (adapter la version)
wget https://github.com/borgbase/vykar/releases/download/v0.12.1/vykar-v0.12.1-x86_64-unknown-linux-gnu.tar.gz
tar xzf vykar-v0.12.1-x86_64-unknown-linux-gnu.tar.gz
@ -85,9 +81,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
### 3. Configurer les tokens et répertoires
??? example "Créer la structure et générer les tokens par serveur"
```bash
```{ .bash .copy }
# Créer les répertoires par serveur
sudo mkdir -p /var/lib/vykar/serveur-prod-1
sudo mkdir -p /var/lib/vykar/serveur-prod-2
@ -102,7 +96,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Fichiers d'environnement — `/etc/vykar/*.env`"
```bash
```{ .bash .copy }
# /etc/vykar/serveur-prod-1.env
sudo tee /etc/vykar/serveur-prod-1.env << 'EOF'
VYKAR_TOKEN=token-prod-1-xxxxxxxxxxxxxxxx
@ -134,7 +128,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Template systemd — `/etc/systemd/system/vykar-server@.service`"
```ini
```{ .ini .copy }
sudo tee /etc/systemd/system/vykar-server@.service << 'EOF'
[Unit]
Description=Vykar backup server - %i
@ -162,9 +156,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
EOF
```
??? example "Activer les instances"
```bash
```{ .bash .copy }
sudo systemctl daemon-reload
sudo systemctl enable --now vykar-server@serveur-prod-1
sudo systemctl enable --now vykar-server@serveur-prod-2
@ -175,9 +167,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
### 5. Reverse proxy TLS
??? example "Configuration Nginx — `/etc/nginx/sites-available/vykar`"
```nginx
```{ .conf .copy }
# Serveur prod-1
server {
listen 443 ssl http2;
@ -235,9 +225,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
### 1. Installer Vykar
??? example "Télécharger et installer le client"
```bash
```{ .bash .copy }
wget https://github.com/borgbase/vykar/releases/download/v0.12.1/vykar-v0.12.1-x86_64-unknown-linux-gnu.tar.gz
tar xzf vykar-v0.12.1-x86_64-unknown-linux-gnu.tar.gz
sudo mv vykar /usr/local/bin/
@ -252,7 +240,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Fichier de configuration — `/etc/vykar/vykar.yaml`"
```yaml
```{ .yaml .copy }
repositories:
- label: "backup-principal"
url: "https://backup.example.com"
@ -338,11 +326,9 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
### 3. Initialisation et premier backup
??? example "Initialiser le dépôt et lancer le premier backup"
```bash
```{ .bash .copy }
# Initialiser le dépôt distant (une seule fois)
vykar init --config /etc/vykar/vykar.yaml
vykar { .ini .copy }t --config /etc/vykar/vykar.yaml
# Tester le premier backup manuellement
vykar backup --config /etc/vykar/vykar.yaml
@ -357,7 +343,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Service — `/etc/systemd/system/vykar-backup.service`"
```ini
```{ .ini .copy }
[Unit]
Description=Vykar Backup
After=network-online.target
@ -372,7 +358,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Timer — `/etc/systemd/system/vykar-backup.timer`"
```ini
```{ .ini .copy }
[Unit]
Description=Vykar Backup quotidien
@ -386,7 +372,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Activer le timer"
```bash
```{. bash .copy }
sudo systemctl enable --now vykar-backup.timer
# Vérifier le timer
@ -397,9 +383,9 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
## Commandes utiles
??? tip "Lister et inspecter les snapshots"
- tip "Lister et inspecter les snapshots
```bash
```{ .bash .copy }
# Lister les snapshots
vykar list
@ -411,9 +397,9 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
vykar snapshot find --name '*.conf' --since 7d
```
??? tip "Restaurer et monter"
- Restaurer et monter
```bash
```{ .bash .copy }
# Restaurer le dernier snapshot
vykar restore latest /tmp/restauration
@ -425,9 +411,9 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
umount /mnt/snapshot
```
??? tip "Vérifier l'intégrité et libérer de l'espace"
- Vérifier l'intégrité et libérer de l'espace
```bash
```{ .bash .copy }
# Vérifier l'intégrité du dépôt
vykar check
vykar check --verify-data # plus complet, plus long
@ -456,7 +442,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
## Annexes
??? example "Stack applicative à sauvegarder — `docker-compose.yml`"
??? example "Stack applicative à sauvegarder — `compose.yml`"
```yaml
services:
@ -546,7 +532,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Configuration msmtp — `/etc/msmtprc`"
```bash
```{. bash .copy }
# Installer msmtp
sudo apt install msmtp msmtp-mta
@ -576,7 +562,7 @@ Sauvegarde chiffrée, dédupliquée et basée sur des snapshots ZFS vers un serv
??? example "Restauration des données"
```bash
```{. bash .copy }
# PostgreSQL
vykar restore latest /tmp/restauration
docker exec -i mon-postgres \