Back to Home

VZ7 vs VZ6: is there any reason to be updated? / Virtuozzo Blog

virtuozzo · opensource · openstack · virtualization · live migration · security · hosting

VZ7 vs VZ6: is there any reason to be updated?

    In the past year, a new version of our main product, the Virtuozzo virtualization system, was released. Since then, we constantly get questions: “Is it worth updating?”, “Why is 7ka better than 6ki?” etc. Therefore, during the holidays, there was a desire to dot the i and in one post talk about the differences between the latest version of Virtuozzo and the previous ones.

    image


    I want to immediately note that this post was prepared for users of Virtuozzo 6 and earlier versions, as well as the open project OpenVZ (of which we already wrote about the new version ). This, of course, does not mean that it is impossible or uninteresting to read it to those who are not yet using Virtuozzo ... just here we will talk objectively about the differences in the latest version so that interested habrochane can decide whether the update is relevant or there is no sense in it.

    About the platform


    The Virtuozzo platform itself has become more extensive. Now the product includes our proprietary Systems Container solution, which allows you to run “lightweight” virtual machines, a KVM-based hypervisor for managing virtual machines, and software-defined storage. The advantage is that all this works as a single center of virtualization, so you can create “lightweight” virtual machines and full-fledged VMs, allocating resources for a single Virtuozzo Storage data warehouse, creating it on the basis of hard drives and solid state drives installed in the servers.

    Hypervisor


    Both in an open and in a commercial platform (which are now developing synchronously and using the same source code), we switched to the KVM hypervisor. The reason is very simple: in recent years, KVM has made a very big leap forward, and we have found that we are not keeping pace with our proprietary hypervisor at the pace of industry development. It turned out that it was much more promising to participate in the KVM project, contributing to the development of an open virtualization system, as well as supplementing it with the necessary functions for use in VZ7. More than 200 patches and improvements have been implemented that make KVM a virtuoso more efficient solution.

    image

    More secure containers


    At the request of our users, we also implemented a number of innovations for containers. Due to the transition of Virtuozzo to the new Linux kernel 3.10+ (RHEL 7), support for cgroups and namespaces has appeared, which provides a higher level of isolation compared to kernel modules. Instead of the usual container IDs, Virtuozzo 7 uses a single UUID.

    Live migration


    The new version of Virtuozzo also has full CRIU support .- a software tool for Linux that allows you to freeze a container and save it on disk as a simple set of files. As a result, you can restore it from the same point, and with the right actions, the application will not even notice that it has changed the working environment. CRIU and the P.Haul project help create a new ecosystem for open migration of containers based on open technologies (CRIU is a completely OpenSource project), and this is a huge leap in migration issues compared to Virtuozzo 6. The fact is that CRIU is larger partly implemented in user space and almost does not require kernel modifications. Thanks to this, the development of the tool itself does not require the release of permanent patches for the kernel and their coordination, as well as reboots when updating the system - a critical question by the way for industrial environments.

    Security Updates - No Stopping Services


    Another interesting feature that helps reduce losses when working with the new Virtuozzo 7 is ReadyKernel. The new version of our operating system Virtuozzo Linux supports the ability to install security updates without rebooting the servers. On the one hand, this allows you to install patches immediately, reducing the risks of hacking and compromising systems, and on the other hand, not losing money due to stopping services caused by a reboot.

    Virtuozzo 6 users are already familiar with the system for installing kernel updates without rebooting - Rebootless Kernel Update (RKU). But the fact is that RKU still did not work so well - it stopped the containers, loaded the new kernel and then launched the container or VM. Yes, this mechanism allowed loading almost any core, but still led to some downtime. In Virtuozzo 7, through the use of the 3.10+ kernel, we switched to kpatch technology, and everything became much cooler.

    According to our experts, the use of ReadyKernel helps save up to 200 hours of administrator work per month (http://www.iksmedia.ru/news/5336522-Virtuozzo-Linux-7-ekonomit-zakazchi.html) for every 10,000 servers.

    Backup & Restore


    Backup tools in Virtuozzo 7 have also been seriously redesigned. For this, a new API was developed and a CBT (changed block tracking) mechanism was implemented. To do this, we used standard QEMU / KVM mechanisms, creating a system for creating snapshots, saving the images of containers and virtual machines in QCOW format. Virtuozzo 7. Thanks to this, the creation of cumulative backups began to happen much faster than in Virtuozzo 6.

    In addition, an emergency recovery became possible! Even if at some point the backup system stopped working, you can simply convert the QCOW2 file to any image using the qemu-img utility.

    Memory management


    We have already said a few words about the new memory management technology, which is implemented both in OpenVZ 7 and in Virtuozzo 7. The novelty covers both containers, VMs, and the storage system. Advanced Memory Management (AMM) monitors all memory work, including KSM, as well as memory prediction technologies for various WSS sets. This makes automatic balancing possible with minimal impact on user experience. AMM supports both Windows and Linux guest systems, and Online Memory Management (OMM) tools guarantee the availability of the right amount of memory for containers, and also allow you to increase or decrease it without rebooting - and this is another way to ensure service continuity.

    OpenStack Support


    Starting with Virtuozzo 7, we support working with containers and VMs through Libvirt. Thanks to this, Virtuozzo can work with large ecosystems using libvirt - that is, OpenStack and Virtual Machine Manager. That is, OpenStack users can unleash the full potential of OpenStack to manage a private or public cloud using containers and Virtuozzo VMs through the OpenStack API or the Horizon panel. New Virtuozzo Storage Module Also Helps Create Software Defined Storage for OpenStack

    Application catalog


    The last thing we will talk about today is the ability to instantly install ready-made and already configured applications for any users. Maintaining such a directory on your own, keeping track of updates is very difficult. Therefore, in the new version, we created our own, ready-made suite of Virtuozzo Application Catalog. Together with Bitnami, we support a constantly up-to-date set of dozens of applications and development environments that are ready to be deployed as a virtual machine or container: WordPress, Redmine, SugarCRM, Alfresco, Drupal, MediaWiki, GitLab and many others.

    image

    Conclusion


    Today we talked about the general differences Virtuozzo 7 from the previous version. So if you are our user, now that the holidays are behind, you can consider the need for updates. In the meantime, we will prepare a post on how to upgrade to the "seven" with minimal losses.

    Read Next