Open your virtual datacenter

Start using oVirt now »

Manage your virtualized networks

oVirt manages virtual machines, storage and virtualized networks.

Easy to use web interface

oVirt is a virtualization platform with an easy-to-use web interface.

KVM based virtualization management

oVirt is powered by the Open Source you know - KVM on Linux.

Current release: 4.0.3 (2016-08-29)

Read the release notes Get started with oVirt 4.0.3

oVirt News

Up and Running with oVirt 4.0 and Gluster Storage

In June, the oVirt Project shipped version 4.0 of its open source virtualization management system. With a new release comes an update to this howto for running oVirt together with Gluster storage using a trio of servers to provide for the system's virtualization and storage needs, in a configuration that allows you to take one of the three hosts down at a time without disrupting your running VMs.

One of the biggest new elements in this version of the howto is the introduction of gdeploy, an Ansible based deployment tool that was initially written to install GlusterFS clusters, but that's grown to take on a bunch of complementary tasks. For this process, it'll save us a bunch of typing and speed things up significantly.

Important Note: I want to stress that while Red Hat has recently begun to sell and support a converged virtualization and storage configuration on a limited basis, the converged oVirt/Gluster setup I describe here should be considered somewhat bleeding edge.

If you're looking instead for a simpler, single-machine option for trying out oVirt, your best bet is the oVirt Live ISO. This is a LiveCD image that you can burn onto a blank CD or copy onto a USB stick to boot from and run oVirt. This is probably the fastest way to get up and running, but once you're up, this is definitely a low-performance option, and not suitable for extended use or expansion.

Read More »

Monitoring Improvements in oVirt

Recently I've been working on improving the scalability of monitoring in oVirt. That is, how to make oVirt-engine, the central management unit in the oVirt management system, able to process and report changes in a growing number of virtual machines that are running in a data center. In this post, I will elaborate on what we did and share some measurements.

Read More »

Manage Your Hosted Engine Hosts Deployment Via Engine

Hosted engine has seen a lot of progress and evolution, and today it is is the de facto recommended way to to deploy your oVirt Engine. But since that special Hosted Engine High Availability (HA) cluster itself needs management, we worked on making that be managed by the hosted engine itself, too.

Recent oVirt versions made it lot more easier to deploy hosted-engine, first by introducing the appliance and cloud-init customization phase, next with VM configuration being stored on the shared storage and making the VM itself manageable from the UI itself. A few more under-the-hood changes resulted in storing event the cluster configuration on the shared storage itself, opening the door to making the expanding of the HA-cluster even easier, as all answers and configuration were now already available.

Read More »

oVirt Engine 4.0 Installation Issues on Fedora 24

This blog post relates to oVirt Engine release 4.0 installation on Fedora 24 and probably is relevant for earlier oVirt releases. Having Fedora 24 (Twenty Four) installed on my new laptop (while it was still in beta phase, but this is still relevant for GA), I ran an oVirt installation and encountered the following error message:

ovirt-engine[5566] ERROR run:532 Error: Unable to change process owner ([Errno 1] Operation not permitted)

This is an outcome of permission problems with python-daemon 2.1.0, which is the default package in the Fedora 24 release.

To overcome this issue, I had to downgrade the python-daemon version to 2.0.6 (e.g., sudo pip install python-daemon==2.0.6, a reference to similar general issue can be found here:!topic/pywws/I0c_RW4DRzg)

Any further issues related to oVirt installation and Fedora 24 will be added to this blog post.

View article »

Subclusters in oVirt 4.0 - Label-Based VM to Host Affinity

Before I start discussing the feature itself I have to explain a bit about the use cases that we were trying to solve.

  • Let us imagine you have a special piece of software with a node-licensing model that only cares about physical machines when counting the number of licenses needed. This specifically allows you to run that software in virtual machines, but you need to control the physical host on which the VMs are running.

  • The other case is basically related to hardware capabilities. Some NICs might be faster than others and you want to place all high traffic VMs on hosts that have them. Or a special custom device is needed and VMs that need it won’t run on a host that does not have it.

Read More »

Announcing the oVirt Engine DR Sub-project

The oVirt Project is pleased to announce a new sub-project within the oVirt community: oVirt Engine DR, which uses the oVirt API and perform tasks that would normally require manual intervention, in case of the need for Disaster Recovery.

Specifically, the oVirt Engine DR is a web application that uses Java, the oVirt API, PostgreSQL, and MariaDB to perform the tasks needed in a Disaster Recovery scenario.

Read More »

Dependency Injection and Mockito

Recently I encountered a small issue in a static helper class that was full of static helper methods. After I finished dealing with the issue at hand and as part of following the Boy Scout rule (always leave the campground cleaner than you found it) I decided to refactor the class and the code using it.

More specifically to remove all the static modifiers and to inject this class whenever it was needed. The refactoring was easy enough but things got a bit more interesting once I got to a class that was using one of the static helper methods.

The class had a wrapper method that called the static method and did nothing more.

Read More »

Application-Scoped Tests for oVirt with Arquillian

