libvirt Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
wiki:руководство_по_ubuntu_server:виртуализация:libvirt [2012/09/21 19:24]
[virt-clone]
wiki:руководство_по_ubuntu_server:виртуализация:libvirt [2012/09/23 13:34] (текущий)
[Установка]
Строка 8: Строка 8:
 =====libvirt===== =====libvirt=====
  
-Библиотека **libvirt** используется в качестве интерфейса к различным технологиям виртуализации. Прежде чем начать использовать libvirt стоит убедиться,​ что ваше оборудование поддерживает необходимые расширения виртуализации для **KVM**. Наберите следующее в терминале:​+Библиотека **libvirt** используется в качестве интерфейса к различным технологиям виртуализации. Прежде чем начать использовать ​**libvirt**, стоит убедиться,​ что ваше оборудование поддерживает необходимые расширения виртуализации для **KVM**. Наберите следующее в терминале:​
 <​code>​kvm-ok</​code>​ <​code>​kvm-ok</​code>​
 Вам будет выведено сообщение о том поддерживает ли ваш центральный процессор (CPU) аппаратную виртуализацию или нет. Вам будет выведено сообщение о том поддерживает ли ваш центральный процессор (CPU) аппаратную виртуализацию или нет.
Строка 16: Строка 16:
 ====Виртуальные сети==== ====Виртуальные сети====
  
