Показаны сообщения с ярлыком kvm. Показать все сообщения
Показаны сообщения с ярлыком kvm. Показать все сообщения

понедельник, 6 мая 2013 г.

vagrant + libvirt + nested virtualization

Уже расписывал как хорош vagrant и как он становится на два порядка лучше с libvirt. Но есть ньюанс - в либвирте столько функций, что плагин для вагранта еще пилить и пилить. Сегодня добавлена одна из самых вкусных - вложенная виртуализация.
Для тех ,кто не в теме: это возможность запускать виртуальные машины внутри виртуальной машины. Я проверял на 3 уровнях вложенности - работает. Хотя больше двух и не надо.
Вся эта магия доступна на процессорах с поддержкой набора команд vmx от интела. Подробности расписаны тут.

Для начала надо включить опцию для модуля kvm_intel

rmmod kvm_intel
mod_probe kvm_intel nested=1


И в опциях vagrant-libvirt добавить libvirt.nested = true
Получится примерно так:

config.vm.provider :libvirt do |libvirt|
    libvirt.driver = "qemu"
    libvirt.host = "example.com"
    libvirt.connect_via_ssh = true
    libvirt.username = "root"
    libvirt.storage_pool_name = "default"
    libvirt.nested = true
  end

Теперь все новые виртуальные машины будут создаваться с поддержкой встроенной виртуализации.
Проверить можно посмотрев опции процессора вирт машины cat /proc/cpuinfo | grep -i vmx
Если нашлось слово vmx - значит можно запускать виртуалку внутри виртулки. Или подключаться использую virt-manager или vagrant c vagrant-libvirt и запускать используя эти инструменты.

воскресенье, 5 мая 2013 г.

Vagrant + libvirt

There are many virtualization technologies.
Sure the best is KVM!!!
But libvirt can  manage different virtualization technologies.

Next step is provide ability test and develop software by many virtual machines.
and vagrant is amazing for it(Thanks Mitchell).

Vagrant's plugin for libvirt 
By this plugin you can test VM localy and remotely(also remotely on many servers).
require only change Vagrantfile


Vagrant.configure("2") do |config|
  config.vm.define :test_vm do |test_vm|
    test_vm.vm.box = "centos64"
  end

  config.vm.provider :libvirt do |libvirt|
    libvirt.driver = "qemu"
    libvirt.host = "example.com"
    libvirt.connect_via_ssh = true
    libvirt.username = "root"
    libvirt.storage_pool_name = "default"
  end
end


Put your ssh public key to remote server and start libvirtd on it.
I use this tools for test multinodes cloud.
Lets together say THANKS to Lukas Stanek

P.S. Virtualbox is crap, and i was happy remove it from my laptop.

четверг, 14 июля 2011 г.

latest xen 4 and libvirt.

For connect libvirt to xen4 on fedora15 require install latest version of libvirt.
Today it is
rpm -Uvh http://kojipkgs.fedoraproject.org/packages/libvirt/0.9.3/2.fc16/x86_64/libvirt-0.9.3-2.fc16.x86_64.rpm http://kojipkgs.fedoraproject.org/packages/libvirt/0.9.3/2.fc16/x86_64/libvirt-python-0.9.3-2.fc16.x86_64.rpm http://kojipkgs.fedoraproject.org/packages/libvirt/0.9.3/2.fc16/x86_64/libvirt-client-0.9.3-2.fc16.x86_64.rpm http://kojipkgs.fedoraproject.org/packages/parted/3.0/2.fc16/x86_64/parted-3.0-2.fc16.x86_64.rpm http://kojipkgs.fedoraproject.org/packages/netcf/0.1.8/1.fc16/x86_64/netcf-libs-0.1.8-1.fc16.x86_64.rpm

But after tests: kvm is faster simpler and better.