oVirt's heart, ovirt-engine, is a monolith with more than one million lines of codes based on Wildfly. One of the problems faced when working on such big projects is that sometimes writing tests is extremely complex. You spend a tremendous amount of time mocking database access and irrelevant services for the unit under test.

One way to deal with that complexity is to treat the database as part of the application. While we will see the advantages of this for writing tests it does also make a lot of sense for other reasons.

In the past the database was not part of the application, it was the opposite. The database was the integration point of different applications and services. A database was full of different views for BI, Finance, Shops, and many more. This has changed over time. Nowadays the integration mostly happens through REST or similar APIs, giving applications the freedom to choose the one (or even more than one) database technology suiting their domain.

Read More »

oVirt 4.0 is Released!

On behalf of the oVirt community, I am pleased to announce a major new release today, oVirt 4.0. This latest community release, now ready for download, has several new features, including a brand-new dashboard management and monitoring system; enhanced container support; faster live migration speeds; and a new direct-for-disk image uploader.

As the upstream development project for Red Hat Enterprise Virtualization, oVirt’s integrated virtualization enables cost savings for enterprises without the need to re-develop applications to conform to cloud platforms' APIs. oVirt also shares services with Red Hat’s cloud solutions including RDO, Red Hat's community OpenStack distribution, as well as stronger container support that integrates tools from Project Atomic, Red Hat's robust container management tool set.

Read More »

Modifying oVirt-Generated ifcfg Files

oVirt is using a bridge based setup to configure networks on the managed hosts. The setup process is done by generating and maintaining network interface configuration files (ifcfg file), which define the network devices used by oVirt. Should any changes be done to these files by an outside party, oVirt will try to restore them to the desired state, to keep the network configuration intact. There are however situations in which the user want to intentionally introduce permanent changes into some of these files, and prohibit oVirt from overwritting them. In order to do so, VDSM hook script can be used.

Lets look at an example, where the user want to add the following entries to the 'ens11' network interface:

ETHTOOL_OPTS="autoneg on speed 1000 duplex full"

Read More »

Advanced Users Authentication, Using Kerberos, CAS SSO and Active Directory

I have a environment where hard coded password are avoided. We prefer to use Kerberos. We also provided a SSO for Web UI using CAS. We use ActiveDirectory for users backend.

So I wanted a oVirt installation that will use kerberos for API authentication. For the web UI, Kerberos is not always the best solution, so I wanted to integrated it in our CAS.

Read More »

Up and Running with oVirt 3.6 and Gluster Storage

In November, version 3.6 of oVirt, the open source virtualization management system, hit FTP mirrors featuring a whole slate of fixes and enhancements, including support for storing oVirt's self hosted management engine on a Gluster volume.

This expanded Gluster support, along with the new "arbiter volume" feature added in Gluster 3.7, has allowed me to simplify (somewhat) the converged oVirt+Gluster installation that's powered my test lab for the past few years.

Read on to learn about my favored way of running oVirt, using a trio of servers to provide for the system's virtualization and storage needs, in a configuration that allows you to take one of the three hosts down at a time without disrupting your running VMs.

Read More »

My Devconf.CZ 2016 experience

On the first weekend of February I had the pleasure of attending DevConf.CZ 2016, which took place in the wonderful city of Brno, Czech Republic.

It's a relaxed, young, and vibrant conference and it was fun and rewarding from my perspective.

Here's a disorganized personal summary…

Read More »

Welcome to the new website!

As part of our efforts to upgrade the website and improve the community experience, we migrated the oVirt website from a MediaWiki site to a static site, authored in Markdown and published with Middleman. This was a major project that took more than 6 months and involved many contributors from all aspects of the project.

I'd like to take this opportunity to thank all the people who were involved with this migration, from content reviewers to UX designers and Website admins who gave their time and brain power to make this happen.

The old MediaWiki site is still available in read-only, and will be taken offline once we fix some pending issues, including handling PDF files and such.

Read More »

See all blog posts

Upcoming events

Case Study

Universidad de Sevilla

When one of the largest universities in Spain needed a virtualization solution to host their virtual desktop interface program, UDS Enterprise helped the institution find a virtualization solution that delivered superior flexibility at a much lower cost than proprietary solutions.

That solution would be oVirt. Today, more than 3,000 students use this virtual desktop infrastructure, with the prospect of the rest of the student body participating as the program grows.

Read the full Universidad de Sevilla case study

View all case studies

Packed with Features

  • Choice of stand-alone Hypervisor or install-on-top of your existing Linux installation
  • High availability
  • Live migration
  • Load balancing
  • Web-based management interface
  • Self-hosted engine
  • iSCSI, FC, NFS, and local storage
  • Enhanced security: SELinux and Mandatory Access Control for VMs and hypervisor
  • Scalability: up to 64 vCPU and 2TB vRAM per guest
  • Memory overcommit support (Kernel Samepage Merging)
  • Developer SDK for ovirt-engine, written in Python

View all features…

Community is Key

Everyone is encouraged to join the oVirt community, and help us bring our open source software to virtual datacenters worldwide.

Community can be found in many places in the global community. Keep track of the latest happenings in the oVirt community, including new release announcements, and send your thoughts and links to virtualization-related topics on these social media channels: