Настройка "Интерфейса паравиртуализации" в Vagrantfile
VirtualBox 5 предоставляет параметр под названием "Интерфейс паравиртуализации", который может повысить производительность для некоторых конкретных гостевых операционных систем.
Есть ли способ установить эту опцию в Vagrantfile
?
И вообще: есть ли документация по настройке ускорения через Vagrantfile?
1 ответ
Нашел это. VBoxManage
(инструмент CLI VirtualBox) имеет необязательный аргумент --paravirtprovider
, Вы можете добавить это к vb.customize
вызов:
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.provider "virtualbox" do |vb|
vb.customize [
"modifyvm", :id,
"--memory", "1024",
"--paravirtprovider", "kvm", # for linux guest
"--cpus", "2"
]
end
end
Другие настройки процессора также доступны таким образом, vb.customize
принимает тот же аргумент, что и VBoxManage
, Ссылаться на VboxManage --help
чтобы получить список всех вариантов.
В моем Vagrantfile не было раздела vb.customize (возможно, в принятом ответе используется более старый формат (?)). Основываясь на https://www.vagrantup.com/docs/virtualbox/configuration.html и https://www.virtualbox.org/manual/ch08.html (поиск --nictype), у меня сработало следующее. Мне не нужно было явно устанавливать KVM, потому что я был на Linux, и это было по умолчанию.
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/bionic64"
config.vm.hostname = "whatever"
config.vm.provider "virtualbox" do |vb|
vb.memory = "512"
vb.cpus = "2"
vb.default_nic_type = "virtio"
end
end
Установив для этого default_nic_type значение virtio, этот тип получил не только первый сетевой адаптер с NAT, но также я определил второй сетевой адаптер (здесь не показан), и он также был создан как virtio (virtio-net в графическом интерфейсе параметров виртуальной коробки).