Не могли бы вы рассказать, как создать новый домен?
Из справочного руководства по API PHP: http://libvirt.org/php/api-reference.html
Я видел эти функции:
blockquote>(i) libvirt_image_create($conn, $name, $size, $format) (ii) libvirt_domain_new($conn, $name, $arch, $memMB, $maxmemMB, $vcpus, $iso_image, $disks, $networks, $flags) (iii) libvirt_domain_create($res) (iv) libvirt_domain_create_xml($conn, $xml)
Проблема, с которой я сталкиваюсь, заключается в том, что я не знаю, как создать новый домен. Либо мне сначала нужно создать новое изображение, используя libvirt_image_create ...., либо что-то еще.
Привет, я прокомментирую это, так как я являюсь разработчиком и сопровождающим libvirt-php
.
libvirt_image_create($conn, $name, $size, $format)
Этот API только для создания образа виртуальной машины (виртуальный диск для виртуальной машины). Это не делает вид создания домена (виртуальной машины). Вам это не нужно, если вы используете PXE / сетевую загрузку и т. П.
libvirt_domain_new($conn, $name, $arch, $memMB, $maxmemMB, $vcpus,
$iso_image, $disks, $networks, $flags)
Это для установки новой виртуальной машины. Прежде всего, вам нужно подключиться к экземпляру libvirt daemon с помощью libvirt_connect()
. Возвращаемое значение libvirt_connect()
- это указатель / ресурс, который необходимо передать в качестве первого аргумента этой функции. Затем вы должны указать имя виртуальной машины, архитектуру (i686 или x86_64), начальную и максимальную память в мегабайтах (сначала посмотрите спецификации системы для операционной системы, которую вы хотите установить там), количество VCPU, образ ISO для установки из (для загрузки PXE это не требуется, и вы можете передать туда «false»), массив информации о диске (также может быть false) и сетевые карты.
Флаги необязательны, и вам не нужно их пропускать. Пожалуйста, обратитесь к каталогу примеров установки libvirt-php
для реального примера - это лучше, чем то, что написано здесь. Сама установка является сложной задачей, поэтому она требует слишком много информации
libvirt_domain_create($res)
Это создает домен, идентифицируемый ресурсом. Ресурс - это, по сути, уже существующий домен, найденный в libvirt_domain_lookup_*()
API-функциях.
libvirt_domain_create_xml($conn, $xml)
Это создает один временный домен, который не является постоянным. Этот домен запускается только один раз на основе XML-файла libvirt.
Формат XML-файлов libvirt приведен в документации по libvirt, а не в libvirt-php.