Abstract
| Goal | Explain the purpose and architecture of Red Hat Virtualization. |
| Objectives |
|
| Sections |
Introducing Red Hat Virtualization (and Quiz) |
After completing this section, you should be able to describe the purpose of Red Hat Virtualization and its architectural design.
System virtualization allows a single computer to be partitioned into multiple, concurrent virtual computers, each running its own operating system. These virtual machines are fully isolated from each other, as if running on private hardware. Virtual machines have their own network interfaces, IP addresses, file systems, and other peripherals. Each virtual machine can run any supported operating system or version.
Virtualization allows efficient use of physical computing resources. A large system can be partitioned into many virtual systems, allowing it to be used to full capacity. Virtualization allows quick provisioning of new virtual servers which is faster than deploying new physical hardware.
The hypervisor is the component that manages and supports the physical server virtualization. This hypervisor runs the virtual machines for each virtualized operating system, providing access to virtual CPUs, memory, disks, networking, and other peripherals, while restricting virtual machines from having direct access to hardware or other virtual machines.
The physical machine and operating system providing the hypervisor is called a host. A guest is an operating system running in a virtual machine on a hypervisor.
A virtualization management solution effectively manages virtual machines and hosts running in your infrastructure. Typically, virtualization management tools create an integrated virtualization environment to create, manage, and monitor virtual machines, hypervisors, storage, and networking resources. A virtualization manager provides centralized control for your virtualization infrastructure, rather than requiring you to individually manage and monitor hundreds of hypervisors and their virtual machines.
Cloud Computing
Virtualization provides a basic foundation for cloud computing. Cloud computing uses virtualization technology to provide shared computing resources as on-demand service offerings over the network. A managed virtualization environment is different from a public or private cloud. While both managed virtualization and cloud computing allow the administration of physical resources as multiple virtual resources, cloud computing shares a pool of automatically allocated resources as a service. Cloud resources are available through a self-service model and can also offer the benefits of automated management, scaling, and elasticity, whereas virtualization environments offer enterprise-class private data center management.
Use Cases of Virtualization and Cloud
Managed virtualization and cloud computing each lend themselves to different use cases. One primary determinant for the selection of virtualization over cloud is the expected workload. Virtualization is typically the better platform for workloads requiring finite resources for a specific application available to a defined set of users.
Table 1.1. Virtualization and Cloud Comparison
| Virtualization | Cloud |
|---|---|
|
Creates multiple virtual environments for individual physical systems. |
Shares a pool of automated virtual resources as an on-demand service. |
|
Provides finite resources for a specific use to a defined set of users. |
Provides variable resources to groups of users for different purposes. |
|
Characterized by long-term allocation of resources. |
Characterized by short-term allocation of resources. |
|
Workloads are stateful. |
Workloads are stateless. |
|
High Availability (HA) is handled at the infrastructure level. |
High Availability (HA) is handled at the application layer. |
|
Scales up in response to increased workload demands. |
Scales out in response to increased workload demands. |
Red Hat Virtualization (RHV) is an open source virtualization platform for centralized management of hosts, virtual servers, and desktops across one or more enterprise data centers. RHV is based on Red Hat Enterprise Linux (RHEL), Kernel-based Virtual Machine (KVM) technology, and the oVirt virtualization management project. Red Hat Virtualization offers features for enterprise-grade virtualization, such as live migration, high availability, system scheduling, power management, image management, snapshots, thin provisioning, and monitoring.
Red Hat Virtualization Manager (RHV-M)
The core component of RHV is the Red Hat Virtualization Manager (RHV-M), which provides a central management platform for both physical and virtual resources in a RHV environment. RHV-M installs either on a Red Hat Enterprise Linux server or as a self-hosted appliance, and stores its data in a local or external PostgreSQL database. Administrators can simplify the management of RHV-M user access through integration with supported directory servers, such as RHEL IdM, Active Directory or other supported LDAP server.
Through the use of a graphical user interface and a RESTful API, RHV-M offers the management of virtual machine disk images, installation ISOs, and other storage and network components used in the data center. It allows virtual machines to be started, stopped, created manually or from templates, migrated from one physical hypervisor node to another, and more. RHV-M provides access to the graphical consoles of virtual machines using the SPICE protocol, providing a desktop experience similar to running on a user's local physical system.
Red Hat Virtualization supports two types of deployment for RHV-M, as a Standalone Manager or as a Self-Hosted Engine.
In a Standalone Manager deployment, RHV-M is installed on either a physical system, or as a virtual machine hosted in another virtualization environment.
In a Self-Hosted Engine deployment, RHV-M is installed on a virtual machine within the RHV environment that it manages. Instead of manually installing RHV-M, you deploy and modify a virtual appliance that Red Hat provides. Its virtual machine is created as part of host configuration, and the RHV-M engine is installed and configured during that process.
Hosts
Red Hat Virtualization supports two types of hosts, Red Hat Virtualization Host (RHV-H) or Red Hat Enterprise Linux (RHEL) with virtualization:
Red Hat Virtualization Host (RHV-H) is a standalone, minimal operating system based on Red Hat Enterprise Linux. RHV-H is co-engineered with Red Hat Enterprise Linux and supports the same hardware and software ecosystem. Available as an ISO file, RHV-H can be used to provision a bare-metal physical system as a hypervisor in a RHV environment. RHV-H can be installed using optical media, USB storage, PXE/TFTP distribution, or by cloning.
A RHV-H system contains only the packages necessary for a system to serve as a host. This configuration simplifies its management, maintenance, and deployment of the RHV environment. Red Hat Virtualization 4 supports many enhancements, including a writable root file system, the ability to install additional RPM packages, and the Web Console graphical administration interface.
Alternatively, you can configure Red Hat Enterprise Linux to provide a RHV hypervisor. With access to a wider selection of packages, a Red Hat Enterprise Linux host provides greater flexibility and customization than a host deployed with the RHV-H operating system.
Depending on your organization's requirements, you may choose to deploy RHV-H or RHEL hosts, or both, within a Red Hat Virtualization environment.
The Virtual Desktop Server Manager (VDSM) management agent runs on all RHV hosts and allows for communication between the Red Hat Virtualization Manager and hosts. VDSM allows RHV-M to manage virtual machines and storage, and retrieve statistics from hosts and guests. VDSM uses libvirt to perform basic virtual machine life-cycle commands, such as start, stop, and reboot.
Storage
In a Red Hat Virtualization environment, storage domains are configured to provide hypervisor hosts access to virtual machine disk images, templates, and ISO files. RHV supports the use of various file systems (NFS, GlusterFS, or other POSIX-compliant file systems), as well as block devices (iSCSI targets, locally attached storage, or Fibre Channel storage devices) for the creation of storage domains. The file systems or block devices used to back storage domains are typically provided by NAS or SAN hardware in the infrastructure.
There are three types of storage domains: data domains, ISO domains, and export domains:
Data domains hold virtual machine disk images, as well as templates used for virtual machine creation. Data domains can be migrated between different data centers, to allow moving virtual machines and templates from one to another.
ISO domains store media images used for the deployment of virtual machines, but are now deprecated. Recommended practice is to use a data domain. You can upload images to data domains. In current Red Hat Virtualization versions, some tasks may still require an ISO domain.
Export domains connect to and disconnect from one data center at a time, as a transport mechanism for moving virtual machines between data centers. Recommended practice is to use a data domain. You can migrate data domains between data centers and import the virtual machines into the new data center. In current Red Hat Virtualization versions, some tasks may still require an export domain.
Data domains can be created from any of the supported file system or block device types. ISO and export storage domains can only be created using the NFS file system type.
In addition to this course, there are a number of useful resources that can help you prepare to deploy and use Red Hat Virtualization. In particular, review the official documentation at https://access.redhat.com/documentation/en/red-hat-virtualization/. Some very useful documents at that site include, but are not limited to:
Product Guide provides an overview of the architecture of Red Hat Virtualization.
Planning and Prerequisites Guide specifies hardware and software requirements and design considerations of a Red Hat Virtualization environment; review this document when planning your deployment.
Red Hat Virtualization Installation Methods is an overview of supported methods for installing Red Hat Virtualization. Each of the four supported methods has an additional document:
Installing Red Hat Virtualization as a self-hosted engine using the Cockpit web interface explains how to use the Web Console to install RHV-M as a virtual machine running on the same hosts it manages. This is the method used in this course.
Installing Red Hat Virtualization as a self-hosted engine using the command line explains using the command-line to install RHV-M as a virtual machine running on the same hosts it manages.
Installing Red Hat Virtualization as a standalone Manager with local databases explains installing RHV-M and its PostgresSQL databases on a standalone server.
Installing Red Hat Virtualization as a standalone Manager with remote databases explains installing RHV-M on one server, and its databases on a separate PostgresSQL server.
The Introduction to the Administration Portal provides detailed information about using the Red Hat Virtualization Administration Portal.
The Administration Guide provides detailed information about key administration tasks using Red Hat Virtualization.
The Virtual Machine Management Guide provides detailed information about the installation, configuration, and administration of virtual machines using Red Hat Virtualization.
The Introduction to the VM Portal provides detailed information about using the Red Hat Virtualization VM Portal.
The Technical Reference provides in-depth information about the technical design of Red Hat Virtualization.
Red Hat Virtualization https://learn.spidernet.pl/rhv
Further information is available in the documentation for Red Hat Virtualization 4.3, which can be found at https://access.redhat.com/documentation/en-US/index.html
What's the difference between cloud and virtualization?
Access to Red Hat Virtualization software for evaluation purposes is available at https://access.redhat.com/products/red-hat-virtualization/evaluation