How to install oVirt Open Virtualization Manager on CentOS 8

How to install oVirt Open Virtualization Manager on CentOS 8

oVirt is a free and open source distributed virtualization solution that can be used to manage the entire infrastructure. It is based on Red Hat Enterprise Virtualization and allows you to manage virtual machines, computing, storage and network resources from a web-based interface. It uses the KVM hypervisor and is based on several other community projects, including libvirt, Gluster, PatternFly and Ansible.

In this tutorial, we will explain how to install oVirt on CentOS 8 server.

prerequisites

  • A server running CentOS 8 with a minimum of 16 GB RAM.
  • The root password is configured for the server.

getting Started

Before starting, you will need to set the FQDN hostname in the system. You can use the following commands to do so:

hostnamectl set-hostname centos.example.com

Next, you will need to edit the /etc/hosts file and bind the system IP with the hostname.

nano /etc/hosts

Add the following line:

your-server-ip centos.example.com

Save and close the file when you are done.

Install the required repositories

Next, you will need to add oVirt and other necessary repositories to the system.

First, install the oVirt repository using the following command:

dnf install https://resources.ovirt.org/pub/yum-repo/ovirt-release44.rpm

After installation, use the following command to enable the Java packaging tool, pki-deps and PostgreSQL modules:

dnf module enable javapackages-tools -ydnf module enable pki-deps -ydnf module enable postgresql:12 -y

Once completed, you can proceed to the next step.

Install and set up oVirt Engine

First, update the repository using the following command:

dnf update -y

After updating the repository, install oVirt Engine using the following command:

dnf install ovirt-engine -y

After the installation is complete, you can configure oVirt Engine with the following command:

engine-setup

During the installation process, the system will ask you the following questions:

          --== PRODUCT OPTIONS ==--
         
          Configure Cinderlib integration (Currently in tech preview) (Yes, No) [No]: Yes
          Configure Engine on this host (Yes, No) [Yes]: Yes
         
          Configuring ovirt-provider-ovn also sets the Default cluster.'s default network provider to ovirt-provider-ovn.
          Non-Default clusters may be configured with an OVN after installation.
          Configure ovirt-provider-ovn (Yes, No) [Yes]: Yes
          Configure WebSocket Proxy on this host (Yes, No) [Yes]: Yes
         
          * Please note * : Data Warehouse is required for the engine.
          If you choose to not configure it on this host, you have to configure
          it on a remote host, and then configure the engine on this host so
          that it can access the database of the remote Data Warehouse host.
          Configure Data Warehouse on this host (Yes, No) [Yes]: Yes
          Configure Grafana on this host (Yes, No) [Yes]: Yes
          Configure VM Console Proxy on this host (Yes, No) [Yes]: Yes
         
          --== PACKAGES ==--
         
[ INFO  ] Checking for product updates...
[ INFO  ] No product updates found
         
          --== NETWORK CONFIGURATION ==--
         
          Host fully qualified DNS name of this server [centos.example.com]: Yes
[WARNING] Host name Yes has no domain suffix
[ ERROR ] Host name is not valid: Yes did not resolve into an IP address
          Host fully qualified DNS name of this server [centos.example.com]: 
[WARNING] Failed to resolve centos.example.com using DNS, it can be resolved only locally
         
          Setup can automatically configure the firewall on this system.
          Note: automatic configuration of the firewall may overwrite current settings.
          Do you want Setup to configure the firewall? (Yes, No) [Yes]: Yes
          --== DATABASE CONFIGURATION ==--
         
          Where is the DWH database located? (Local, Remote) [Local]: Local
         
          Setup can configure the local postgresql server automatically for the DWH to run. This may conflict with existing applications.
          Would you like Setup to automatically configure postgresql and create DWH database, or prefer to perform that manually? (Automatic, Manual) [Automatic]: 
          Where is the ovirt cinderlib database located? (Local, Remote) [Local]: 
          Setup can configure the local postgresql server automatically for the CinderLib to run. This may conflict with existing applications.
          Would you like Setup to automatically configure postgresql and create CinderLib database, or prefer to perform that manually? (Automatic, Manual) [Automatic]: 
          Where is the Engine database located? (Local, Remote) [Local]: 
         
          Setup can configure the local postgresql server automatically for the engine to run. This may conflict with existing applications.
          Would you like Setup to automatically configure postgresql and create Engine database, or prefer to perform that manually? (Automatic, Manual) [Automatic]: 
         
          --== OVIRT ENGINE CONFIGURATION ==--
         
          Engine admin password: 

          --== SUMMARY ==--
         
[ INFO  ] Restarting httpd
          Please use the user '[email protected]' and password specified in order to login
          Web access is enabled at:
              http://centos.example.com:80/ovirt-engine
              https://centos.example.com:443/ovirt-engine
          Internal CA 65:FA:CD:BF:DD:2D:F4:99:D6:63:85:80:97:B9:66:B9:C7:29:5A:F3
          SSH fingerprint: SHA256:Y46liXyme5Fz/oJA9QaYY1dhK8BKeJiw1kcSjOYL204
[WARNING] Less than 16384MB of memory is available
          Web access for grafana is enabled at:
              https://centos.example.com/ovirt-engine-grafana/
          Please run the following command on the engine machine centos.example.com, for SSO to work:
          systemctl restart ovirt-engine
         
          --== END OF SUMMARY ==--
         
[ INFO  ] Stage: Clean up
          Log file is located at /var/log/ovirt-engine/setup/ovirt-engine-setup-20200830105920-2u1ydn.log
[ INFO  ] Generating answer file '/var/lib/ovirt-engine/setup/answers/20200830110513-setup.conf'
[ INFO  ] Stage: Pre-termination
[ INFO  ] Stage: Termination
[ INFO  ] Execution of setup completed successfully

After successful installation, you should get the URL of the oVirt management console and Grafana dashboard in the above output.

Configure SELinux and firewall

By default, SELinux is enabled in CentOS 8. Therefore, you need to configure SELinux for oVirt. You can configure it with the following command:

setsebool -P httpd_can_network_connect 1

Next, you will need to allow ports 80 and 443 to pass through Firewalld. You can use the following commands to do so:

firewall-cmd --permanent --zone public --add-port 80/tcpfirewall-cmd --permanent --zone public --add-port 443/tcp
firewall-cmd --reload

Once completed, you can proceed to the next step.

Access oVirt management console

Now, open a web browser and enter the URL https://centos.example.com/ovirt-engine/sso/login.html. You should see the oVirt login page:

advertising

Provide the username admin and the password you set during the installation process, and then click recording in Button. You should see the following screen:

Vision

Now, click administrative Web portals. You should see the oVirt dashboard in the following screen:

oVirt dashboard

in conclusion

Congratulations! You have successfully installed oVirt Engine on CentOS 8 server. Now you can add a remote virtualization host from the oVirt console, and then start creating your first virtual machine from the oVirt dashboard. If you have any questions, please feel free to ask me.

Sidebar