Остановить виртуальную машину virsh

Как принудительно закрыть гостевую виртуальную машину с помощью команды virsh на Linux KVM

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Вы всегда можете заставить гостевой домен/виртуальную машину завершить работу с помощью команды virsh. Эта команда выполняет немедленное и безоговорочное завершение работы виртуальной машины. Давайте посмотрим, как заставить гостя прекратить работу на Linux KVM.

Как бережно прекратить работу гостевой виртуальной машины с помощью команды virsh на Linux KVM

Синтаксис будет выглядеть следующим образом:

Как немедленно завершить работу виртуальной машины гостя (принудительное завершение работы)

Синтаксис будет выглядеть следующим образом:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virshРисунок 01: Команда Virsh заставляющая гостя завершить работу

Вышеупомянутая команда работает, однако она также может привести к повреждению гостевой файловой системы, тем не менее, оставив ее ресурсы в целости. Поэтому я рекомендую делать резервную копию вашей виртуальной машины каждый день или, по крайней мере, делать резервные копии важных файлов, включая базу данных.

Это интересно:

За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

Источник

Управление виртуальными машинами KVM из консоли

В предыдущей статье мы рассмотрели установку гипервизора KVM и создание виртуальной машины. В рамках одной статьи, мы не смогли охватить все нюансы управления виртуальными машинами, а затронули лишь их часть. Сегодня, мы постараемся рассказать все об управлении виртуальными машинами из консоли сервера: как изменить параметры ВМ, добавить дополнительные устройства и рассмотрим основные команды, которые используются для администрирования виртуальных машин KVM.

Virsh: команды управления виртуальной машиной KVM

Первый вопрос, который возникает у начинающего администратора KVM: как увидеть созданные виртуальные машины, как остановить, запустить и удалить их. Для управления ВМ в KVM из консоли можно использовать утилиту virsh (использует libvirt API). С помощью утилиты virsh можно выполнить практически все операции с виртуальными машинами KVM.

# virsh list – показать список запущенных ВМ

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Как видно из скриншота, в первом случае отключенная ВМ не была отображена.

# virsh shutdown — выключить виртуальную машину

# virsh start — запустить виртуальную машину

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

# virsh suspend — приостановить виртуальную машину

# virsh resume — запустить приостановленную виртуальную машину

# virsh reboot — перезапустить виртуальную машину

# virsh destroy — уничтожить виртуальную машину

# virsh undefine — удалить машину из списка и удалить все файлы, принадлежащие ей (обычно применяется после выполнения команды virsh destroy).

# virsh vcpuinfo — информация о процессоре на виртуальной машине (информацию о железе физического Linux сервера можно получить так)

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Еще несколько команд по получению различной информации о виртуальной машине:

# virsh domid — получить идентификатор виртуальной машины

# virsh domuuid — получить UUID виртуальной машины

# virsh dominfo — получить сведения о виртуальной машине

# virsh domstate — просмотр состояния виртуальной машины

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

# virsh dumpxml — вывести файл конфигурации указанной виртуальной машины в XML формате

Добавление памяти и vCPU виртуальной машине KVM

В консоли KVM вы можете добавить или уменьшить ресурсы процессора и памяти, выделенные для ВМ двумя способами:

Если виртуальная машина запущена, ее нужно остановить:

# virsh shutdown test-centos

Теперь с помощью virsh изменим количество виртуальных процессоров до 6 (vCPU):

— количество ядер процессора

Но при применении этой команды, у меня сразу же появилась ошибка:

Мы не можем установить количество ядер процессора, больше, чем максимальное количество. Чтобы увеличить максимальное количество ядер ВМ, выполните команду:

Повторите первую команду и запустите виртуальную машину:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Проверим количество процессоров в настройках ВМ: овленное количество процессоров:

# virsh dumpxml test-centos

Аналогичным образом добавим память виртуальной машине:

Все по той же причине, сразу же вышла ошибка:

Увеличим максимальное значение памяти::

Теперь можно увеличить память ВМ.

Перед всеми изменениями не забывайте останавливать ВМ, а после запускать ее.

Также вы можете изменить ресурсы ВМ KVM через ее конфигурационный XML файл. Можно изменить файл в режиме онлайн или же сделав бэкап XML файла ВМ, изменить его и применить к виртуальной машине.

Отредактируем XML файл ВМ в онлайн режиме:

В открывшемся редакторе vi внесите изменения, нажав кнопку “Insert”.

