A Virtual Private Server (VPS) which is dynamic, can be changed at runtime, is often referred to as a cloud server. The attributes of a cloud server are:
- Additional hardware resources, such as CPU and RAM, can be added at runtime.
- The server can be moved to other hardware while it is running. This may be done automatically according to load.
Virtual Private Server (VPS)
A Virtual Private Server (VPS) is a virtual machine, usually provided by an internet hosting company. It runs in software on the same physical computer as other virtual machines, but it functions like a separate physical computer. A virtual private server is dedicated to an individual customer and has almost the same privacy as a separate physical computer. They are normally configured to run server software. (Virtual Private Servers are also, less frequently, called Virtual Dedicated Servers.)
Virtual Private Servers can reduce hardware and power expenses. Each VPS runs its own full operating system. This allows a legacy application which requires an old operating system to run on the same server as a new application running on a newer operating system. The virtual servers can be independently rebooted etc.
Partitioning a single physical server into multiple virtual servers has long been common on mainframe and mid-range computers such as the IBM AS/400. It has recently become widespread on microcomputers with the development of virtualization software and CPU technologies.
The physical server typically runs a hypervisor which creates, releases, and manages the resources of "guest" operating systems, or virtual machines. A guest operating system is allocated a share of the physical server resources. Typically the guest cannot see the physical resources which have not been allocated to it by the hypervisor.
The guest system may be fully virtualized, paravirtualized, or a hybrid of the two.
In a fully virtualized environment, the guest is given emulated or virtualized hardware. The guest will be unaware that this virtual hardware is not strictly physical. The hypervisor will translate, map, and convert all requests from the guest system into the appropriate hardware resource requests. This can be a significant overhead. Almost all systems can be fully virtualized, as it requires no modification of the operating system. But special CPU support is normally required for full virtualization.
In a paravirtualized environment, the guest is aware of the hypervisor and interfaces directly with the host system's resources, with the hypervisor implementing real-time access control and resource allocation. This results in near-native performance since the guest sees the same hardware as the host and can communicate with it natively. Some UNIX-like systems, such as Linux, and some variants of BSD, Plan 9, and OpenSolaris support this method of virtualization. To install a paravirtualized guest operating system tends to require more knowledge about the operating system, they often require special hypervisor-aware kernels and devices.
Examples of paravirtualization-capable hypervisors are Xen, Virtuozzo, Vserver, and OpenVZ. (OpenVS is the open source version of Parallels Virtuozzo Containers.)
Hybrid or partial paravirtualization, is similar to full virtualization but the guest uses paravirtualized drivers for some key components, such as networking and disk I/O. This can give greatly increased performance for these components. This is a common solution for operating systems which cannot be modified to support full paravirtualization.
An example hybrid hypervisor is Kernel-based Virtual Machine.
Virtual private servers generally cost less than a physical dedicated server and more than shared web hosting. Unlike shared web hosting, a VPS runs its own copy of its operating system so the customer gets superuser-level access to the operating system instance, and the ability to install almost any required software. Certain software does not run well in a virtualized environment, such as virtualizers themselves, and VPS providers may impose further restrictions, but restrictions are generally lax compared to shared hosting environments. Other virtual machines running the same physical machine can limit a VPS processor time, RAM, and disk space, this would not happen on a dedicated host.
Virtual private server hosting
A growing number of companies offer virtual private server hosting as a web hosting service.
The customer administers their own physical server.
This type of service is generally offered with no limit on the data transferred over a fixed bandwidth line. Usually, unmetered hosting is offered with 10 Mbit/s, 100 Mbit/s or 1000 Mbit/s connections, with some as high as 10Gbit/s. The customer is theoretically able to saturate this bandwidth, although in practice the data transmitted will be significantly less.