Меню

Kvm ошибка нет активных соединений для установки

Когда я попытался установить новую виртуальную машину в virt-manager, виртуализация — localhost (QEMU) не подключена.

Появляется Ошибка: Активное подключение к установленному не установлено. Как исправить эту проблему.

задан
5 July 2017 в 12:38

поделиться

2 ответа

1) Убедитесь, что у вас есть все необходимые вам пакеты

$ sudo apt install -y qemu-kvm libvirt0 libvirt-bin virt-manager bridge-utils
$ sudo systemctl enable libvirt-bin

2) Убедитесь, что libvirtd и libvirt-bin запущены и запущены.

$ sudo service libvirtd status
$ sudo service libvirt-bin status

ответ дан Thomas
18 July 2018 в 10:42

поделиться

1) Убедитесь, что у вас есть все необходимые вам пакеты

$ sudo apt install -y qemu-kvm libvirt0 libvirt-bin virt-manager bridge-utils
$ sudo systemctl enable libvirt-bin

2) Убедитесь, что libvirtd и libvirt-bin запущены и запущены.

$ sudo service libvirtd status
$ sudo service libvirt-bin status

ответ дан Thomas
24 July 2018 в 19:37

поделиться

Другие вопросы по тегам:

Похожие вопросы:

When I tried to install new virtual machine in virt-manager, virtualization — localhost (QEMU) is not connected.

It shows Error: No active connection to installed on.
How to fix this problem.

muru's user avatar

muru

188k50 gold badges459 silver badges709 bronze badges

asked Jul 5, 2017 at 9:38

aditya's user avatar

1

Make sure your username is part of the libvirt group.
Try running sudo adduser <username> libvirt. This fixed the problem for me.

answered Feb 6, 2020 at 18:25

ayeiser's user avatar

ayeiserayeiser

511 silver badge3 bronze badges

  1. Verify you have all packages you need

    $ sudo apt install -y qemu-kvm libvirt0 libvirt-bin virt-manager bridge-utils
    $ sudo systemctl enable libvirt-bin

  2. Verify that libvirtd and libvirt-bin are up and running.

    $ sudo service libvirtd status
    $ sudo service libvirt-bin status

  3. $ sudo systemctl reboot

ralphf123's user avatar

answered Mar 1, 2018 at 18:10

Zeh's user avatar

You are likely going to need to make sure your user owns the libvirt socket, change out the username:username with your actual username

sudo chown username:username /var/run/libvirt/libvirt-sock

answered Feb 28, 2022 at 14:04

dsha256's user avatar

dsha256dsha256

1,1882 gold badges4 silver badges10 bronze badges

Try restarting the libvirtd service:

sudo service libvirtd stop
sudo service libvirtd start

answered Sep 29, 2022 at 5:05

kurdtpage's user avatar

kurdtpagekurdtpage

1551 silver badge8 bronze badges

TLDR;
On Ubuntu 20.04.1, I am trying to run VM’s using KVM. After installing the required packages, I still get below error:

sudo systemctl status libvirtd
Unit libvirtd.service could not be found.  

The below is what I have done —
a) check kvm support

$ sudo kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

b) install required packages

$ sudo apt install -y qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager

Now, the above should be everything and I must be able to open the virt-manager gui and get going and the libvertd service should have been started already. But, there is no libvirtd service running on my machine still and there is no libvirtd.service unit installed.

And obviously, The virt-manager is not able to connect to the demon so the below errors —
After doing $ sudo virt-manager —> the virt-manager GUI starts with root permissions.
enter image description here
Clearly the window says —

The libvirtd service does not appear to be installed. Install and run
the libvirtd service to manage virtualization on this host.

And obviously, no VM creation is feasible and below is the error on attempting for same.
enter image description here

Reference — How to Install KVM on Ubuntu 20.04
Note: This issue is not duplicate with — KVM Virt-Manager Error: No active connection to Install on
(one answer here ask to install — libvirt-bin , but this packages does not exist in the repo.

$ apt list  libvirt-bin    
Listing... Done

Hardware: This attempt is on Quad-Core, Intel CPU Laptop.

Edit — Following the comment from ajgringo619, i could solve the libvirtd.service issue. But other issues still persist.
Below is also posted as seperate Q @ Warning: KVM kernal modules are not loaded. Your VM may perform poorly?
enter image description here
This is the lsmod output —

$ sudo lsmod | grep kvm
kvm_intel             282624  0
kvm                   663552  1 kvm_intel

Should I ignore the warning, is the performance really gonna be poor??

TLDR;
On Ubuntu 20.04.1, I am trying to run VM’s using KVM. After installing the required packages, I still get below error:

sudo systemctl status libvirtd
Unit libvirtd.service could not be found.  

The below is what I have done —
a) check kvm support

