Chapter 2. Basics
2.1. Introduction
- 2.1.1. Red Hat Enterprise Virtualization Architecture
- 2.1.2. Red Hat Enterprise Virtualization System Components
- 2.1.3. Red Hat Enterprise Virtualization Resources
- 2.1.4. Red Hat Enterprise Virtualization API Support Statement
- 2.1.5. SPICE
- 2.1.6. Administering and Maintaining the Red Hat Enterprise Virtualization Environment
2.1.1. Red Hat Enterprise Virtualization Architecture
A Red Hat Enterprise Virtualization environment consists of:
- Virtual machine hosts using the Kernel-based Virtual Machine (KVM).
- Agents and tools running on hosts including VDSM, QEMU, and libvirt. These tools provide local management for virtual machines, networks and storage.
- The Red Hat Enterprise Virtualization Manager; a centralized management platform for the Red Hat Enterprise Virtualization environment. It provides a graphical interface where you can view, provision and manage resources.
- Storage domains to hold virtual resources like virtual machines, templates, ISOs.
- A database to track the state of and changes to the environment.
- Access to an external Directory Server to provide users and authentication.
- Networking to link the environment together. This includes physical network links, and logical networks.
2.1.2. Red Hat Enterprise Virtualization System Components
The Red Hat Enterprise Virtualization version 3.3 environment consists of one or more hosts (either Red Hat Enterprise Linux 6.5 or later hosts or Red Hat Enterprise Virtualization Hypervisor 6.5 or later hosts) and at least one Red Hat Enterprise Virtualization Manager.
Hosts run virtual machines using KVM (Kernel-based Virtual Machine) virtualization technology.
The Red Hat Enterprise Virtualization Manager runs on a Red Hat Enterprise Linux 6 server and provides interfaces for controlling the Red Hat Enterprise Virtualization environment. It manages virtual machine and storage provisioning, connection protocols, user sessions, virtual machine images, and high availability virtual machines.
The Red Hat Enterprise Virtualization Manager is accessed through the Administration Portal using a web browser.
2.1.3. Red Hat Enterprise Virtualization Resources
The components of the Red Hat Enterprise Virtualization environment fall into two categories: physical resources, and logical resources. Physical resources are physical objects, such as host and storage servers. Logical resources are nonphysical groupings and processes, such as logical networks and virtual machine templates.
- Data Center - A data center is the highest level container for all physical and logical resources within a managed virtual environment. It is a collection of clusters, virtual machines, storage, and networks.
- Clusters - A cluster is a set of physical hosts that are treated as a resource pool for virtual machines. Hosts in a cluster share the same network infrastructure and storage. They form a migration domain within which virtual machines can be moved from host to host.
- Logical Networks - A logical network is a logical representation of a physical network. Logical networks group network traffic and communication between the Manager, hosts, storage, and virtual machines.
- Hosts - A host is a physical server that runs one or more virtual machines. Hosts are grouped into clusters. Virtual machines can be migrated from one host to another within a cluster.
- Storage Pool - The storage pool is a logical entity that contains a standalone image repository of a certain type, either iSCSI, Fibre Channel, NFS, or POSIX. Each storage pool can contain several domains, for storing virtual machine disk images, ISO images, and for the import and export of virtual machine images.
- Virtual Machines - A virtual machine is a virtual desktop or virtual server containing an operating system and a set of applications. Multiple identical virtual machines can be created in a Pool. Virtual machines are created, managed, or deleted by power users and accessed by users.
- Template - A template is a model virtual machine with predefined settings. A virtual machine that is based on a particular template acquires the settings of the template. Using templates is the quickest way of creating a large number of virtual machines in a single step.
- Virtual Machine Pool - A virtual machine pool is a group of identical virtual machines that are available on demand by each group member. Virtual machine pools can be set up for different purposes. For example, one pool can be for the Marketing department, another for Research and Development, and so on.
- Snapshot - A snapshot is a view of a virtual machine's operating system and all its applications at a point in time. It can be used to save the settings of a virtual machine before an upgrade or installing new applications. In case of problems, a snapshot can be used to restore the virtual machine to its original state.
- User Types - Red Hat Enterprise Virtualization supports multiple levels of administrators and users with distinct levels of permissions. System administrators can manage objects of the physical infrastructure, such as data centers, hosts, and storage. Users access virtual machines available from a virtual machine pool or standalone virtual machines made accessible by an administrator.
- Events and Monitors - Alerts, warnings, and other notices about activities help the administrator to monitor the performance and status of resources.
- Reports - A range of reports either from the reports module based on JasperReports, or from the data warehouse. Preconfigured or ad hoc reports can be generated from the reports module. Users can also generate reports using any query tool that supports SQL from a data warehouse that collects monitoring data for hosts, virtual machines, and storage.
2.1.4. Red Hat Enterprise Virtualization API Support Statement
Red Hat Enterprise Virtualization exposes a number of interfaces for interacting with the components of the virtualization environment. These interfaces are in addition to the user interfaces provided by the Red Hat Enterprise Virtualization Manager Administration, User, and Reports Portals. Many of these interfaces are fully supported. Some however are supported only for read access or only when your use of them has been explicitly requested by Red Hat Support.
Supported Interfaces for Read and Write Access
Direct interaction with these interfaces is supported and encouraged for both read and write access:
- Representational State Transfer (REST) API
- The REST API exposed by the Red Hat Enterprise Virtualization Manager is a fully supported interface for interacting with Red Hat Enterprise Virtualization Manager.
- Software Development Kit (SDK)
- The SDK provided by the rhevm-sdk package is a fully supported interface for interacting with Red Hat Enterprise Virtualization Manager.
- Command Line Shell
- The command line shell provided by the rhevm-cli package is a fully supported interface for interacting with the Red Hat Enterprise Virtualization Manager.
- VDSM Hooks
- The creation and use of VDSM hooks to trigger modification of virtual machines based on custom properties specified in the Administration Portal is supported on Red Hat Enterprise Linux virtualization hosts. The use of VDSM Hooks on virtualization hosts running Red Hat Enterprise Virtualization Hypervisor is not currently supported.
Supported Interfaces for Read Access
Direct interaction with these interfaces is supported and encouraged only for read access. Use of these interfaces for write access is not supported unless explicitly requested by Red Hat Support:
- Red Hat Enterprise Virtualization Manager History Database
- Read access to the Red Hat Enterprise Virtualization Manager history database using the database views specified in the Administration Guide is supported. Write access is not supported.
- Libvirt on Virtualization Hosts
- Read access to
libvirtusing thevirsh -rcommand is a supported method of interacting with virtualization hosts. Write access is not supported.
Unsupported Interfaces
Direct interaction with these interfaces is not supported unless your use of them is explicitly requested by Red Hat Support:
- The vdsClient Command
- Use of the
vdsClientcommand to interact with virtualization hosts is not supported unless explicitly requested by Red Hat Support. - Red Hat Enterprise Virtualization Hypervisor Console
- Console access to Red Hat Enterprise Virtualization Hypervisor outside of the provided text user interface for configuration is not supported unless explicitly requested by Red Hat Support.
- Red Hat Enterprise Virtualization Manager Database
- Direct access to and manipulation of the Red Hat Enterprise Virtualization Manager database is not supported unless explicitly requested by Red Hat Support.
Important
Red Hat Support will not debug user created scripts or hooks except where it can be demonstrated that there is an issue with the interface being used rather than the user created script itself. For more general information about Red Hat support policies see https://access.redhat.com/support/offerings/production/soc.html.
2.1.5. SPICE
The SPICE (Simple Protocol for Independent Computing Environments) protocol facilitates graphical connections to virtual machines. The SPICE protocol allows:
- video at more than 30 frames per second
- bidirectional audio (for softphones/IP phones)
- bidirectional video (for video telephony/video conferencing)
- connection to multiple monitors with a single virtual machine
- USB redirection from the client's USB port into the virtual machine
- connection to a proxy from outside of the network the hypervisor is attached to
2.1.6. Administering and Maintaining the Red Hat Enterprise Virtualization Environment
The Red Hat Enterprise Virtualization environment requires an administrator to keep it running. As an administrator, your tasks include:
- Managing physical and virtual resources such as hosts and virtual machines. This includes upgrading and adding hosts, importing domains, converting virtual machines created on foreign hypervisors, and managing virtual machine pools.
- Monitoring the overall system resources for potential problems such as extreme load on one of the hosts, insufficient memory or disk space, and taking any necessary actions (such as migrating virtual machines to other hosts to lessen the load or freeing resources by shutting down machines).
- Responding to the new requirements of virtual machines (for example, upgrading the operating system or allocating more memory).
- Managing customized object properties using tags.
- Managing searches saved as public bookmarks.
- Managing user setup and setting permission levels.
- Troubleshooting for specific users or virtual machines for overall system functionality.
- Generating general and specific reports.