Например, зададим для ВМ 2 ядра и 1Гб памяти:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Сохраните изменения в файле и перезапустите ВМ:

Проверьте настройки ВМ:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Тоже самое можно сделать, сделав бэкап XML файла:

# virsh dumpxml > /root/test.xml
# vi /root/test.xml

Измените нужные вам параметры, сохраните файл и примените к виртуальной машине:

# virsh shutdown test-centos

# virsh define /root/test.xml

# virsh start test-centos

KVM: добавление диска в виртуальную машину

В одной из наших статей, мы описывали процесс расширения и уменьшения дисков виртуальных машин в KVM. Но мы не описывали вариант по добавлению дополнительного диска.

Сначала нужно создать дополнительный файл диска для виртуальной машины:

Вместо qcow2 вы можете указать нужный формат диска, так же нужно указать путь до файла. У меня хранилище для дисков /vz/disk/.

После этого, можно добавить устройство виртуального диска к самой ВМ:

Остановите и запустите ВМ, проверьте что получилось:

# virsh shutdown test-centos

# virsh start test-centos

# virsh dumpxml test-centos

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

KVM: добавление сетевой карты для виртуальной машины

Попрьуем добавить дополнительный сетевой интерфейс для ВМ. Сначала проверим, какие сетевые интерфейсы созданы на хосте:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

У меня на KVM сервере создана одна виртуальная машина, с одним сетевым интерфейсом. К br0 нам нужно прикрепить еще один виртуальный сетевой интерфейс. Выполните команды:

Проверьте, что у ВМ появился дополнительный сетевой интерфейс:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Также вы можете изменить сетевые настройки виртуальной машины напрямую через XML файл: # virsh edit test-centos

После первого сетевого интерфейса добавьте следующие строки:

Сохраните файл и запустите ВМ. Остальную конфигурацию, KVM добавит сам (mac address и тд).

В данной статье мы затронули основные моменты, которые могут вам понадобиться при управлении виртуальными машинами KVM из консоли Linux сервера. В следующей статье мы рассмотрим управление виртуальными машинами через графический менеджер virt-manager.

Источник

Virsh — управление виртуальными машинами KVM

virsh — утилита для командной строки Linux, предназначенная для управления виртуальными машинами и гипервизорами KVM и Xen.

С помощью virsh вы можете сохранять состояние виртуальных машин, переносить ВМ между гипервизорами и управлять виртуальными сетями.

С virsh вы всегда можете получить список доступных команд или параметров, используя команду «help». «help command» даст вам дополнительную информацию по команде command.

Создание новой виртуальной машины

Перед тем, как вы сможете управлять виртуальной машиной с помощью virsh, вам нужно определить ее:

Указанная команда определяет новую виртуальную машину newvm. Чтобы увидеть ее в списке, вам нужно использовать ‘list —inactive’ или ‘list —all’, поскольку list без параметров покажет только уже запущенные ВМ.

Список ваших виртуальных машин

Virsh позволяет просмотреть виртуальные машины на данном узле командой list:

Создание, запуск, установка и уничтожение ВМ — define, undefine, start, shutdown, destroy

Виртуальные машины, которые вы видите с командой list —all — являются «defined». Каждая виртуальная машина настраивается через XML файл в каталоге /etc/libvirt/qemu. Если вы хотите удалить ВМ из списка определенных в системе виртуальных машин, вам нужно использовать команду undefine:

Чтобы выполнить undefine нужно предварительно остановить виртуальную машину:

Команда shutdown пытается завершить работу гостевой операционной системы, используя ACPI.

Вы также можете использовать destroy. Эта команда мгновенно отключит виртуальную систему, как если вы выключите кабель питания из компьютера.

Если вы изменили файл конфигурации виртуальной машины, вам нужно сообщить об этом KVM перед перезапуском ВМ.

Теперь можно запустить виртуальную машину:

Приостановка и продолжение работы виртуальных машин

Virsh позволяет приостановить и затем продолжить работу виртуальной машины

Изменение параметров виртуальной машины

libvirt stores it’s configuration as xml in ‘/etc/libvirt/qemu’. The xml is easy to understand, and is similar to VMware *.vmx files. While it is possible to edit these files in place and restart libvirt-bin for the changes to take affect, the recommended method for modifying the attributes of a virtual machine is via virsh (or virt-manager, if it supports changing the hardware you want to change). The concept is simple:

For example, to edit the machine named ‘foo’ (you can get a list of your machines with ‘virsh list —all’), do:

