Openvz features and analysis, Openvz Features Analysis
OpenVZ is an open-source software and an operating system-level server virtualization solution based on the Linux platform. OpenVZ uses the kernel of SWsoft's Virutozzo virtualization server software product. Virutozzo is a commercial virtualization solution provided by SWsoft.
OpenVZ allows you to create multiple isolated virtual private servers (VPS) on a single physical server and share hardware and manage resources with maximum efficiency. Each VPS runs exactly the same as an independent server, because its own users and applications can be restarted independently, it has root access permissions, users, IP addresses, memory, processors, files, application services, system library files, and configuration files. OpenVZ with lightweight processing loss and efficient design is the best choice for running application services and real-time data production server virtualization.
- OpenVZ Is A virtualization technology based on the Linux operating system kernel. Therefore, OpenVZ virtualization technology can only be used in virtual Linux systems.
- Only limited and customized Linux systems can be used as VPS operating systems. That is to say, this virtualization technology cannot run Windows operating systems.
- The host machine divides a directory as the entire VPS disk, and the host machine limits the size of this directory according to the disk quota. Therefore, if the provider "divides" 30 GB of disk space for you, the host does not need a real 30 GB available space.
- In the same sense, the host machine "divides" the memory space of MB for the Virtual Machine. When the VPS is started on, it will not completely "exclusively" the memory of MB for the host machine, but how much it will use, the limit cannot be exceeded. This memory allocation method makes it possible for the service provider to "oversell.
- Since the M memory allocated to you by the service provider is only conceptual, the memory actually allocated to you depends on the reputation of the service provider.
- OpenVZ is limited by its own virtualization technology. Even for Linux systems, many kernel-related functions cannot be used normally, for example, some functions of pptp vpn and iptables firewall cannot be used normally.
- Linux in OpenVZ architecture does not have Swap partitions, and you cannot partition disks or perform other operations.
- OpenVZ has obvious advantages: under the same conditions (not oversold), the overhead of OpenVZ is smaller than that of the XEN architecture, and the performance is slightly higher than that of XEN. the disk space is only a numerical limitation, to upgrade or reduce the VPS space, you do not need to make any adjustments to the disk. The same is true for memory. The code running on OpenVZ runs directly on the host machine without virtualization overhead.
In short, the OpenVZ host says "MB of assurance", which actually means about 232MB of "privvmpages", 14M of "kmemsize" and other miscellaneous resources. When the application calls malloc (), the allocated memory is added to "privvmpages ". When "privvmpages" exceeds the limit, malloc () will fail and return a NULL value. When the memory of the host server is used up, the process exceeding oomguarpages in the virtual environment will be terminated.
OpenVZ memory management methods have both problems and advantages. One of the biggest problems is that the memory used by applications with memory capacity is different from the memory actually allocated by applications. Different applications may differ greatly. Taking Java as an example, it usually allocates a large block of memory, but it may only use a small part of the allocated memory. If privvmpages is restricted, java stops running immediately. Adjusting parameters can solve some of the problems, but it is definitely not as neat as Xen. In fact, almost all applications that use memory allocation will be affected by OpenVZ.
/Proc/meminfo itself also has problems. Although OpenVZ has already virtualized the memory, the "free" command still returns the host memory. In this way, the vps of openvz with small memory cannot run programs such as java or gcc compilation.
The advantage of OpenVZ's memory model is that it is easy to understand that you are almost limited by privvmpages. Unlike dedicated servers or Xen servers, your disk cache and page cache are not counted in your total memory usage. Therefore, on an unsold openvz host, because of its large redundancy of public resources, it may actually perform better than the same type of Xen VPS.
Once the Openvz memory is used up, it will suddenly die: no new program can be opened, only waiting for system resources to be available. What's more, a well-run program may also exceed the limit due to continuous growth, and then suddenly die. This is like driving 70 yards, and then suddenly hitting the wall, it will usually die badly.