Virtual private server
||This article may be in need of reorganization to comply with Wikipedia's layout guidelines. (November 2016) (Learn how and when to remove this template message)|
|This article needs additional citations for verification. (August 2014) (Learn how and when to remove this template message)|
|Part of a series on|
|Internet hosting service|
|Application-specific web hosting|
|By content format|
A VPS runs its own copy of an operating system, and customers may have superuser-level access to that operating system instance, so they can install almost any software that runs on that OS. For many purposes they are functionally equivalent to a dedicated physical server, and being software-defined, are able to be much more easily created and configured. They are priced much lower than an equivalent physical server, but as they share the underlying physical hardware with other VPSs, performance may be lower, and may depend on the workload of other instances on the same hardware node.
The force driving server virtualization is similar to that which led to the development of time-sharing and multiprogramming in the past. Although the resources are still shared, as under the time-sharing model, virtualization provides a higher level of security, dependent on the type of virtualization used, as the individual virtual servers are mostly isolated from each other and may run their own full-fledged operating system which can be independently rebooted as a virtual instance.
Partitioning a single server to appear as multiple servers has been increasingly common on microcomputers since the launch of VMware ESX Server in 2001. The physical server typically runs a hypervisor which is tasked with creating, releasing, and managing the resources of "guest" operating systems, or virtual machines. These guest operating systems are allocated a share of resources of the physical server, typically in a manner in which the guest is not aware of any other physical resources save for those allocated to it by the hypervisor. As a VPS runs its own copy of its operating system, customers have superuser-level access to that operating system instance, and can install almost any software that runs on the OS; however, due to the number of virtualization clients typically running on a single machine, a VPS generally has limited processor time, RAM, and disk space.
Although VMware and Hyper-V dominate in-house corporate virtualization, because of their cost and limitations they are less common for VPS providers, which instead typically use products such as OpenVZ, Virtuozzo, Xen or KVM.
Many companies offer virtual private server hosting or virtual dedicated server hosting as an extension for web hosting services. There are several challenges to consider when licensing proprietary software in multi-tenant virtual environments.
With unmanaged or self-managed hosting, the customer is left to administer his own server instance.
Unmetered hosting is generally offered with no limit on the amount of data-transferred on a fixed bandwidth line. Usually, unmetered hosting is offered with 10 Mbit/s, 100 Mbit/s or 1000 Mbit/s (with some as high as 10Gbit/s). This means that the customer is theoretically able to use ~3 TB on 10 Mbit/s or up to ~300 TB on a 1000 Mbit/s line per month, although in practice the values will be significantly less. In a virtual private server, this will be shared bandwidth and a fair usage policy should be involved. Unlimited hosting is also commonly marketed but generally limited by acceptable usage policies and terms of service. Offers of unlimited disk space and bandwidth are always false due to cost, carrier capacities and technological boundaries.
A VPS which is dynamic (that is, it can be changed at runtime) is often referred to as a cloud server. Key attributes for this are:
- Infrastructure as Code defines the 'physical' services to be provided through a software definition
- Additional hardware resources (CPU, RAM) can be added on request
- Additional servers can be brought on line and added to a shared or load balanced pool dynamically. (Automatically according to load in some cases.)