Добавление процессоров

KVM allows you to create SMP guests. To allocate two CPUs to a VM, dump the xml as above, then edit your xml to have:

Now define the VM as above.

Добавление памяти

To change the memory allocation in a VM, dump the xml as above, then edit your xml to have:

Now define the VM as above. Keep in mind that the memory allocation is in kilobytes, so to allocate 512MB of memory, use 512 * 1024, or 524288.

Изменение модели сетевой карты

kvm and qemu currently default to using the rtl8139 NIC. Supported NICs in Ubuntu 8.04 LTS are i82551, i82557b, i82559er, ne2k_pci, pcnet, rtl8139, e1000, and virtio. To use an alternate NIC, dump the xml as above, then edit your xml to have:

Now define the VM as above.

Добавление USB устройств

Ограничения для USB устройств в KVM

Изменение Apparmor

Для получения доступа к USB устройствам требуются изменения в настройках apparmor. Отредактируйте /etc/apparmor.d/abstractions/libvirt-qemu и раскомментируйте строки.:

После изменения настроек apparmor нужно перезапустить.:

Добавление USB устройства

Определите Vendor ID и Product ID.:

Получение новых ID

Чтобы получить новый MAC адрес для вставки в файл конфигурации виртуальной машины, используйте команду

Чтобы получить новый uuid для вашего xml файла, используйте: uuidgen

Источник

Управление виртуальными машинами KVM из консоли

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Управление виртуальными машинами KVM из консоли

В предыдущей статье мы рассмотрели установку гипервизора KVM и создание виртуальной машины. В рамках одной статьи, мы не смогли охватить все нюансы управления виртуальными машинами, а затронули лишь их часть. Сегодня, мы постараемся рассказать все об управлении виртуальными машинами из консоли сервера: как изменить параметры ВМ, добавить дополнительные устройства и рассмотрим основные команды, которые используются для администрирования виртуальных машин KVM.

Virsh: команды управления виртуальной машиной KVM

Первый вопрос, который возникает у начинающего администратора KVM: как увидеть созданные виртуальные машины, как остановить, запустить и удалить их. Для управления ВМ в KVM из консоли можно использовать утилиту virsh (использует libvirt API). С помощью утилиты virsh можно выполнить практически все операции с виртуальными машинами KVM.

# virsh list – показать список запущенных ВМ

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Как видно из скриншота, в первом случае отключенная ВМ не была отображена.

# virsh shutdown — выключить виртуальную машину

# virsh start — запустить виртуальную машину

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

# virsh suspend — приостановить виртуальную машину

# virsh resume — запустить приостановленную виртуальную машину

# virsh reboot — перезапустить виртуальную машину

# virsh destroy — уничтожить виртуальную машину

# virsh undefine — удалить машину из списка и удалить все файлы, принадлежащие ей (обычно применяется после выполнения команды virsh destroy).

# virsh vcpuinfo — информация о процессоре на виртуальной машине

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Еще несколько команд по получению различной информации о виртуальной машине:

# virsh domid — получить идентификатор виртуальной машины

# virsh domuuid — UUID виртуальной машины

# virsh dominfo — получить сведения о виртуальной машине

# virsh domstate — просмотр состояния виртуальной машины

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

# virsh dumpxml — вывести файл конфигурации указанной виртуальной машины в XML формате

Добавление памяти и vCPU виртуальной машине KVM

В консоли KVM вы можете добавить или уменьшить ресурсы процессора и памяти, выделенные для ВМ двумя способами:

Если виртуальная машина запущена, ее нужно остановить:

# virsh shutdown test-centos

Теперь с помощью virsh изменим количество виртуальных процессоров до 6 (vCPU):

— количество ядер процессора

Но при применении этой команды, у меня сразу же появилась ошибка:

Мы не можем установить количество ядер процессора, больше, чем максимальное количество. Чтобы увеличить максимальное количество ядер ВМ, выполните команду:

Повторите первую команду и запустите виртуальную машину:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Проверим количество процессоров в настройках ВМ: овленное количество процессоров:

# virsh dumpxml test-centos

Аналогичным образом добавим память виртуальной машине:

Все по той же причине, сразу же вышла ошибка:

Увеличим максимальное значение памяти::

Теперь можно увеличить память ВМ.

Перед всеми изменениями не забывайте останавливать ВМ, а после запускать ее.

