At work, we’re currently evaluating oVirt as a replacement for our VMware infrastructure. We had evaluated it around 3.5 and found it wanting, but the 4.0 release led us to reevaluate. I found the setup process a little lacking, but once setup correctly, it works delightfully well.
Setting up the First Host
Shared storage is required to setup oVirt. This can be an NFS share from your first host, but separate storage is highly recommended. In my setup, I used an NFS share from an illumos box we have laying around. Ensure that the NFS shares for oVirt are owned by 36:36 (vdsm).
For the rest of the post, I will assume that your hosts have at least two NICs: one for management and VM traffic and another for storage traffic.
Grab a copy of the oVirt Node ISO and begin installing it on the first host.
The installation process is very similar to CentOS 7. Configure the hostname and assign an IP address to the first network interface. Assign a root password and don’t bother creating a user.
Once the installation completes, reboot the host.
Hosted Engine Setup
In oVirt parlance, the “Engine” is the component that manages the hosts, much like vCenter or XenCenter. A Hosted Engine is when you run the Engine as a VM.
SSH into the first host and install the latest ovirt-engine-appliance package, which can be found here.
# yum install http://resources.ovirt.org/pub/ovirt-4.0/rpm/el7/noarch/ovirt-engine-appliance-4.0-20160829.1.el7.centos.noarch.rpm -y
Edit /etc/hosts and add entries for this host, as well as the oVirt Engine we will be setting up. This step is crucial, as name resolution is required to complete the setup and oVirt will drop your current DNS servers when it creates the bridge interface during Hosted Engine setup.
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.100.80 ovengine ovengine.lab.calnet.us 192.168.100.81 ov01 ov01.lab.calnet.us
Open a web browser and login to the Cockpit page on the oVirt host (https://<<IP_ADDRESS>>:9090/). Login as root and click on the Networking link, then the add VLAN button. Set the Parent Interface as the second NIC, likely enp2s0f1, and the VLAN ID as your SAN. Assign the new VLAN interface an IP address on that VLAN, ignore IPv6 traffic, connect automatically, and enable the interface.
Enable the parent interface (enp2s0f1), as well, but disable IPv4, ignore IPv6, and connect automatically.
Click on the Virtualization tab, then on Hosted Engine, then click the Start button.
Answer the following questions:
- Are you sure you want to continue? Yes
- Please specify the storage you would like to use: nfs3
- Please specify the full shared storage connection path to use: 10.0.101.22:/data00/NFS-shared/ovirt_storage/hosted_engine
- Please indicate a nic to set ovirtmgmt bridge on: enp2s0f0
- iptables was detected on your computer, do you wish setup to configure it? Yes
- Please indicate a pingable gateway IP address: 192.168.100.254
- Please specify the device to boot the VM from: disk
- Please specify the console type you would like to use to connect to the VM: vnc
- Please choose which OVF archive you would like to use: 1
- Would you like to use cloud-init to customize the appliance on the first boot? Yes
- Would you like to generate on-fly a cloud-init ISO image? Generate
- Please provide the FQDN you would like to use for the engine appliance: ovengine.lab.calnet.us
- Automatically execute engine-setup on the engine appliance on first boot? Yes
- Automatically restart the engine VM as a monitored service after engine-setup? Yes
- Please provide the domain name you would like to use for the engine appliance: lab.calnet.us
- Enter root password that will be used for the engine appliance: <Same as host>
- Confirm root password: <Same as host>
- Please specify the CPU type to be used by the VM: <Use default>
- Please specify the number of virtual CPUs for the VM: 4
- You may specifya unicast MAC address for the VM or accept a randomly generated default: <Use default>
- Specify the memory size of the VM in VM: 12722
- How should the engine VM network be configured: Static
- Please enter the IP address to be used for the engine VM: <The IP address selected previously and added the /etc/hosts>
- Please provide a comma-separated list (max 3) of IP addresses of domain name servers for the engine VM: 192.168.100.5,192.168.100.6
- Add lines for the appliance itself and for this host to /etc/hosts on the engine VM? <If you’ve added DNS records, you can safely enter No. Else, Yes>
- Enter engine admin password: <password>
- Confirm engine admin password: <password again>
- Enter the name which will be used to identify this host inside the Administrator Portal: ov01
- Provide the name of the SMTP server through which we will send notifications: mail.lab.calnet.us
- Please provide the TCP port number of the SMTP server: 25
- Please provide the email address from which notifications will be sent: email@example.com
- Please provide a comma-separated list of email addresses which will get notifications: firstname.lastname@example.org
- Please confirm installation settings: Yes
Let the process do it’s thing and eagerly await the message “Hosted Engine Setup successfully completed!”.
Next time, we’ll discuss configuring the default datacenter.