Я хочу создать файловый сервер /NAS, используя btrfs для защиты данных (от bitrot), но я бы хотел использовать свой существующий сервер KVM /QEMU (debian с btrfs raid1) и создать для этого виртуальную машину.
Если я создам виртуальную машину и сохраню данные в файловой системе ext4, будет ли контрольная сумма btrfs на хост-сервере обнаруживать повреждение данных на виртуальной машине?
--------------------
| KVM server |
| btrfs - raid1 |
| ----------- |
| | VM-ext4 | |
| ----------- |
|------------------|
Если предыдущий ответ «нет», нужно ли мне создавать виртуальную машину с btrfs в качестве файловой системы?
В этом случае, чтобы сохранить функцию «самовосстановления» в btrfs, мне нужно было бы создать как минимум 2 виртуальных диска, чтобы иметь btrfs в raid1.
---------------------
| KVM server |
| btrfs - raid1 |
| ------------ |
| | VM-btrfs | |
| | 2 x vda | |
| ------------ |
|-------------------|
Но так я бы тратил много места ... raid1 на хост-сервере плюс raid1 на виртуальной машине.
Или, возможно, лучшее решение - внедрить файловый сервер непосредственно на хост-сервере (хотя я бы предпочел сохранить некоторое разделение между этими двумя ролями)?
обновление 1
Хотя я предпочитаю btrfs, мой главный вопрос касается полезности btrfs/zfs в обнаружении и исправлении тихого повреждения на дисках виртуальных машин. Как эти файловые системы могут отличить тихое повреждение от обычной записи на виртуальный диск?
обновление 2
Еще немного погуглив, я смог найти только дополнительную информацию по этому вопросу из serverfault.
Согласно некоторым комментариям, виртуальная гостевая система также будет подвержена риску, если не будет реализована более сложная файловая система (вероятно, гостевая файловая система raid1 внутри файловой системы хоста raid1).
Итак, моя идея сейчас заключается в следующем:
- настроить файловый сервер на хост-сервере kvm
- храните важные данные в безопасности на файловом сервере (который уже использует btrfs) и делитесь им с виртуальными машинами через NFS
- отключить COW для папки образа диска виртуальной машины
- создавать моментальные снимки kvm виртуальных машин и создавать резервные копии их файлов конфигурации на общих ресурсах NFS
Это разумное решение или я забыл некоторые важные детали?