virsh — разница между pool-define-as и pool-create-as

Не уверен, что это правильный форум. ссылка на страницу libvirt здесь. Если это нужно разместить в другом месте, пожалуйста, дайте мне знать.

В чем разница между virsh pool-define-as и create-as? Читая справочную страницу для virsh, кажется, что вам не нужно запускать сборку пула и запуск пула при использовании create-as. Это единственная разница? Мое тестирование показывает, что оба подбирают существующие файлы (в случае типа пула dir ) как тома. Я что-то пропустил.

Спасибо, Ашок


person thegrind    schedule 04.01.2017    source источник


Ответы (1)


Объекты в libvirt могут быть как временными, так и постоянными. Временный объект существует только до тех пор, пока он работает, в то время как постоянный объект существует все время. По сути, с постоянным объектом конфигурация XML сохраняется libvirt в /etc/libvirt.

Таким образом, в случае пулов хранения, если вы используете «virsh pool-define-as», вы будете создавать файл конфигурации для постоянного пула хранения. Позже вы можете запустить этот пул хранения с помощью «virsh pool-start», остановить его с помощью «virsh pool-destroy» и снова запустить позже или даже настроить его на автоматический запуск при загрузке хоста.

Если вам нужен временный пул хранения, вы можете использовать «virsh pool-create-as», который немедленно запустит пул хранения, не сохраняя его конфигурацию на диске. Этот пул хранения полностью исчезнет, ​​когда вы выполните 'virsh pool-destory' (хотя на самом деле хранилище все еще будет существовать, libvirt просто не узнает об этом). С временным пулом хранения вы, очевидно, не можете запустить его автоматически при загрузке, поскольку libvirt не знает о его конфигурации.

Как правило, большинство людей/приложений захотят использовать постоянные пулы.

person DanielB    schedule 04.01.2017
comment
Даниил, Спасибо. Полезно знать, что объекты из опции create-as являются временными. Есть ли также различие в том, что любой из вариантов может использовать существующие компоненты хранилища (например, LVM), тогда как другой пытался создать базовые части (опять же, используя LVM в качестве примера). ? Кроме того, допустимо ли сбрасывать XML-определение переходного объекта в /etc/libvirt и ожидать, что оно будет сохраняться при перезагрузке. Спасибо. - person thegrind; 05.01.2017
comment
Ни pool-create-as, ни pool-define-as не повлияют на базовое хранилище. Они оба просто обнаружат существующее хранилище, т.е. они будут проверять существующие LV в группе томов LVM. Операция pool-build опасна тем, что фактически форматирует новую группу томов с нуля. И, конечно же, vol-create/vol-delete, которые делают то, что предполагают их имена. Да, вы можете превратить существующий переходный пул в постоянный, просто выполнив virsh pool-dumpxml foo > foo.xml && virsh pool-define foo.xml - person DanielB; 05.01.2017
comment
Кроме того, я надеюсь, что когда-нибудь вся эта замечательная информация, размещенная здесь и там, может быть доступна/организована/обобщена из одного места (справочная страница?). Представьте себе огромное количество официальной информации, которая может быть централизована, и количество сэкономленного времени. Определенно сэкономил бы мне день только на этом. Я могу только мечтать, потому что я плохой кодер :) - person thegrind; 05.01.2017
comment
Выше был общий комментарий из моего опыта работы со всеми технологиями, не относящийся к libvirt. - person thegrind; 05.01.2017
comment
Даниил, еще раз спасибо за разъяснения. - person thegrind; 05.01.2017