I am having some trouble getting the Ovirt Vagrant plugin working. I was able to get
Vagrant installed and could even run the example scenario listed in the blog.
https://www.ovirt.org/blog/2017/02/using-oVirt-vagrant.html
My real issue is getting a vm generated by the SecGen project
https://github.com/SecGen/SecGen to come up. If I use the VirtualBox provider everything
works as expected and I can launch the vm with vagrant up. If I try to run using Ovirt
provider it fails.
I had originally posted this over in Google groups / Vagrant forums and it was suggested
to take it to Ovirt. Hopefully, somebody here has some insights.
The process fails quickly with the following output. Can anyone give some suggestions on
how to fix the issue? I have also included a copy of my vagrantfile below. Thanks in
advance for your assistance!
***Output***
Bringing machine 'escalation' up with 'ovirt4' provider...
==> escalation: Creating VM with the following settings...
==> escalation: -- Name: SecGen-default-scenario-escalation
==> escalation: -- Cluster: default
==> escalation: -- Template: debian_stretch_server_291118
==> escalation: -- Console Type: spice
==> escalation: -- Memory:
==> escalation: ---- Memory: 512 MB
==> escalation: ---- Maximum: 512 MB
==> escalation: ---- Guaranteed: 512 MB
==> escalation: -- Cpu:
==> escalation: ---- Cores: 1
==> escalation: ---- Sockets: 1
==> escalation: ---- Threads: 1
==> escalation: -- Cloud-Init: false
==> escalation: An error occured. Recovering..
==> escalation: VM is not created. Please run `vagrant up` first.
/home/secgenadmin/.vagrant.d/gems/2.4.4/gems/ovirt-engine-sdk-4.0.12/lib/ovirtsdk4/service.rb:52:in
`raise_error': Fault reason is "Operation Failed". Fault detail is
"Entity not found: Cluster: name=default". HTTP response code is 404.
(OvirtSDK4::Error)
from
/home/secgenadmin/.vagrant.d/gems/2.4.4/gems/ovirt-engine-sdk-4.0.12/lib/ovirtsdk4/service.rb:67:in
`check_fault'
from
/home/secgenadmin/.vagrant.d/gems/2.4.4/gems/ovirt-engine-sdk-4.0.12/lib/ovirtsdk4/services.rb:35570:in
`add'
from
/home/secgenadmin/.vagrant.d/gems/2.4.4/gems/vagrant-ovirt4-1.2.2/lib/vagrant-ovirt4/action/create_vm.rb:67:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/before_trigger.rb:23:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/after_trigger.rb:26:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/home/secgenadmin/.vagrant.d/gems/2.4.4/gems/vagrant-ovirt4-1.2.2/lib/vagrant-ovirt4/action/set_name_of_domain.rb:17:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/before_trigger.rb:23:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:121:in
`block in finalize_action'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builder.rb:116:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/runner.rb:102:in
`block in run'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/util/busy.rb:19:in
`busy'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/runner.rb:102:in
`run'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/call.rb:53:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/before_trigger.rb:23:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/after_trigger.rb:26:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/home/secgenadmin/.vagrant.d/gems/2.4.4/gems/vagrant-ovirt4-1.2.2/lib/vagrant-ovirt4/action/connect_ovirt.rb:31:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/before_trigger.rb:23:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/after_trigger.rb:26:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/config_validate.rb:25:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builtin/before_trigger.rb:23:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/warden.rb:50:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/builder.rb:116:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/runner.rb:102:in
`block in run'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/util/busy.rb:19:in
`busy'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/action/runner.rb:102:in
`run'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/machine.rb:238:in
`action_raw'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/machine.rb:209:in `block
in action'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/environment.rb:615:in
`lock'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/machine.rb:195:in
`call'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/machine.rb:195:in
`action'
from
/opt/vagrant/embedded/gems/2.2.4/gems/vagrant-2.2.4/lib/vagrant/batch_action.rb:82:in
`block (2 levels) in run'
Non-zero exit status...
Not going to destroy escalation, since it does not exist
Failed. Not retrying. Please refer to the error above.
**Vagrantfile***
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.define "escalation" do |escalation|
escalation.vm.provider :ovirt4 do |ovirt|
ovirt.username = 'admin@internal'
ovirt.password = 'my_password'
ovirt.url = 'https://engine.cyber-range.lan/ovirt-engine/api'
ovirt.cluster = 'default'
ovirt.template = 'debian_stretch_server_291118'
ovirt.memory_size = '512 MB'
ovirt.console = 'spice'
ovirt.insecure = true
ovirt.debug = true
end
escalation.vm.provision 'shell', inline: "echo 'datasource_list: [ None
] '> /etc/cloud/cloud.cfg.d/90_dpkg.cfg"
escalation.vm.hostname = 'SecGen-default-scenario-escalation'
escalation.vm.box = 'ovirt4'
escalation.vm.box_url =
'https://github.com/myoung34/vagrant-ovirt4/blob/master/example_box/dummy.box?raw=true'
escalation.vm.provision "puppet" do | modules_utilities_unix_update_unix_update
|
modules_utilities_unix_update_unix_update.module_path =
"puppet/escalation/modules"
modules_utilities_unix_update_unix_update.environment_path =
"environments/"
modules_utilities_unix_update_unix_update.environment = "production"
modules_utilities_unix_update_unix_update.synced_folder_type = "rsync"
modules_utilities_unix_update_unix_update.manifests_path =
"puppet/escalation/modules/unix_update"
modules_utilities_unix_update_unix_update.manifest_file =
"unix_update.pp"
end
escalation.vm.provision "puppet" do |
modules_vulnerabilities_unix_misc_distcc_exec |
modules_vulnerabilities_unix_misc_distcc_exec.facter = {
"base64_inputs_file" => '94bad9a7b0c9aa1462eb1d4d8277a712',
}
modules_vulnerabilities_unix_misc_distcc_exec.module_path =
"puppet/escalation/modules"
modules_vulnerabilities_unix_misc_distcc_exec.environment_path =
"environments/"
modules_vulnerabilities_unix_misc_distcc_exec.environment = "production"
modules_vulnerabilities_unix_misc_distcc_exec.synced_folder_type =
"rsync"
modules_vulnerabilities_unix_misc_distcc_exec.manifests_path =
"puppet/escalation/modules/distcc_exec"
modules_vulnerabilities_unix_misc_distcc_exec.manifest_file =
"distcc_exec.pp"
end
escalation.vm.provision "puppet" do |
modules_vulnerabilities_unix_local_chkrootkit |
modules_vulnerabilities_unix_local_chkrootkit.facter = {
"base64_inputs_file" => '170197cbf03410f71d7d777e9d468382',
}
modules_vulnerabilities_unix_local_chkrootkit.module_path =
"puppet/escalation/modules"
modules_vulnerabilities_unix_local_chkrootkit.environment_path =
"environments/"
modules_vulnerabilities_unix_local_chkrootkit.environment = "production"
modules_vulnerabilities_unix_local_chkrootkit.synced_folder_type =
"rsync"
modules_vulnerabilities_unix_local_chkrootkit.manifests_path =
"puppet/escalation/modules/chkrootkit"
modules_vulnerabilities_unix_local_chkrootkit.manifest_file =
"chkrootkit.pp"
end
escalation.vm.provision "puppet" do | modules_services_unix_nfs_nfs_share |
modules_services_unix_nfs_nfs_share.facter = {
"base64_inputs_file" => '98ddf2a16a97f46fd4856a509df9b75a',
}
modules_services_unix_nfs_nfs_share.module_path =
"puppet/escalation/modules"
modules_services_unix_nfs_nfs_share.environment_path = "environments/"
modules_services_unix_nfs_nfs_share.environment = "production"
modules_services_unix_nfs_nfs_share.synced_folder_type = "rsync"
modules_services_unix_nfs_nfs_share.manifests_path =
"puppet/escalation/modules/nfs_share"
modules_services_unix_nfs_nfs_share.manifest_file = "nfs_share.pp"
end
escalation.vm.network :private_network, type: "dhcp", :ovirt__network_name
=> 'ovirtmgmt'
end
end