-Существует несколько способов позволить виртуальной машине получить доступ во внешнюю сеть. По умолчанию виртуальная сеть настраивается как **usermode**,​ когда используется протокол **SLIRP**, а сетевые данные маскируются с помощью NAT на сетевом интерфейсе компьютера при соединении с внешней сетью.+Существует несколько способов позволить виртуальной машине получить доступ во внешнюю сеть. По умолчанию виртуальная сеть настраивается как **usermode**,​ когда используется протокол **SLIRP**, а сетевые данные маскируются с помощью ​**NAT** на сетевом интерфейсе компьютера при соединении с внешней сетью.
  
 Чтобы разрешить внешним компьютерам соединяться с сервисами виртуальной машины напрямую,​ требуется настроить мост (**bridge**). Это делает возможным соединения виртуальных интерфейсов с внешней сетью через физический интерфейс,​ позволяя им считать себя обычными компьютерами в нормальной сети. Для информации по настройке сетевых мостов смотрите секцию [[wiki:​руководство_по_ubuntu_server:​сеть:​сетевые_настройки#​строительство_мостов|Строительство мостов]]. Чтобы разрешить внешним компьютерам соединяться с сервисами виртуальной машины напрямую,​ требуется настроить мост (**bridge**). Это делает возможным соединения виртуальных интерфейсов с внешней сетью через физический интерфейс,​ позволяя им считать себя обычными компьютерами в нормальной сети. Для информации по настройке сетевых мостов смотрите секцию [[wiki:​руководство_по_ubuntu_server:​сеть:​сетевые_настройки#​строительство_мостов|Строительство мостов]].
Строка 25: Строка 25:
 <​code>​sudo apt-get install kvm libvirt-bin</​code>​ <​code>​sudo apt-get install kvm libvirt-bin</​code>​
  
-После установки **libvirt-bin** пользователя,​ используемого для управления виртуальными машинами,​ необходимо добавить в группу **libvirtd**. Это позволит пользователю получить доступ к расширенным сетевым опциям.+После установки **libvirt-bin**пользователя,​ используемого для управления виртуальными машинами,​ необходимо добавить в группу **libvirtd**. Это позволит пользователю получить доступ к расширенным сетевым опциям.
  
 Введите в терминале:​ Введите в терминале:​
Строка 66: Строка 66:
 ====virt-clone==== ====virt-clone====
  
-The virt-clone ​application can be used to copy one virtual machine to anotherFor example: +Приложение **virt-clone** может быть использовано для копирования одной виртуальной машины в другуюНапример:
 <​code>​ <​code>​
 sudo virt-clone -o web_devel -n database_devel -f /​path/​to/​database_devel.img \ sudo virt-clone -o web_devel -n database_devel -f /​path/​to/​database_devel.img \
Строка 73: Строка 72:
 </​code>​ </​code>​
  
-    ​-o: original virtual machine.+  -- **-o**: оригинальная виртуальная машина. 
 +  -- **-n**: имя новой виртуальной машины. 
 +  -- **-f**: путь к файлу, локальному тому или разделу для использования новой виртуальной машиной. 
 +  -- **--connect**определяет к какому супервизору подключаться.
  
-    -n: name of the new virtual machine. +Также используйте опцию **-d** или **--debug** для помощи при решении проблем с **virt-clone**
- +<​note>​Замените **//web_devel//** и **//database_devel//** на подходящие названия виртуальных машин.</​note>​
-    -f: path to the file, logical volume, or partition to be used by the new virtual machine. +
- +
-    --connect: specifies which hypervisor to connect to. +
- +
-Also, use -d or --debug ​option to help troubleshoot problems with virt-clone. +
- +
-Replace ​web_devel ​and database_devel ​with appropriate virtual machine names.+
  
 ====Управление виртуальными машинами==== ====Управление виртуальными машинами====
Строка 89: Строка 84:
 ===virsh=== ===virsh===
  
-There are several utilities available to manage virtual machines and libvirt. ​The virsh utility can be used from the command lineSome examples:+Доступны несколько утилит для управления виртуальными машинами и **libvirt**Утилита **virsh** может быть использована из командной строкиНесколько примеров:
  
-    To list running virtual machines:+ 1. Получить список запущенных виртуальных машин: 
 +<​code>​virsh -c qemu:///​system list</​code>​
  
-    ​virsh -c qemu:///​system ​list+ 2. Запустить виртуальную машину:​ 
 +<​code>​virsh -c qemu:///​system ​start web_devel</​code>​
  
-    To start a virtual machine:+ 3. Аналогично,​ запустить виртуальную машину в процессе загрузки: 
 +<​code>​virsh -c qemu:///​system autostart web_devel</​code>​
  
-    ​virsh -c qemu:///​system ​start web_devel+ 4. Перегрузить виртуальную машину:​ 
 +<​code>​virsh -c qemu:///​system ​reboot ​web_devel</​code>​
  
-    Similarlyto start a virtual machine at boot:+ 5. Состояние (**state**) виртуальной машины может быть сохранено в файл с целью возможного восстановления в дальнейшем. Приведенная команда сохранит состояние виртуальной машины в файл с именемсодержащем дату: 
 +<​code>​virsh -c qemu:///​system save web_devel web_devel-022708.state</​code>​ 
 +Единожды сохраненная машина больше не может быть запущена. ( :?: возможно имеется ввиду, что не может быть запущена сохраненная копия, а не сама машина.)
  
-    ​virsh -c qemu:///​system ​autostart ​web_devel+ 6. Сохраненная виртуальная машина может быть восстановлена такой командой:​ 
 +<​code>​virsh -c qemu:///​system ​restore ​web_devel-022708.state</​code>​
  
-    Reboot a virtual machine with:+ 7. Выключить виртуальную машину: 
 +<​code>​virsh -c qemu:///​system shutdown web_devel</​code>​
  
-    ​virsh -c qemu:///​system ​reboot ​web_devel+ 8. Устройство чтения CDROM может быть подмонтировано к виртуальной машине следующей командой:​ 
 +<​code>​virsh -c qemu:///​system ​attach-disk ​web_devel ​/dev/cdrom /​media/​cdrom</​code>​
  
-    The state of virtual machines can be saved to a file in order to be restored later. The following will save the virtual machine state into a file named according to the date: +<​note>​В приведенных примерах замените **//​web_devel/​/** на соответствующее название виртуальной машины,​ а **//​web_devel-022708.state//​** на описательное имя файла.<​/note>
- +
-    virsh -c qemu:///system save web_devel ​web_devel-022708.state +
- +
-    Once saved the virtual machine will no longer be running. +
- +
-    A saved virtual machine can be restored using: +
- +
-    virsh -c qemu:///system restore ​web_devel-022708.state +
- +
-    To shutdown a virtual machine do: +
- +
-    virsh -c qemu:///system shutdown web_devel +
- +
-    A CDROM device can be mounted in a virtual machine by entering: +
- +
-    virsh -c qemu:///​system attach-disk web_devel /dev/cdrom /​media/​cdrom +
- +
-In the above examples replace web_devel with the appropriate virtual machine name, and web_devel-022708.state with a descriptive file name.+
  
 ===Управление виртуальными машинами=== ===Управление виртуальными машинами===
  
-The virt-manager ​package contains a graphical utility to manage local and remote virtual machinesTo install virt-manager ​enter:+Пакет **virt-manager** содержит утилиту с графическим интерфейсом для управления локальными и удаленными виртуальными машинамиДля установки **virt-manager** введите:​ 
 +<​code>​sudo apt-get ​install virt-manager</​code>​ 
 +Поскольку **virt-manager** требует наличия графической среды, рекомендуется ее устанавливать на рабочую станцию или тестовую машину,​ а не на рабочий сервер. Для подключения к локальному сервису **libvirt** введите: 
 +<​code>​virt-manager -c qemu:///​system</​code>​ 
 +Вы можете соединиться и к сервису **libvirt**,​ запущенном на другом компьютере,​ введя следующую команду в терминале:​ 
 +<​code>​virt-manager -c qemu+ssh://​virtnode1.mydomain.com/​system</​code>​
  
-sudo apt-get install virt-manager +<​note>​В последнем примере подразумевается,​ что SSH соединение между управляющей системой и **//​virtnode1.mydomain.com/​/** уже настроено и для аутентификации используются ключи ​SSH. SSH ключи требуются поскольку **libvirt** посылает запрос на ввод пароля другому процессуПодробности настройки ​SSH смотрите в разделе [[wiki:​руководство_по_ubuntu_server:​удаленное_администрирование:​openssh_server|Сервер ​OpenSSH]].</​note>​
- +
-Since virt-manager requires a Graphical User Interface (GUI) environment it is recommended to be installed on a workstation or test machine instead of a production server. To connect to the local libvirt service enter: +
- +
-virt-manager -c qemu:///​system +
- +
-You can connect to the libvirt service running on another host by entering the following in a terminal prompt: +
- +
-virt-manager -c qemu+ssh://​virtnode1.mydomain.com/​system +
- +
-The above example assumes that SSH connectivity between the management system and virtnode1.mydomain.com has already been configured, and uses SSH keys for authentication. SSH keys are needed because ​libvirt ​sends the password prompt to another processFor details on configuring ​SSH see OpenSSH ​Server+
  
 ====Программа просмотра виртуальных машин==== ====Программа просмотра виртуальных машин====
  
-The virt-viewer ​application allows you to connect to a virtual machine'​s console. virt-viewer ​does require a Graphical User Interface ​(GUI) to interface with the virtual machine.+Приложение **virt-viewer** позволяет вам соединиться с консолью виртуальной машины**virt-viewer** требует графического интерфейса ​(GUI) для взаимодействия с виртуальной машиной.
  
-To install ​virt-viewer ​from a terminal enter:+Для установки **virt-viewer** из терминала введите: 
 +<​code>​sudo apt-get install virt-viewer</​code>​
  
-sudo apt-get install ​virt-viewer+Как только виртуальная машина установлена и запущена,​ вы можете подсоединиться к ее консоли командой:​ 
 +<​code>​virt-viewer ​-c qemu:///​system web_devel</​code>​
  
-Once a virtual machine is installed and running you can connect to the virtual machine'​s console by using:+Как и **virt-manager**,​ **virt-viewer** может соединяться с удаленным сервером используя для аутентификации ключи SSH: 
 +<​code>​virt-viewer -c qemu+ssh://​virtnode1.mydomain.com/​system web_devel</​code>​
  
-virt-viewer -c qemu:///​system ​web_devel +Убедитесь,​ что заменили **//​web_devel//​** на соответствующее название виртуальной машины
- +Если настроено использование моста для сетевого интерфейса,​ вы можете настроить ​SSH доступ и непосредственно к виртуальной машинеСмотрите разделы [[wiki:​руководство_по_ubuntu_server:​удаленное_администрирование:​openssh_server|Сервер ​OpenSSH]] и [[wiki:​руководство_по_ubuntu_server:​сеть:​сетевые_настройки#​строительство_мостов|Строительство мостов]] для дополнительной информации.
-Similar to virt-manager,​ virt-viewer can connect to a remote host using SSH with key authentication,​ as well: +
- +
-virt-viewer -c qemu+ssh://virtnode1.mydomain.com/​system web_devel +
- +
-Be sure to replace web_devel with the appropriate virtual machine name. +
- +
-If configured to use a bridged network interface you can also setup SSH access to the virtual machineSee OpenSSH ​Server and Bridging for more details.+
  
 ====Ссылки==== ====Ссылки====
  
-    See the KVM home page for more details+  -- Обратитесь к [[http://​kvm.qumranet.com/​kvmwiki|домашней странице ​KVM]] для дополнительной информации
- +  -- Больше информации по **libvirt** смотрите на [[http://libvirt.org/​|домашней странице libvirt]]. 
-    For more information on libvirt ​see the libvirt ​home page +  -- Сайт по [[http://​virt-manager.et.redhat.com/​|Virtual Machine Manager]] содержит дополнительную информацию по разработке **virt-manager**
- +  -- Также посетите IRC канал **//#​ubuntu-virt//** на [[http://​freenode.net/​|freenode]] для обсуждения технологий виртуализации в Ubuntu. 
-    ​The ​Virtual Machine Manager ​site has more information on virt-manager ​development+  -- Еще один хороший ресурс - страница [[https://​help.ubuntu.com/​community/​KVM|Ubuntu Wiki KVM]].
- +
-    Also, stop by the #​ubuntu-virt ​IRC channel on freenode ​to discuss virtualization technology in Ubuntu. +
- +
-    Another good resource is the Ubuntu Wiki KVM page. +
  
 ---- ----