Types of Servers
- Dedicated servers. These are running on “bare metal”. One can run VMs or basically whatever one likes on these, but they will be more expensive. They are the physical machines that are housed in racks in data centers. Power and internet infrastructure are the major factors in cost for dedicated servers.
- Paravirtualized servers. These are running in what are basically containers. They might have higher performance, and they will certainly be cheaper, but you can only run Linux distributions on these because they share a kernel with their host. They are generally not recommended due to their relative insecurity. OpenVZ and Virtuozzo are examples of Paravirtualization software. Few larger providers will sell PV servers, but more “low-end” providers will still offer them.
- Fully Virtualized servers. These are just VMs on a dedicated server. They will be cheaper than dedicated servers for a smaller server (as power is not as great of a concern for VMs), but will not be a good deal for a larger server. KVM, Virtualbox, VMWare, and Xen HVM are examples of full virtualization software. You can run Windows or other non-Linux operating systems like BSD on these. The vast majority of larger providers have shifted towards fully virtualized servers instead of paravirtualized servers. Realistically, in this day and age, fully virtualized servers are almost on-par (cost-wise) with paravirtualized servers. There is almost no reason to choose PV over fully virtualized.
- Containers. These are special and are essentially paravirtualized servers but running a kind of minimal operating system image designed to run only one application. Examples of Container software include Hyper-V Containers and Docker. Orchestration tools like Kubernetes typically rely on containers.
Here’s a few example of server providers:
- Amazon Web Services
- Google Cloud Platform
- Microsoft Azure
The last 3 are known as the “Big 3” cloud providers. They typically cater for enterprise customers, and therefore provide a very poor cost to performance ratio.
This is just a *tiny list* of all the providers that exist. There are just so many that exist that it’s impossible to list them all!
Providers can range in price anywhere from a few dollars a year to thousands of dollars an hour.
Unlike the consumer market, the enterprise (read: servers!) market is almost entirely reliant on various Linux distributions, such as Ubuntu, Debian, CentOS, Fedora Server, and Red Hat Enterprise Linux. In contrast to the consumer version, the server version of Windows is prohibitively expensive (~$3000 per CPU core and growing) and generally understood to be awful.