How to manage your Oracle VM setup with Puppet

How to manage your Oracle VM setup with Puppet Oracle is very strict when it comes to using their software on virtualization software. If you want to license only part of your VM setup, the only option available is to use Oracle VM. But setting up and managing an Oracle VM farm is no sinecure. Fortunately using our new ovm_config Puppet module, the process of setting up, adding and removing VM’s and another setup, has become very easy.

How to get started

To help you to get started, we have created a setup based on Vagrant. This is how the network setup is going to look like. Network setup

We have created a GitHub repository with a simple example setup. It contains one VM server an NFS based storage setup and a single VM. In this blog post, we are going to use this repository.

Go to your preferred working directory and enter:

$ git clone

This will create a local copy.

The tools of trade

This example is designed, so you run on your own Workstation running Vagrant and VirtualBox. So to get started, you’ll need Vagrant and VirtualBox. You can find the information on how to install VirtualBox here at the VirtualBox website. Vagrant To install Vagrant, go to the vagrant downloads page, and download the package for your platform. Then install it using standard procedures for your operating system. Because we only use Puppet inside the virtual machine, you don’t need to install Puppet on our workstation.

Required software

The examples repository doesn’t contain any of the required Oracle software. You will have to go to the Oracle site and download it yourself.

In the README, you can find a list of the software needed when you want to run the boxes.

Setting up the Oracle VM server

The first thing to do is to get the Oracle VM server running. Unfortunately, we cannot do this with vagrant. SO we have to create the system manually. First, open VirtualBox and then create a new VM.

Create VM

Select about 16G of memory to run. When selecting the storage, make sure the V952527-01.iso is selected as the file for the first CDROM.

Select correct ISO

Now you can start the VM, and it will start to install the Oracle VM server software.

Because we want to work towards a whole setup with the Puppetized Oracle VM Manager, it is important to use the correct network setup.

Network setup

So when the installations ask for the IP setup, make sure you use the correct IP address and the network mask. Same goes for the gateway setup.

Gatway setup

And the DNS setup.

DNS setup

When the installations askes for the password, use the password Password123. When you use another password, make sure the Puppet code we are going to use later, is also updated with the correct password.

After a reboot, the console should look like this.

After reboot

Now we are almost ready to start Puppet. There is one more thing left to do. Because this VM setup has no shared DNS, we must make sure the OVM server knows about its own name. To do so, log into the system as root, and edit the `/etc/hosts’ file to look like this: ovs01   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

Now the manual labor is done and we can start using some Puppet.

Masterless Puppet

Most of our clients use Puppet Enterprise, and of course, our modules work with the newest version of Puppet Enterprise. But to focus on the Oracle VM installation and configuration, this example contains a Puppet masterless setup. A setup you can easily run on any PC or laptop.

Starting the NFS server

Oracle VM needs storage to store the VM files and maybe some ISO’s. In this setup, we are using an NFS server. Before we start the Oracle VM manager, we first start the NS server.

$ vagrant up ml-nfs01

VirtualBox allows multiple network adapters with different interconnects. To make sure all systems in our setup can talk to each other, we must make sure that the network adapter of the Oracle VM server is on the same network as the second adapter of the NFS server and the second adapter of the Oracle VM Manager.

You can do this by opening the network settings for the NFS server and check on which network the adapter is connected and make sure all VM’s use the same network.

Network adapter

Starting the Oracle VM Manager

Now all the peripheral systems are up and running and we can get to the real stuff. Now we can start the ovmmgr system and let Puppet do the installation of the Oracle VM manager software and configure the system.

$ vagrant up ml-ovmmgr


We hope this article helps you to get a glimpse of what you can do with Puppet and Oracle VM Manager. There is a lot more though. If you are interested, contact us so we can discuss how you can use these puppet modules to speed up your Oracle VM provisioning and deployment. In the next blog post we are going to look at some of the Puppet code to help you understand what is happening and how you can use it to develop Puppet code for your environments.