diff --git a/docs/config/client.en.md b/docs/config/client.en.md index b234b167..f5dc3721 100644 --- a/docs/config/client.en.md +++ b/docs/config/client.en.md @@ -27,6 +27,7 @@ affect their interaction with the cluster. - [hostname](#hostname) - [ublk_queue_depth](#ublk_queue_depth) - [ublk_max_io_size](#ublk_max_io_size) +- [qemu_file_mirror_path](#qemu_file_mirror_path) ## client_iothread_count @@ -241,3 +242,14 @@ Default queue depth for [Vitastor ublk servers](../usage/ublk.en.md). Default maximum I/O size for Vitastor [ublk servers](../usage/ublk.en.md). The largest of 1 MB and pool block size multiplied by EC data chunk count is used if not specified. + +## qemu_file_mirror_path + +- Type: string + +When set to an FS directory path (for example, `/mnt/vitastor/`), `qemu-img info` and similar +QAPI commands return the name of the image inside this directory instead of normal +`vitastor://?image=abc` URI as `filename`. + +This allows to then mount this path using [vitastor-nfs](../usage/nfs.en.md) and trick +third-party systems like Veeam which rely on `filename` in the image info but don't support Vitastor. diff --git a/docs/config/client.ru.md b/docs/config/client.ru.md index c8631181..8c33cfbb 100644 --- a/docs/config/client.ru.md +++ b/docs/config/client.ru.md @@ -27,6 +27,7 @@ - [hostname](#hostname) - [ublk_queue_depth](#ublk_queue_depth) - [ublk_max_io_size](#ublk_max_io_size) +- [qemu_file_mirror_path](#qemu_file_mirror_path) ## client_iothread_count @@ -247,3 +248,15 @@ RDMA и хотите повысить пиковую производитель Максимальный размер запроса ввода-вывода для [ublk-серверов Vitastor](../usage/ublk.ru.md). Если не задан, используется максимум из 1 МБ и размера блока пула, умноженного на число частей данных EC-пула. + +## qemu_file_mirror_path + +- Тип: строка + +Если установить эту опцию равной пути к каталогу в ФС, команда `qemu-img info` и подобные +команды QAPI будут возвращать в поле `filename` имя образа внутри заданного каталога вместо +обычного адреса типа `vitastor://?image=abc`. + +Это позволяет смонтировать этот путь с помощью [vitastor-nfs](../usage/nfs.ru.md) и обмануть +сторонние системы типа Veeam, которые полагаются на поле `filename` в информации об образе QEMU, +но не поддерживают Vitastor. diff --git a/docs/config/src/client.yml b/docs/config/src/client.yml index 744dd3ef..f8b86661 100644 --- a/docs/config/src/client.yml +++ b/docs/config/src/client.yml @@ -299,3 +299,20 @@ Максимальный размер запроса ввода-вывода для [ublk-серверов Vitastor](../usage/ublk.ru.md). Если не задан, используется максимум из 1 МБ и размера блока пула, умноженного на число частей данных EC-пула. +- name: qemu_file_mirror_path + type: string + info: | + When set to an FS directory path (for example, `/mnt/vitastor/`), `qemu-img info` and similar + QAPI commands return the name of the image inside this directory instead of normal + `vitastor://?image=abc` URI as `filename`. + + This allows to then mount this path using [vitastor-nfs](../usage/nfs.en.md) and trick + third-party systems like Veeam which rely on `filename` in the image info but don't support Vitastor. + info_ru: | + Если установить эту опцию равной пути к каталогу в ФС, команда `qemu-img info` и подобные + команды QAPI будут возвращать в поле `filename` имя образа внутри заданного каталога вместо + обычного адреса типа `vitastor://?image=abc`. + + Это позволяет смонтировать этот путь с помощью [vitastor-nfs](../usage/nfs.ru.md) и обмануть + сторонние системы типа Veeam, которые полагаются на поле `filename` в информации об образе QEMU, + но не поддерживают Vitastor. diff --git a/docs/usage/qemu.en.md b/docs/usage/qemu.en.md index 90736d80..20fed330 100644 --- a/docs/usage/qemu.en.md +++ b/docs/usage/qemu.en.md @@ -186,3 +186,12 @@ To remove the device: vdpa dev del test1 kill ``` + +## Veeam + +Vitastor QEMU driver has a feature that allows to trick third-party systems like Veeam not able to parse qemu-img +vitastor URIs: [qemu_file_mirror_path](../config/client.en.md#qemu_file_mirror_path). + +To make such systems work, you should set this option to an FS directory path (for example, `/mnt/vitastor/`) and +mount this directory using [`vitastor-nfs mount --block`](../usage/nfs.en.md). It will make them access +your images using files and, hopefully, succeed in doing their normal job :). diff --git a/docs/usage/qemu.ru.md b/docs/usage/qemu.ru.md index 1c664964..c3b903e7 100644 --- a/docs/usage/qemu.ru.md +++ b/docs/usage/qemu.ru.md @@ -188,3 +188,12 @@ vdpa dev add name test1 mgmtdev vduse vdpa dev del test1 kill ``` + +## Veeam + +Драйвер Vitastor QEMU имеет функцию, которая позволяет обманывать сторонние системы типа Veeam, которые +не могут сами по себе разобрать адреса дисков в vitastor: [qemu_file_mirror_path](../config/client.ru.md#qemu_file_mirror_path). + +Чтобы заставить такие системы работать, вам нужно установить эту опцию равной пути к некоторому каталогу +в ФС (например, `/mnt/vitastor/`) и примонтировать этот каталог с помощью [`vitastor-nfs mount --block`](../usage/nfs.ru.md). +Они начнут обращаться к образам как к файлам и, вероятно, смогут заработать корректно :).