# Реплікація ZFS між вузлами Proxmox VE: налаштування

> Як налаштувати реплікацію ZFS між вузлами Proxmox VE: інтервали, storage.cfg, ручний запуск і відновлення після збою.

Жива міграція вимагає спільного сховища або перенесення всього диска мережею в момент перемикання. Реплікація ZFS вирішує цю проблему інакше: диск віртуальної машини заздалегідь синхронізується на сусідній вузол, і в разі аварії досить увімкнути копію за секунди, а не чекати копіювання терабайтів.

## Як працює реплікація ZFS у Proxmox VE

Механізм побудований на знімках ZFS і команді `zfs send/receive`. Proxmox VE за розкладом створює знімок диска VM, надсилає різницю з попереднім знімком на цільовий вузол і зберігає там актуальну копію. Між вузлами передається лише дельта, а не весь диск, тому повторна реплікація займає секунди навіть для диска на сотні гігабайт.

## Вимоги до сховища перед налаштуванням

На обох вузлах — джерелі та отримувачі — має бути налаштований пул ZFS з однаковою назвою (наприклад `rpool/data`), а самі вузли зобов'язані входити до одного [кластера Proxmox VE](https://www.zevshost.net/uk/kb/proxmox-cluster-nastroika/). Перевірити назву пула та його стан можна командою:

```
zpool status rpool
zfs list rpool/data
```

Якщо пули названо по-різному, реплікацію доведеться налаштовувати через ручний storage.cfg з явною вказівкою цільового пула.

## Налаштування завдання реплікації в інтерфейсі

Завдання створюється у властивостях віртуальної машини, у розділі **Replication**. Заповніть параметри:

| Параметр | Значення | Коментар |
| --- | --- | --- |
| Target | ім'я вузла-отримувача | другий або третій вузол кластера |
| Schedule | \*/15 | інтервал реплікації у хвилинах |
| Rate limit | 50 MB/s | обмеження смуги на спільній мережі |

Після збереження завдання з'явиться у загальному списку реплікації вузла і почне перший повний знімок — він найдовший, далі підуть лише інкрементальні передачі.

## Як запустити реплікацію вручну і перевірити статус

Для разової синхронізації чи діагностики скористайтеся командою з консолі вузла:

```
pvesr run --id 101-0
pvesr status
```

Команда `pvesr status` показує час останньої успішної реплікації по кожному завданню і причину збою, якщо він був. Типова помилка — розсинхронізація знімків після ручного видалення диска або перенесення VM без оновлення завдання.

## Що робити у разі обриву реплікації

Якщо завдання падає з помилкою про відсутній спільний знімок, відновіть синхронізацію, видаливши локальну копію на отримувачі та запустивши повну реплікацію заново:

```
pvesr delete 101-0 --force
qm set 101 --delete replicate
```

Після цього створіть завдання реплікації заново через інтерфейс — Proxmox VE зніме свіжий базовий знімок і перезапустить ланцюжок інкрементів з нуля.

## Чим реплікація ZFS відрізняється від резервної копії

Реплікація — це не заміна регулярному резервному копіюванню через [розклад бекапів](https://www.zevshost.net/uk/kb/proxmox-backup-schedule/). Вона зберігає лише останню копію на сусідньому вузлі і не захищає від логічних помилок на кшталт видалення файлів усередині гостьової ОС, які одразу реплікуються разом з диском. Реплікацію варто використовувати для швидкого failover, а бекапи — для відновлення на точку в часі.

## Чек-лист робочої реплікації

- Пул ZFS з однаковою назвою присутній на обох вузлах.
- Команда `pvesr status` показує свіжий час останньої успішної синхронізації.
- Rate limit підібрано так, щоб реплікація не заважала звичайному мережевому трафіку кластера.
- Паралельно з реплікацією налаштовано звичайне резервне копіювання на окреме сховище.

---

Джерело: https://www.zevshost.net/uk/kb/proxmox-zfs-replikaciya/
