TrilioVault for RHV Architecture
TrilioVault is built on the same architectural principles as modern analytical platforms such as Hadoop and other big data platforms. These platforms offer infinite scale without compromising on performance. TrilioVault's other attributes include agentless, natively integrated with RHV GUI, horizontally scalable, nondisruptive, and open universal backup schema.
TrilioVault offers image-level backup, which backs up a given virtual machine physical disks as one file. Irrespective of the complexity of a VM or the applications running inside the VM, the user does not require any custom code, called agents, inside VM for TrilioVault to take VM backups. Agentless solutions are one of the highly desirable features because any solution that requires custom code to run in VM creates an operational nightmare.
TrilioVault comes with a GUI plugin for RHV Manager, which provides seamless integration of TrilioVault functionality adjacent to virtual machines management. TrilioVault service authenticates users with OpenID tokens, so any user who logged in to RHV can use TrilioVault functionality without any out-of-band user management.
Most backup solutions are built on client/server architectures, and hence, they invariably create performance and scale bottlenecks when the RHV cluster grows. Traditional backup solutions require constant tweaking to keep up with RHV cluster growth. TrilioVault is built on the same architectural principles as the RHV platform; hence, it grows with the RHV cluster without introducing scale and performance bottlenecks.
Deploying TrilioVault is nondisruptive to the RHV cluster or the virtual machines. Similarly, uninstalling TrilioVault is nondisruptive as well.
In the current world of multi-cloud environments, the backup images must be platform and vendor-neutral, so they are easily portable between clouds. TrilioVault saves backup images as QCOW2 images. QCOW2 is a standard format in KVM/RHV environments for virtual disks, and Linux comes with numerous tools to create and manage them. A backup image stored in QCOW2 format gives the user enormous flexibility on how these are leveraged for various use cases, including restoring backup images without TVM.
QCOW2 images also come with two important attributes that also make them ideal for storing backup images.
- 1.QCOW2s are sparse friendly. As a regular practice, users overprovision virtual disks to VMs. These virtual disks may be thick or thin-provisioned, but at any given time, applications only use a fraction of the virtual disk capacity. When taking image-level backups of virtual disks, backup solutions should only save the blocks that are allocated and not save blocks that are not allocated or used. For example, your virtual disks maybe a 1TB in capacity, but the applications utilized only 10GB of disk space. Since QCOW2 images are spare friendly, TrilioVault only stores the data. In the above example, the size of the QCOW2 image is 10GB
- 2.KVM/RHV supports virtual disk snapshots by a construct called overlay files. KVM/RHV creates a new disk snapshot, it creates a new qcow2 file called overlay file and is overlaid on the original qcow2 file. Any new writes are applied to overlay file, and any reads to old data is read from the older qcow2 file. TrilioVault leverages the same mechanism to store incremental backups. TrilioVault incremental backups are overlay files that include the data that is modified between the current backup process and the last good backup. Since the TrilioVault backup image structure on the backup media reflects what KVM/RHV natively represents, our process of creating backups and restores are highly efficient in terms of the amount of backup storage used and the network bandwidth utilization.
TrilioVault architecture reflects these principles.
TrilioVault for RHV Architecture overview
As you can see from above the architecture diagram, TrilioVault does not require any media servers. Traditionally, media servers performs numerous bookkeeping operations of backup images, including pruning older backups, synthesizing full backups from existing backups, cataloging backup images and other operations. These are usually data intensive operations and as your RHV cluster grows, media servers need to scale in capacity to keep up with RHV growth. Scaling media servers may include trial and errors approaches and very difficult to calibrate correctly. TrilioVault employs data movers that are deployed on each RHV host that can horizontally scale with RHV, hence, there is no tuning to do when RHV cluster grows. Instead of centralizing media server functionality in to one appliance, all bookkeeping operations are performed with in the data mover in the context of current backup job. TrilioVault enhances operational efficiency of backups and recoveries and by not tieing the users to hardware licenses it also significantly improves the ROI and TCO of your investments.
The TrilioVault Controller Cluster is the controller of TrilioVault, called TVM.
The TVM is running and managing all backup and recovery jobs.
During a backup job is the TVM:
- Gathering the Metadata information generated of the VMs that are getting protected
- Writing the Metadata information onto the Backup Target
- Generating the RHV Snapshot
- Sending the data copy commands to the ovirt-imageio services
The TVM is running on three RHEL8 VMs provided on the RHV environment. The TVM is then installed on top of these VMs in form of a K8s cluster running the TVR controller containers.
It is supported and recommended to run the TVM in the same RHV environment as a VM that the TVM protects.
TrilioVault is natively integrated into the available RHV GUI, provides a new tab "Backup".
All functionalities of TrilioVault are accessible through the RHV GUI.
The RHV-Manager GUI integration is getting installed using Ansible-playbooks together with the ovirt-imageio-proxy extension.
Ovirt-imageio is an RHV internal python service that allows the upload and download of disks into and out of RHV.
The default ovirt-imageio services only allow to move the disks through the RHV-M via https.
TrilioVault extends the ovirt-imageio functionality using the additional TrilioVault datamover service to provide movement of the disk data through NFS over the RHV Hosts themselves.
The TrilioVault datamovers are getting installed using Ansible-playbooks.
TrilioVault is writing all Backups over the network using the NFS protocol to a provided Backup Target.
Any system utilizing the NFSv3 protocol is usable.