📜 ⬆️ ⬇️

Container Virtualization: Standards Coming Soon

The development of standards for working with containers is a very relevant topic today. The fact is that the practice of container virtualization is rapidly gaining popularity due to its economic and technological efficiency, and the availability of open standards, in turn, makes ready-made solutions even more accessible and attractive to customers.

image

Since 2016, our chief architect Pavel Emelyanov is one of the members of the OCI Technical Oversight Board. Therefore, we know and want to talk about what the global OpenSource community is doing to standardize and promote container technologies.

The openness of standards carries both advantages and disadvantages. In particular, you need to make a lot of effort to create a single ecosystem that can take into account the views and combine the efforts of developers from different companies. But if this is not someone's commercial initiative, we need to organize ourselves and agree on standards and collaboration formats.
')
The role of associations such as the Open Container Initiative (OCI) is to create an open “club” that will guide the development of the industry, creating uniform industry standards for various container technologies.

Container and its place in the IT ecosystem


Docker defines the concept of "container" as a packaged application, ready to run in any environment. Virtuozzo approaches the container a little differently, launching a whole distribution kit in guest mode - a kind of lightweight virtual machine. However, both approaches require the adaptation of other elements of the IT ecosystem to work freely with containers.

Users want to be able to work with the application, regardless of who created the application, from its distribution channels, from the platform and other parameters. The customer does not want to think about how it all works. Therefore, the industry is gradually coming to understand that it is necessary to distribute containers in the form of finished products - like jam pies. After all, we do not care where they were baked and on which car they brought to the nearest kiosk.

The core of the issue is to provide the possibility of direct interaction between developers, stores and platform providers to launch applications. There are a lot of developers. DockerHub, Quay, Bitnami, RedHat can serve as stores, and Docker, CoreOS, Virtuozzo, LXC, OpenShift, Magnum and others offer potential platforms for launching containers. As a result, the role of OCI is to enable these solutions to interact using a single standard.

OCI structure


The Open Container Initiative creates a two-tier model of developer interaction. On the one hand, there are Communities Technical Developer Community (TDC), which directly develop standards, discussing and describing them in the “open community” mode. At the initial stage, two communities have been created, but it is expected that there will be a lot of them, since there are more and more areas requiring the introduction of a single standard.

Our architect Pavel Emelyanov is a member of the supervisory body - Technical Oversight Board (TOB). The TOB is represented by industry experts and is the supervisory authority that will just form the TDC communities, make initial recommendations and coordinate their work. It is noteworthy that TOB consists of individual experts, while companies operate at the level of technical communities.

Currently TDC is actively working on the container launch standard (the main participants are Docker, RedHat, CoreOS, Google) and the distribution and storage format (the main participants are Docker, Google, RedHat, CoreOS and Huawei). The first steps have already been taken, and TOB recommends using Rocket’s AppC format, which is almost completely supported in RunC (command line utility) and ContainerD (a daemon that provides a REST interface to RunC) as the base. As for the base for the container distribution format, the corresponding TOB is recommended to use the Docker v2 format, which provides for a layered structure of images and supports mechanisms for their verification, naming and detection.

Virtuozzo participation


We would like to mention the initiatives of our company as an example of the work of the committees, since we see the effect of the work of the association and strive to participate in its work. Virtuozzo plans to join the maximum number of technical committees that will develop standards for container interaction.

But now, within the framework of OCI, our specialists are involved in the development of the Linux kernel, which allows us to expand the functionality of container virtualization technologies. As part of this initiative, there is a massive correction of errors, as well as the introduction of additional libraries for projects such as KVM, CRIU, Ploop, etc.

By the way, teamwork allows you to collaborate with other groups on projects such as expanding KVM functionality and Hyper-V support for Windows guest machines. In the qemu project, we jointly implement backup technologies and plop support. But for Docker containers, there is integration with our CRIU live migration tool. And this is only the beginning - ahead of us are waiting for much more new community and joint initiatives.

Source: https://habr.com/ru/post/307756/


All Articles