$ sudo kvm-ok
INFO: /dev/kvm exists
KVM acceleration can be used

b) install required packages

$ sudo apt install -y qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager

Now, the above should be everything and I must be able to open the virt-manager gui and get going and the libvertd service should have been started already. But, there is no libvirtd service running on my machine still and there is no libvirtd.service unit installed.

And obviously, The virt-manager is not able to connect to the demon so the below errors —
After doing $ sudo virt-manager —> the virt-manager GUI starts with root permissions.
enter image description here
Clearly the window says —

The libvirtd service does not appear to be installed. Install and run
the libvirtd service to manage virtualization on this host.

And obviously, no VM creation is feasible and below is the error on attempting for same.
enter image description here

Reference — How to Install KVM on Ubuntu 20.04
Note: This issue is not duplicate with — KVM Virt-Manager Error: No active connection to Install on
(one answer here ask to install — libvirt-bin , but this packages does not exist in the repo.

$ apt list  libvirt-bin    
Listing... Done

Hardware: This attempt is on Quad-Core, Intel CPU Laptop.

Edit — Following the comment from ajgringo619, i could solve the libvirtd.service issue. But other issues still persist.
Below is also posted as seperate Q @ Warning: KVM kernal modules are not loaded. Your VM may perform poorly?
enter image description here
This is the lsmod output —

$ sudo lsmod | grep kvm
kvm_intel             282624  0
kvm                   663552  1 kvm_intel

Should I ignore the warning, is the performance really gonna be poor??

  • Печать

Страницы: [1]   Вниз

Тема: [РЕШЕНО]После установки KVM не удаётся подключиться к libvirt  (Прочитано 3867 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн
Mascarpone

Здравствуйте! Установил KVM следующей командой: sudo apt install kvm virt-manager

Запускаю, а он мне пишет :

Не удалось подключиться к libvirt.

Verify that:
 - The 'libvirt-bin' package is installed
 - The 'libvirtd' daemon has been started
 - You are member of the 'libvirtd' group


Вроде всё установлено и пользователь в группе есть. Подскажите как проблему решить.

« Последнее редактирование: 17 Августа 2016, 10:18:45 от Punko »


Punko

Mascarpone, и демон запущен?


Оффлайн
Mascarpone

Я разобрался. Установил сначала так:

— sudo apt-get update
— sudo apt install kvm virt-manager

Потом удалил всё, перезагрузил и установил так:

— sudo apt-get install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
— sudo apt-get install virt-manager

Всё встало замечательно.


Punko

Mascarpone, отлично.
Так и запишем — Решено. :)


  • Печать

Страницы: [1]   Вверх

In this tutorial, you will learn how to fix QEMU/KVM Not connected error on Ubuntu 20.04. Maybe you have installed KVM hypervisor on Ubuntu 20.04 for you to run virtual machines on it as a regular, non-root, user. However for some reasons, when your try to run virsh command to even the virt-manager, display the virtual machine desktop management tool, you end up with such errors as Qemu/KVM no connected. Let us see how to fix such error.

Disclaimer: The tutorial outlines how i fix the issue myself. This is not an official fix for the issue. Use it ayor.

How to fix QEMU/KVM Not Connected Error on Ubuntu 20.04

A sample of the errors you encounter when running KVM as a non-root user on Ubuntu 20.04 might include the ones sampled below;

kvm qemu connection error

virsh -c qemu:///system
error: failed to connect to the hypervisor
error: End of file while reading data: Input/output error
virsh list --all
error: failed to connect to the hypervisor
error: End of file while reading data: Input/output error

So you have done all that is required to run KVM as a non root user, by adding your standard user name to libvirt group, but still you cannot run KVM as a standard user.

id -nG
koromicha kvm netdev nm-openvpn libvirt

All the required modules are loaded;

lsmod | grep kvm
kvm_intel             282624  0
kvm                   663552  1 kvm_intel

You have scoured through internet, but no suggested solution has so far fixed the issue with QEMU/KVM not connected? Perhaps there is something you are not looking for?

What About AppArmor?

According to Ubuntu AppArmor wiki page;

AppArmor is a Mandatory Access Control (MAC) system which is a kernel (LSM) enhancement to confine programs to a limited set of resources. Its security model is to bind access control attributes to programs rather than to users.

Its confinement is provided via profiles loaded into the kernel, typically on boot. AppArmor profiles can be in one of two modes:

  • enforcement – Profiles loaded in enforcement mode will result in enforcement of the policy defined in the profile as well as reporting policy violation attempts (either via syslog or auditd).
  • complain– Profiles in complain mode will not enforce policy but instead report policy violation attempts.

Well, so after checking the syslog logs;

sudo grep libvirt /var/log/syslog | grep -i apparmor | grep -i denied
Jun 28 14:53:27 koromicha kernel: [  334.660844] audit: type=1400 audit(1593345207.778:951): apparmor="DENIED" operation="bind" profile="libvirtd" pid=12254 comm="libvirtd" family="unix" sock_type="dgram" protocol=0 requested_mask="bind" denied_mask="bind" addr="@userdb-6228daaaf66b14dfd14d93ef46d962c3"
Jun 28 14:54:19 koromicha kernel: [  386.034970] audit: type=1400 audit(1593345259.145:952): apparmor="DENIED" operation="bind" profile="libvirtd" pid=14311 comm="libvirtd" family="unix" sock_type="dgram" protocol=0 requested_mask="bind" denied_mask="bind" addr="@userdb-c861507740da1fa0c3356ad3b78bffe9"
Jun 28 15:02:30 koromicha kernel: [  877.339057] audit: type=1400 audit(1593345750.437:968): apparmor="DENIED" operation="bind" profile="libvirtd" pid=16175 comm="libvirtd" family="unix" sock_type="dgram" protocol=0 requested_mask="bind" denied_mask="bind" addr="@userdb-7d70643a9f8da0342f6359907817b664"
...

From the kernel ring buffer messages;

dmesg| grep -i libvirt
[   12.737770] systemd[1]: Reached target Libvirt guests shutdown.
[   36.451935] audit: type=1400 audit(1593344909.127:909): apparmor="DENIED" operation="bind" profile="libvirtd" pid=1329 comm="libvirtd" family="unix" sock_type="dgram" protocol=0 requested_mask="bind" denied_mask="bind" addr="@userdb-17950adb1cf7fdce327fb745a8f96166"
[   82.906690] audit: type=1400 audit(1593344956.066:911): apparmor="DENIED" operation="bind" profile="libvirtd" pid=3295 comm="libvirtd" family="unix" sock_type="dgram" protocol=0 requested_mask="bind" denied_mask="bind" addr="@userdb-5f105e043aa71b33f878838eb17ed07a"
...

This indicates that AppArmor for some reasons is restraining libvirtd from use use by the regular/non-root users, irrespective of adding them to the group.

Checking the AppArmor status;

sudo aa-status
...
6 processes have profiles defined.
1 processes are in enforce mode.
   /usr/sbin/libvirtd (110108) libvirtd
...

Is libvirtd using the AppArmor security driver?

sudo virsh capabilities | less
..
    <secmodel>
      <model>apparmor</model>
      <doi>0</doi>
    </secmodel>
..

You can cross examine the AppArmor libvirtd profile;

cat /etc/apparmor.d/usr.sbin.libvirtd

And other files under, /etc/apparmor.d/libvirt/ and /etc/apparmor.d/abstractions/.

The Solution to the Problem

Well, I didn’t have much time to find a better solution than disabling the AppArmor enforcement for libvirtd;

sudo ln -s /etc/apparmor.d/usr.sbin.libvirtd /etc/apparmor.d/disable/

Reboot the machine to effect the libvirt disablement changes;

systemctl reboot -i

Once the system reboots, you should now be able to run KVM as a non root user;

qemu kvm connect

virsh list --all
 Id   Name   State
--------------------

And this is it on how to fix QEMU/KVM Not connected error on Ubuntu 20.04.

Further Reading

AppArmor: Libvirtd Wiki

AppArmor Ubuntu Wiki

Related Tutorials

How to Rename KVM Virtual Machine with virsh command

Install pfSense Firewall on KVM

Use VirtualBox VMs on KVM

Содержание

  1. Virt-Manager не может подключиться к графической консоли
  2. 4 ответа
  3. Thread: KVM — Error connecting to graphical console (SpiceClientGtk)
  4. KVM — Error connecting to graphical console (SpiceClientGtk)
  5. Re: KVM — Error connecting to graphical console (SpiceClientGtk)
  6. Qemu ошибка подключения к графической консоли
  7. Ещё один блог сисадмина
  8. воскресенье, 1 сентября 2019 г.
  9. Virt-manager для управления виртуальными машинами под управлением KVM и Xen
  10. Настройка демона libvirt для управления виртуальными машинами под управлением KVM (на примере Debian Stretch)
  11. Настройка демона libvirt для управления виртуальными машинами под управлением Xen (на примере Debian Wheezy)
  12. Установка и использование Virt-manager
  13. Типичные проблемы
  14. Не установлен пакет netcat-openbsd
  15. Не установлен пакет libvirt-bin или libvirt-daemon-system
  16. Не настроен HTTP-сервер xend
  17. Не установлен пакет gir1.2-spice-client-gtk-3.0
  18. Установка KVM в Ubuntu
  19. Установка KVM в Ubuntu 20.04
  20. Использование KVM в Ubuntu
  21. Создание виртуальных машин KVM
  22. Создание виртуальных машин в GUI
  23. Выводы
  24. Похожие записи
  25. Оцените статью
  26. Об авторе
  27. 21 комментарий к “Установка KVM в Ubuntu”

Virt-Manager не может подключиться к графической консоли

Со вчерашнего дня я не могу просматривать запущенные виртуальные машины (QEMU/KVM) с моей virt-manager GUI больше нет. Когда я пытаюсь просмотреть экран виртуальной машины во встроенном средстве просмотра, вместо этого появляется следующее сообщение об ошибке:

Ошибка подключения к графической консоли:
внутренняя ошибка: невозможно выполнить команду QEMU ‘getfd’:
Не указан дескриптор файла через SCM_RIGHTS

Это относится ко всем моим виртуальным машинам.

Я все еще могу правильно просматривать и взаимодействовать с моими виртуальными машинами в virt-viewer хотя, только virt-manager встроенный зритель мертв.

Что здесь не так и как я могу это исправить?

Изменить: я только что узнал, что я использую virt-manager версия 1:1.4.0-1

getdeb1 из архива.getdeb.net репо.

4 ответа

Работая над попыткой слить последнюю версию virt-manager 1.4.0 с Ubuntu, я столкнулся с этой же проблемой. Похоже, это не ошибка в virt-manager, а просто изменение способа отправки отображаемых данных на виртуальные машины.

Я открыл ошибку, чтобы добавить необходимые разрешения для libvirt, где определяются профили apparmor — https://bugs.launchpad.net/ubuntu/+source/libvirt/+bug/1668681

Чтобы устранить эту проблему, не отключая функцию безопасности, добавьте:

в файл /etc/apparmor.d/abstractions/libvirt-qemu но не в разделе qemu-bridge-helper. (Так сразу после «owner @/0-9*/fd/ r,»)

Затем перезагрузите профили с sudo systemctl reload apparmor ,

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

Источник

Thread: KVM — Error connecting to graphical console (SpiceClientGtk)

Thread Tools
Display

KVM — Error connecting to graphical console (SpiceClientGtk)

I have a new install of Ubuntu Server 20.04.2 LTS setup and running KVM.

Everything *seems* to be fine with the server.

I have then installed ‘virt-manager’ on my Ubuntu 18.04 LTS Desktop machine, and successfully connected to the KVM Server.

I have tried to create a new VM (Debian Stretch) from the Virtual Machine Manager (virt-manager), but each time I am getting the same issue which is that I cannot see the VM Console.

The error I am getting is:

I have checked that ‘SpiceClientGtk’ is installed on the Ubuntu Server by entering:

so I believe that is correctly installed. For what it was worth, I also installed it on my Desktop, but that made no difference either.

I also tried connecting using ‘virt-viewer’.

I entered this on my desktop:

I don’t have keys setup (yet) so I am expecting to get asked for the password, which I am (a number of times, but apparently that is expected). The ‘virt-viewer’ application opens, and sits with the message:

The VM is definitely running (at least according to the host):

Any suggestions on what to try or do next?

Last edited by Alan5127; March 9th, 2021 at 11:56 AM . Reason: Tidy up formatting

Re: KVM — Error connecting to graphical console (SpiceClientGtk)

On the client system:

Verify the keys are working:

On the client machine, you must have virt-manager and spice-client-. (really long package name) installed and your userid should be in the libvirtd group on the KVM server.
There are other settings inside the VM that are needed, but I think the defaults are for SPICE to be used since 18.04. You can change that to VNC or VMVGA, if you like in the VM settings. On a non-desktop, SPICE isn’t exactly useful. Heck, on a non-desktop, just use ssh directly. That is much more efficient.
Until today, I never tried to connect to a server using spice. It never made any sense to try.

Источник

Qemu ошибка подключения к графической консоли

15 фев 2018, 19:17

Выбрал виртуальную машину KVM по причине того — что она встраивается при инсталляции в ядро, что даёт наилучшее быстродействие. Если мой выбор по вашему мнению не лучший — прошу объяснить.

Инсталлировал, запустил графичесий менеджер, а он мне показывает:
«KVM недоступен. Возможно, KVM не был установлен или его модуль ядра не загружен. Функциональность виртуальной машины может быть ограничена.»

В сети нашёл вот это:

systemctl status qemu-kvm

Alyans babochka # systemctl status qemu-kvm
● qemu-kvm.service — LSB: QEMU KVM module loading script
Loaded: loaded (/etc/init.d/qemu-kvm; bad; vendor preset: enabled)
Active: active (exited) since Чт 2018-02-15 18:45:18 MSK; 22min ago
Docs: man:systemd-sysv-generator(8)
Process: 404 ExecStart=/etc/init.d/qemu-kvm start (code=exited, status=0/SUCCE

фев 15 18:45:14 Alyans systemd[1]: Starting LSB: QEMU KVM module loading script.
фев 15 18:45:17 Alyans qemu-kvm[404]: * Configuring kvm qemu-kvm
фев 15 18:45:18 Alyans qemu-kvm[404]: modprobe: ERROR: could not insert ‘kvm_int
фев 15 18:45:18 Alyans qemu-kvm[404]: . done.
фев 15 18:45:18 Alyans systemd[1]: Started LSB: QEMU KVM module loading script.
lines 1-11/11 (END). skipping.
● qemu-kvm.service — LSB: QEMU KVM module loading script
Loaded: loaded (/etc/init.d/qemu-kvm; bad; vendor preset: enabled)
Active: active (exited) since Чт 2018-02-15 18:45:18 MSK; 22min ago
Docs: man:systemd-sysv-generator(8)
Process: 404 ExecStart=/etc/init.d/qemu-kvm start (code=exited, status=0/SUCCESS)

фев 15 18:45:14 Alyans systemd[1]: Starting LSB: QEMU KVM module loading script.
фев 15 18:45:17 Alyans qemu-kvm[404]: * Configuring kvm qemu-kvm
фев 15 18:45:18 Alyans qemu-kvm[404]: modprobe: ERROR: could not insert ‘kvm_intel’: Operation not supported
фев 15 18:45:18 Alyans qemu-kvm[404]: . done.
фев 15 18:45:18 Alyans systemd[1]: Started LSB: QEMU KVM module loading script.

Источник

Ещё один блог сисадмина

воскресенье, 1 сентября 2019 г.

Virt-manager для управления виртуальными машинами под управлением KVM и Xen

Настройка демона libvirt для управления виртуальными машинами под управлением KVM (на примере Debian Stretch)

Проверим наличие аппаратной поддержки виртуализации:
Устанавливаем систему виртуализации qemu с поддержкой KVM и демон libvirt для управления виртуальными машинами, работающими под управлением KVM:
Добавляем пользователя, от имени которого будем заходить на сервер по SSH, в группу libvirt, чтобы он имел доступ к управлению виртуальными машинами:
Пользователь получит доступ к Unix-сокету /var/run/libvirt/libvirt-sock

Установим netcat из OpenBSD, поддерживающий опцию -U для подключения к Unix-сокету. Это нужно для перенаправления подключения от SSH-клиента в Unix-сокет libvirt:
Осталось включить и запустить демона:

Настройка демона libvirt для управления виртуальными машинами под управлением Xen (на примере Debian Wheezy)

В моём случае Xen был развёрнут в операционной системе Debian Wheezy, где пакет с демоном libvirt называется libvirt-bin. Установим его:
Теперь, чтобы пользователь, от имени которого мы будем подключаться по SSH к серверу виртуализации, смог подключиться к демону libvirtd, нужно добавить его в группу libvirt:
Пользователь получит доступ к Unix-сокету /var/run/libvirt/libvirt-sock

Для того, чтобы демон libvirt смог работать с системой виртуализации Xen, нужно включить HTTP-сервер, встроенный в xend. Демон libvirt будет выполнять роль посредника, транслируя входящие запросы в запросы к xend.

Настроим HTTP-сервер, ожидающий подключений на порту 8000 и адресе 127.0.0.1. Для этого нужно прописать в файл /etc/xen/xend-config.sxp следующие опции:
Чтобы настройки xend вступили в силу, нужно перезапустить его (пример для Debian Wheezy):
Будьте осторожны — в конфигурации по умолчанию при перезапуске демона xend перезапускаются также и все виртуальные машины. Чтобы избежать этого, нужно при создании виртуальной машины прописать в её конфигурацию такие настройки:
У меня эти настройки были прописаны в каждой виртуальной машине, поэтому я перезапускал xend без опасений.

Установка и использование Virt-manager

Устанавливаем на компьютере администратора пакет с GUI-интерфейсом для управления виртуальными машинами:
Теперь можно попробовать сделать то, ради чего всё и затевалось: подключиться к системе виртуализации из программы virt-manager. Ниже приведены снимки экрана, иллюстрирующие этот процесс.

Запуск virt-manager:

Добавление нового подключения:

Новое подключение к системе виртуализации Xen:

Настройки удалённого подключения к системе виртуализации Xen через SSH:

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

Теперь можно подключаться к консоли виртуальной машины и менять её настройки.

Типичные проблемы

Не установлен пакет netcat-openbsd

Не удалось подключиться к libvirt.

Для взаимодействия с удалённым узлом необходимо, чтобы версия netcat/nc поддерживала параметр -U.

Не установлен пакет libvirt-bin или libvirt-daemon-system

Не удалось подключиться к libvirt.

End of file while reading data: nc: unix connect failed: No such file or directory: Ошибка ввода/вывода

Убедитесь, что на удалённом узле запущен libvirtd.

Не настроен HTTP-сервер xend

Не удалось подключиться к libvirt.

unable to connect to ‘localhost:8000’: В соединении отказано

Убедитесь, что на удалённом узле запущен libvirtd.

Не установлен пакет gir1.2-spice-client-gtk-3.0

Ошибка подключения к графической консоли:
Error opening Spice console, SpiceClientGtk missing

Источник

Установка KVM в Ubuntu

KVM или Kernel Virtual Module — это модуль виртуализации для ядра Linux, который позволяет превратить ваш компьютер в гипервизор для управления виртуальными машинами. Этот модуль работает на уровне ядра и поддерживает такие технологии аппаратного ускорения, как Intel VT и AMD SVM.

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

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

Установка KVM в Ubuntu 20.04

Перед тем как переходить к самой установке KVM нужно проверить поддерживает ли ваш процессор аппаратное ускорение виртуализации от Intel-VT или AMD-V. Для этого выполните такую команду:

egrep -c ‘(vmx|svm)’ /proc/cpuinfo

Если в результате будет возвращено 0 — значит ваш процессор не поддерживает аппаратной виртуализации, если 1 или больше — то вы можете использовать KVM на своей машине.

Теперь мы можем перейти к установке KVM, набор программ можно получить прямо из официальных репозиториев:

sudo apt install qemu qemu-kvm libvirt-daemon libvirt-clients bridge-utils virt-manager

Мы установили не только утилиту kvm, но и библиотеку libvirt, а также менеджер виртуальных машин. После того, как установка будет завершена вам необходимо добавить своего пользователя в группу libvirt, потому что только root и пользователи этой группы могут использовать виртуальные машины KVM:

sudo gpasswd -a $USER libvirt

Затем убедитесь, что сервис libvirt запущен и работает:

sudo systemctl status libvirtd

После выполнения этой команды выйдите из системы и войдите снова. Далее, давайте проверим все ли правильно было установлено. Для этого используйте команду kvm-ok:

Если все было сделано правильно, то вы увидите такое же сообщение.

Использование KVM в Ubuntu

Вы справились с задачей установить KVM в Ubuntu, но вы еще не можете использовать эту среду виртуализации но ее нужно еще настроить. Далее, мы рассмотрим как выполняется настройка KVM в Ubuntu. Что удобно, в новых версиях сеть уже настроена и вам не нужно создавать новый сетевой мост. Вы можете убедится в этом выполнив команду:

Интерфейсы virbr0 и virbr-nic созданы KVM по умолчанию и они полностью реализуют все необходимые возможности сети. Ещё вы можете посмотреть доступные мосты с помощью команды:

sudo brctl show

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

Настройка KVM Ubuntu завершена и теперь мы можем перейти к ее использованию. Сначала давайте просмотрим список уже существующих виртуальных машин:

virsh -c qemu:///system list

Он пуст. Создать виртуальную машину можно через терминал или в графическом интерфейсе. Для создания через терминал используйте команду virt-install. Сначала перейдем в папку libvirt:

Для установки CentOS команда будет выглядеть вот так:

sudo virt-install
—virt-type=kvm
—name centos8
—ram 2048
—vcpus=2
—os-variant=rhl8.0
—hvm
—cdrom=/var/lib/libvirt/boot/CentOS-8.iso
—network=bridge:virbr0,model=virtio
—graphics vnc
—disk path=/var/lib/libvirt/images/centos7.qcow2,size=40,bus=virtio,format=qcow2

Разберем подробнее что означают параметры этой команды:

  • virt-type — тип виртуализации, в нашем случае kvm;
  • name — имя новой машины;
  • ram — количество памяти в мегабайтах;
  • vcpus — количество ядер процессора;
  • os-variant — тип операционной системы;
  • cdrom — установочный образ системы;
  • network-bridge — сетевой мост, который мы настроили ранее;
  • graphics — способ получения доступа к графическому интерфейсу;
  • diskpath — адрес нового жесткого диска для этой виртуальной машины;

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

sudo virsh vncdisplay centos8

Теперь вы можете ввести полученные данные в вашем клиенте VNC и подключится к виртуальной машине даже удаленно. Для Debian команда будет немного отличаться, но все выглядит похожим образом:

Переходим в папку для образов:

Можно скачать установочный образ из интернета если это необходимо:

sudo wget https://mirrors.kernel.org/debian-cd/current/amd64/iso-dvd/debian-8.5.0-amd64-DVD-1.iso

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

sudo virt-install
—virt-type=kvm
—name=debina8
—ram=2048
—vcpus=2
—os-variant=debian8
—hvm
—cdrom=/var/lib/libvirt/boot/debian-8.5.0-amd64-DVD-1.iso
—network=bridge=bridge0,model=virtio
—graphics vnc
—disk path=/var/lib/libvirt/images/debian8.qcow2,size=40,bus=virtio,format=qcow2

Теперь снова посмотрим список доступных машин:

virsh -c qemu:///system list

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

sudo virsh start имя_машины

sudo virsh shutdown имя_машины

Для перевода в режим сна:

sudo virsh suspend имя_машины

sudo virsh reboot имя_машины

sudo virsh reset имя_машины

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

sudo virsh destroy имя_машины

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

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

Для создания новой машины кликните по иконке со значком монитора. Дальше вам будет необходимо выбрать образ ISO вашей системы. Также можно использовать реальный CD/DVD привод:

Если вы выбрали ISO образ, то надо его открыть из файловой системы:

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

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

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

Затем автоматически запустится установка:

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

Выводы

В этой статье мы рассмотрели как выполняется установка KVM Ubuntu 20.04, разобрали как полностью подготовить эту среду к работе, а также как создать виртуальные машины и использовать их. Если у вас остались вопросы, спрашивайте в комментариях!

На завершение лекция от яндекса о том что такое виртуализация в Linux:

Похожие записи

Нет похожих записей.

Оцените статью

Об авторе

Основатель и администратор сайта losst.ru, увлекаюсь открытым программным обеспечением и операционной системой Linux. В качестве основной ОС сейчас использую Ubuntu. Кроме Linux, интересуюсь всем, что связано с информационными технологиями и современной наукой.

21 комментарий к “Установка KVM в Ubuntu”

Спасибо за прекрасную статью! Меня интересует вот какой вопрос. Можно ли организовать средствами KVM проброс PCI-E в виртуальную машину, и если да, то как?

После запуска машины ошибка(((

Ошибка подключения к графической консоли:
внутренняя ошибка: не удалось выполнить команду QEMU «getfd»: No file descriptor supplied via SCM_RIGHTS

Кто знает какие существуют штатные (для которых есть deb пакеты хотя бы в ppa) бесплатные веб-интерфейсы для libvirt’а?

Добрый вечер. В этой строчке ошибка $ sudo addif bridge0 eth0 — нужно добавить $ sudo brctl addif bridge0 eth0

И ещё вопрос — не настраивает бридж с Вай-фай интерфейсом: выдаёт сообщение, что не поддерживается такая операция. Подскажи, пожалуйста, если знаешь, как исправить.

loopback
auto lo bridge0
iface lo inet loopback
iface bridge0 inet dhcp
bridge_ports eth0

Здесь может быть ошибка, т.к. у меня система не принимает эту редакцию /etc/network/interfaces, из-за чего пропадает ethernet-соединение:

ifquery: couldn’t read interfaces file «/etc/network/interfaces»
/etc/network/interfaces:4: option with empty value

Судя по всему речь идёт о строке «loopback», хотя если её закомментировать, то улучшений не происходит.

Такая же штука, вообще не пойму как правильно.
Делаю как в статье. дохожу до пункта sudo systemctl restart networking
journalctl -xe

— Начат процесс запуска юнита networking.service.
авг 12 14:35:51 8]: /etc/network/interfaces:4: option with empty value
авг 12 14:35:51 8]: ifquery: couldn’t read interfaces file «/etc/network/interfaces»
авг 12 14:35:51 10]: /etc/network/interfaces:4: option with empty value
авг 12 14:35:51 10]: /sbin/ifup: couldn’t read interfaces file «/etc/network/interfaces»
авг 12 14:35:51 systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
авг 12 14:35:51 systemd[1]: Failed to start Raise network interfaces.
— Subject: Ошибка юнита networking.service
— Defined-By: systemd
— Support: http://www.ubuntu.com/support

Включил так же как на скрине автора stp
D3HP:/home/ev# sudo brctl show
bridge name bridge id STP enabled interfaces
bridge0 8000.94de807b3bc5 yes eno1
virbr0 8000.52540049d75b yes virbr0-nic
D3HP:/home/ev#
И на этом все трафик ходить перестает, шлюз не пинается.
Смотрим на скриншот автора и видим, что бридж интерфейс не смотрит ни в какой интерфейс, как если бы выполнили команду:
brctl delif bridge0 eno1
D3HP:/home/ev# brctl show
bridge name bridge id STP enabled interfaces
bridge0 8000.000000000000 no
virbr0 8000.52540049d75b yes virbr0-nic
D3HP:/home/evgeniy#
И трафик сразу начинает ходить.
Автор, тут же не рабочий вариант на скрине? Что я делаю не правильно?

Благодарю! По данной статье настроил виртуалку. Только вот как сделать общую папку не понятно. Уже часов 12 бьюсь над этой задачей. Пока только получилось пробросить флэшку. Если объясните как настроить общую папку в kvm буду благодарен в двойне.

МИГРАЦИЯ. в этих ваших интернетах валом типовых статей как поставить KVM и поднять там виртуалку.
Однако нет ни одной путней статьи о том как устроена миграция, какие виды бывают. Как это работает. А главное какого это не работает.

Источник

0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии

А вот еще интересные материалы:

  • Яшка сломя голову остановился исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного исправьте ошибки
  • Ясность цели позволяет целеустремленно добиваться намеченного где ошибка
  • Kuppersbusch стиральная машина ошибка f10
  • Kuppersbusch посудомоечная машина ошибка е15