Ovirt (open Virtualization) is a KVM based (kernel-based Virtual http://www.aliyun.com/zixun/aggregation/39569.html "> Machine) 's Open source IaaS (infrastructure as a Service) project, formerly known as Redhat's desktop virtualization commercial product. Memory management is the focus of ovirt, this article will describe how Ovirt is organized and distributed to various storage, how users should use it.
The node/engine structure of Ovirt
Ovirt is an open source IaaS cloud service solution based on x86 architecture for KVM virtualization technology. In architecture design, it uses node/engine separation structure to facilitate the division and management of functions.
Figure 1.oVirt Logical Structure diagram
Figure 1 illustrates the Ovirt workflow from the overall framework. Externally, the Engine in Ovirt provides an external HTTP API through the HTTP protocol, while providing a built-in Web service for users and system administrators to use. The system administrator can create and modify virtual machines and related devices or user rights through Web pages, and users can operate their own virtual machines with permissions and log on to their virtual machines via VNC or SSH. Engine plays the role of manager in the whole system and provides management service externally, it mounts its own database to record all the virtual machine configuration in the whole system, the state of each node, the network state of the system, the memory state. The logic, state and strategy of management are all set and implemented in Engine. Node is only responsible for functional implementation, without any State records and implementation of any policies. The relationship between Engine and Node is much like the functional split relationship between drivers and applications in Linux: Drivers are only responsible for the implementation of functions, such as the ability to read, write, turn on and off devices, and use these functions for the application layer. Also Node is only responsible for the creation and modification of virtual machines and devices, the sharing and protection of resources, how to use these functions to Engine processing. Node exposes two web-based APIs that interact with Engine, XMLRPC and REST. Engine through these interfaces to control the start of functions on each Node. Of course, users can also invoke these APIs to develop third-party programs.
Node in Ovirt can be made up of a common Linux installation VDSM (Virtual Desktop Server Manager), or it can be made up of a Linux system designed for Ovirt customization. In custom cases, many file systems on node are RAMDisk (memory based Linux disk devices), and the content disappears after the system restarts, thus ensuring node statelessness. Engine/node design is not only convenient for future development, but also simplifies the installation of users, in the case of customization Node can quickly deploy a large number of. This article mainly takes the custom Node as an example to explain the related function of VDSM.