Также вы можете изменить ресурсы ВМ KVM через ее конфигурационный XML файл. Можно изменить файл в режиме онлайн или же сделав бэкап XML файла ВМ, изменить его и применить к виртуальной машине.

Отредактируем XML файл ВМ в онлайн режиме:

В открывшемся редакторе vi внесите изменения, нажав кнопку “Insert”.

Например, зададим для ВМ 2 ядра и 1Гб памяти:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Сохраните изменения в файле и перезапустите ВМ:

Проверьте настройки ВМ:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Тоже самое можно сделать, сделав бэкап XML файла:

# virsh dumpxml > /root/test.xml
# vi /root/test.xml

Измените нужные вам параметры, сохраните файл и примените к виртуальной машине:

# virsh shutdown test-centos

# virsh define /root/test.xml

# virsh start test-centos

KVM: добавление диска в виртуальную машину

В одной из наших статей, мы описывали процесс расширения и уменьшения дисков виртуальных машин в KVM. Но мы не описывали вариант по добавлению дополнительного диска.

Сначала нужно создать дополнительный файл диска для виртуальной машины:

Вместо qcow2 вы можете указать нужный формат диска, так же нужно указать путь до файла. У меня хранилище для дисков /vz/disk/.

После этого, можно добавить устройство виртуального диска к самой ВМ:

Остановите и запустите ВМ, проверьте что получилось:

# virsh shutdown test-centos

# virsh start test-centos

# virsh dumpxml test-centos

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

KVM: добавление сетевой карты для виртуальной машины

Попрьуем добавить дополнительный сетевой интерфейс для ВМ. Сначала проверим, какие сетевые интерфейсы созданы на хосте:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

У меня на KVM сервере создана одна виртуальная машина, с одним сетевым интерфейсом. К br0 нам нужно прикрепить еще один виртуальный сетевой интерфейс. Выполните команды:

Проверьте, что у ВМ появился дополнительный сетевой интерфейс:

Остановить виртуальную машину virsh. Смотреть фото Остановить виртуальную машину virsh. Смотреть картинку Остановить виртуальную машину virsh. Картинка про Остановить виртуальную машину virsh. Фото Остановить виртуальную машину virsh

Также вы можете изменить сетевые настройки виртуальной машины напрямую через XML файл: # virsh edit test-centos

После первого сетевого интерфейса добавьте следующие строки:

Сохраните файл и запустите ВМ. Остальную конфигурацию, KVM добавит сам (mac address и тд).

В данной статье мы затронули основные моменты, которые могут вам понадобиться при управлении виртуальными машинами KVM из консоли Linux сервера. В следующей статье мы рассмотрим управление виртуальными машинами через графический менеджер virt-manager

Источник

Ubuntu Documentation

You can create, delete, run, stop, and manage your virtual machines from the command line, using a tool called virsh. Virsh is particularly useful for advanced Linux administrators, interested in script or automating some aspects of managing their virtual machines

Installing

Connecting

Connect to your hypervisor. This can be local, or even remote. In most cases, if you want to manage VMs running on the local hypervisor:

Listing VMs

Creating a Virtual Machine

Virtual Machines managed by virsh are created by describing the virtual machine in a libvirt XML file, and importing that XML file into virsh.

You can export the XML of an existing virtual machine:

And then edit /tmp/foo.xml, which should be rather straightforward. For more information about libvirt XML format, see:

    Once you have an XML file describing the new virtual machine you want to create, import it into virsh, and run it immediately:

    Alternatively, if you want to define it, but not run it, you could have used:

    Working with a Running Virtual Machine

    Once a virtual machine is running, you can manage it in many different ways, such as:

    You can also affect the memory, dynamically attach devices, interfaces, modify the networking configuration, etc. This guide in this wiki page is clearly not comprehensive. For a complete description of virsh commands, see:

    Console

    Sometimes, it’s useful to attach to the console of a running VM, to obtain debugging information, etc.

    Details

    To view the details about a particular virtual machine:

    These can be saved to a file, modified, and imported again using:

    Deleting a Virtual Machine

    To delete a virtual machine, first terminate it (if running), and then undefine it:

    More Information

    For more complete documentation on virsh, see:

      KVM/Virsh (последним исправлял пользователь ovidiub13 2014-04-03 22:33:31)

      The material on this wiki is available under a free license, see Copyright / License for details
      You can contribute to this wiki, see Wiki Guide for details

      Источник

      Добавить комментарий

      Ваш адрес email не будет опубликован. Обязательные поля помечены *