Search Your Web Host.
Article Directory > Virtualization & VPS Server Handbook - Chapter 2
Web Hosting Blog
Technology Blog

The Virtualization & VPS Server Handbook - Chapter 2


Article Category:
VPS & Virtualization
created:
02.27.2008
updated:
05.01.2008
Article Rating:
5
Average: 5 (1 vote)

 

The Virtualization Technology & VPS Hosting Handbook - Chapter 2

 

 

 

 

 

 

 

 

Chapter 2.1 – What is VPS (Virtual Private Server) Hosting?

Your website is not only your gateway to e-business but also a mirror which reflects the credentials of your company. Not all who visit your website would do business with you, but a well maintained website definitely goes a long way to create a favorable impression and possibilities of future trade. So, we obviously dedicate a lot of effort and time in setting up a very attractive website.
However this is only the first step.
Of what use would it be if the fantastic website you’ve created takes unusually long time to load and frustrates potential visitors from making an attempt to visit it? You might be thinking it will never be the case with you because your website is being hosted by a reputed webhosting company equipped with state-of-the-art high speed fiber optic connectivity and you’ve opted for a shared hosting plan which gives you loads and loads of disk space.
But a server is more than space and bandwidth.

When the host plans how many websites to host on a server, the first limit is the processing power of the processor (combined with memory usage, maximum transfer speed etc.). What I'm saying is that although on paper a server might be able to host 300 websites and push 1000 GB, in reality that's not always possible. If the websites are all busy forums or otherwise use databases and scripts (SSI, PHP, PERL, ASP etc.) the computing power of the machine might be exceeded long before reaching the bandwidth limit.
So you don’t need a breakdown of servers for low speed or poor connectivity. If there are only a couple of active websites on the server they may corner all the computing power and connectivity and let your site crawl at an agonizing pace and create an army of frustrated visitors.

But before you start thinking about other options of putting up your website, please wait for a minute and ponder on what you want your website to do for you. Do you really want to engage in e-commerce or merely want your website to carry contact information much like a doctor’s or a lawyer’s website does? If latter’s the case, opting for anything other than a shared hosting plan would be a mere wastage of funds. If, however, you’re serious about e-commerce, you’d perhaps be better off by shifting your website to either a dedicated or a virtual private server. You would need to organize and track transactions that are made and be able to seamlessly integrate those details with your existing system. Else your stocks and, more importantly, financials will be a total mess in no time.

But now another vital issue needs to be ironed out.

 


back to index

 
 

Chapter 2.2 - choose Dedicated server or settle a Virtual Private Server?

A dedicated server is a type of Internet hosting where the client leases an entire server not shared with anyone. Obviously this is more flexible than shared hosting, as you can have full control over the server, including choice of operating system, hardware, and many other facilities. But if your website has not reached that level where you’d require an entire server all to yourself, a dedicated server may result in underutilization of resources leading to spiraling of cost and an obvious lowering of return on investment. So the best option would be to settle for something halfway between shared hosting and a dedicated server.

We are already aware that “virtualization” is the process of abstracting computing resources such that multiple operating systems and application images can share a single physical server, bringing significant cost-of-ownership and manageability benefits. This technology is used in providing a facility which is widely known as virtual private server.

Virtual private servers occupy the space between entry level Web hosting plans that offer specific services (such as PHP/MySQL, or Perl/CGI) with a limited amount of disk space on a shared server, and co-location, where you own and manage the hardware and simply rent "rack space" and an Internet connection from a data center. If you're outgrowing a shared hosting plan, but aren't ready for the financial commitment of co-location, a VPS hosting plan could be the ideal middle ground. VPS gives independence from other customers sharing the same hardware but at a cost less than a physical dedicated server. 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. Want to run PHP with PostgreSQL instead of MySQL? Go ahead; install it. Want to try out Zope/Plone? You can try out that too!
On top of that a VPS administrator can not only manage hosting for multiple domains, but each domain that is hosted can have its own custom branded control panel with unique logon. This feature is great for entrepreneurs, businesses, web developers, hosting resellers, software developers, open source enthusiasts, and everyone who wants the freedom to create and manage multiple hosting accounts under one plan.

This also opens up the possibility of reselling domains where the reseller can allow his customers unique control panels where they can setup email accounts, add applications, create auto responders, to name just a few.

The main refrain of the proponents of VPS technology is availability of root access to the server. You must have heard it so many times!

Does that mean you need to install the entire operating system from scratch? Most probably it wouldn’t be that bad. Almost all VPS plans have a number of "disk images" to choose from, with different distributions (such as Debian or Fedora Core) in default configurations. You simply specify which disk image you want, and it will be configured on your VPS in a matter of minutes. Once you are set up with an account, you are then given root access via “SSH”, and can log in and customize your server, install new software, remove unwanted software and update existing software as needed.


back to index
 
 

Chapter 2.3 - How does a vps work?

Virtualization inserts a thin layer of software directly on the computer hardware or on a host operating system. This software layer creates virtual machines and contains a virtual machine monitor or “hypervisor” that allocates hardware resources dynamically and transparently so that multiple operating systems can run concurrently on a single physical computer without even knowing it. Thus a hypervisor (also known virtual machine monitor) is a virtualization platform that allows multiple operating systems to run on a host computer at the same time.
Generally hypervisors are categorized in two types – Type 1 and Type 2. Type 1 is a software that runs directly on a given hardware platform (as an operating system control program). A guest operating system thus runs at the second level above the hardware. Type 2 (or hosted) hypervisor runs within an operating system environment. A "guest" operating system thus runs at the third level above the hardware.

There are a number of virtualization technologies available – such as VMware and Virtual PC. The Open Source offerings include User Mode Linux, QEMU, and the latest offering on the block is XEN. This is a hot topic in the Linux world at the moment, with XEN, in particular, receiving a lot of press and support. There's even the possibility that it may be bundled with upcoming distributions of Linux. This can only be a good thing for Web developers, as the more widespread the use of virtualization and VPS is in Web hosting, the more freedom it will provide at a lower cost.

Xen is a free hypervisor for IA-32, x86-64, IA-64 and PowerPC 970 architectures. The system is structured with the hypervisor as the lowest and most privileged layer. Above this layer are one or more guest operating systems, which the hypervisor schedules across the physical CPUs.

The first guest operating system, called "domain 0" (dom0), is booted automatically when the hypervisor boots and given special management privileges and direct access to the physical hardware. The system administrator logs into dom0 in order to start any further guest operating systems, called "domain U" (domU).
Modified versions of Linux, NetBSD and Solaris can be used as the dom0. Several modified Unix-like operating systems may be employed as guest operating systems (domU). Xen may also be used on personal computers that run Linux but also have Windows installed. Traditionally, such systems are used in a dual boot setup, but with Xen it is possible to start Windows "in a window" from within Linux, effectively running applications from both systems at the same time.
Xen operates through a system of virtualization which is known to computer buffs as “paravirtualization”. Through paravirtualization, Xen can achieve high performance even on its host architecture (x86) which is notoriously uncooperative with traditional virtualization techniques.


vps-handbook-chapter2_1


Only some time back Intel played a part in modifying Xen to support their VT-x (formerly Vanderpool) architecture extensions. Similarly AMD has also contributed support for their AMD-V extensions. These technologies, while differing quite substantially in their implementation and instruction sets, are managed by a common abstraction layer in Xen and enable unmodified guest operating systems to run within Xen virtual machines, starting with Xen 3.0.
This implies a significant development because it allows proprietary operating systems (such as Microsoft Windows) to be virtualized since the guest system's kernel does not require modification when the host runs on VT-x or AMD-V hardware.

Xen Management Consoles
To make the task of administering a Xen host easier, a number of third-party tools (known as Xen Management Consoles) have been developed. These tools make the tasks of configuring, starting, monitoring and stopping of Xen guests more manageable. Some of the more popular among such tools are the Python-based Enomalism dashboard (LGPL), Xen Tools, Google's Ganeti, the Perl-based MLN, the web-based HyperVM, and the GUI applications ConVirt (formerly XenMan) and Red Hat's Virtual Machine Manager, virt-manager.


vps-handbook-chapter2_2
Enomalism – Console 1


Xen – when it suits you best
Since Xen employs paravirtualization, an administrator can modify the kernel modules and utilize swap space to meet memory allocation demands. The virtual private server’s boot process can also be observed as Linux loads onto virtual devices.
It also allows the option of choosing from five popular Linux Operating Systems
It is a very appropriate option if you plan to use your VPS hosting to complete one-off tasks which have a high memory overhead like Java development, compiling applications, and encoding video. But if you plan to rely heavily on swap space instead of acquiring enough RAM for day-to-day operations - although Xen might appear to be a cost-saver at first glance, the declining performance associated with constant swap space usage will make an overloaded Xen server not an attractive proposition.

Another open source version of virtualization software is SWsoft's OpenVZ. It offers compartmentalized file systems, full root access, and reliable performance to virtual private server administrators. If you are transitioning from shared hosting or you intend to run a LAMP or RoR production site, it is very likely that OpenVZ VPS hosting is the right choice for you.

Though it uses fewer resources in comparison to Xen, it has a hard memory limit with no swap space and also supports only a limited number of netfilter (iptables) modifications. But the speed and consistency it provides possibly more than compensates the interface limitations.
The commercial sibling of OpenVZ is Virtuozzo. It replaces the hardware abstraction layer with a modified version enabling it to run with better performance of the OS, but forces all the VMs on a hardware box to run the same OS, with some flexibility to support various Linux distributions on the same server. Currently they have a version for Windows 2003 and for Linux.

 

vps-handbook-chapter2_3

Virtuozzo Architecture



Numerous VPSs can be created on a single server through “fair sharing technology” of Virtuozzo and each VPS performs and executes exactly like a stand-alone server for its users and can be rebooted independently and has its own root access, users, IP addresses, memory, processes, files, applications, system libraries and configuration files. Light overhead and efficient design of Virtuozzo makes it the right virtualization choice for production servers with live applications and real-life data.

VMware, recently acquired by EMC, was founded in 1998. Its first product was VMware Workstation (1999). The GSX Server and ESX Server products were introduced in 2001.
ESX Server can run multiple virtual CPUs per physical CPU. Multiple physical network interface cards can be logically grouped into a single, high-capacity, virtual network device. Thus the initial higher cost for more memory and disk space will easily be made up for by the number of server a host can present on top of one physical server. Less hardware to maintain, less support contracts to pay for, less heat in the data center, and less electricity used obviously make it a very attractive option for the VPS hosts.
However all is not hunky dory – VPSs have their downsides too. Though these downsides are not too many in number and neither are they all that forbidding, still it’d be better to have a quick glance at the disadvantages of hosting a website on a VPS.

  • Total control of the server also makes the administrator responsible for all installation, maintenance, security and updates. If the administrator is not very adept at managing a server, and is not willing to learn with time, this may eventually become a big problem. However, an experienced webmaster is usually not all that uptight and always tries to remain at the cutting edge of emerging technology.
  • While a VPS hosting plan gives the freedom of an entire operating system to work with, the hardware resources (CPU, RAM, etc.) are still shared with other VPSs on the same host server. Therefore, if performance is the key, or RAM-intensive programs are being run on most of the VPSs, co-location might actually be a better alternative.

The providers of virtualization software have also been thinking about the bottleneck RAM might create in a VPS environment. So they had been thinking on creating a setup where several physical servers can be combined into a farm-style environment also known as “clustering”. This idea received a tremendous boost with the introduction of the concept of “live” migration.
Xen virtual machines can be "live migrated" between physical hosts across a LAN without loss of availability. During this procedure, the memory of the virtual machine is iteratively copied to the destination without stopping its execution. Stoppage of around 60–300 ms is required to perform final synchronization before the virtual machine begins executing at its final destination, providing an illusion of seamless migration. Similar technology is used to suspend running virtual machines to disk and switch to another virtual machine, and resume the first virtual machine at a later date.

VMware has also introduced its offering Vmotion Technology and it's creating waves in the VPS space. With the help of this technology an administrator is capable of migrating a virtual server from one physical host server to another physical host server. This process takes somewhere between 30 seconds and 1.5 minutes on average. However, there is no interruption in availability of the virtual machine at that time. The end-user using the virtual server does not notice that the machine is moving to a different physical host. If you would do a persistent ping against the virtual server you might see a few pings with higher ping times, but that is pretty much it.

 

vps-handbook-chapter2_4
VMware Vmotion


But there are certain infrastructural requirements for Vmotion technology to work.
The sending and the receiving server must be connected to the same shared storage and same network connections. To make the matter a little more lucid let us take a concrete example.
The source ESX host is connected to the 192.168.10.x network and the 10.10.5.x network. The VM that is going to be “vmotioned” is using the 10.10.5.x network. The receiving physical host must therefore have a connection to the 10.10.5.x network else the VM would lose network connectivity instantly if moved over. However, Vmotion verification process would discover a mismatch upfront and prevent an administrator from moving the machine accordingly.

 

vps-handbook-chapter2_5
VMware High Availability


Another extremely important requirement relates to CPU. At present Vmotion is not possible between different CPU families. If host A uses Intel processors while Host B is using AMD CPUs, it is a mismatch and Vmotion would not be possible. Thus a farm-style environment should have equal, or at least, compatible hardware. Dell and HP servers can be mixed as long as the CPUs are in the same core family. It does not matter if Host A has only 16 GB RAM while Host B has 32 GB of RAM.
This is not all. ESX Server hosts need to use a single Virtual Machine File System (VMFS) volume, too. Also, Vmotion requires a Gigabit Ethernet network between virtual machines. This network is usually a dedicated management Vlan that all VMware hosts have access to.

By taking advantage of unique OS virtualization, dragging and dropping a live site or hundreds of running applications to another physical server to allow planned system maintenance or hardware upgrades is possible with only a few seconds of downtime. This obviously dramatically increases availability.

Who would not like to avail of this path breaking technology? But like all good things it also comes at a price. It is for you to do a cost-benefit analysis and conclude whether you’d really like to be a part of it.


back to index

 

 

Chapter 2.4 - choosing the right Virtual Private Server Hosting provider

VPSs are great for anyone who creates; tests and deploys Internet applications, for individuals or businesses who've outgrown shared hosting solutions, or for anyone who simply needs a server connected to the Internet "right-now".

That brings us to the vital issue of choosing a VPS hosting company.
The first step would be to know the hardware details like the RAM, CPU and Network throughput of the host server.
The second step would be to know how resource contention is handled. In simple terms, ask your host to spell out in no uncertain terms what steps would the company take if all the other VPSs on the host server are running CPU/RAM-intensive processes? Would you be provided a dedicated minimum amount of RAM/CPU/Network usage? If so, how much it would be.
The third step would be to become aware of the virtualization technology adopted by the host. What is the underlying OS? Is it Linux, FreeBSD, or, Windows? If it is Linux, what distros are offered? Are they using User Mode Linux, QEMU, or XEN? Why did they choose that specific technology?
The last step, but perhaps the most important one, would be to enquire how hardware upgrades are handled. Suppose you start out with a basic plan that offers 64MB dedicated RAM and 2GB disk space. Six months from now, you realize you need more RAM and more disk space. What are the additional costs and what is the procedure for allocating the additional resources?
Then there are certain questions you must always ask when you are choosing a web host of any sort.

  • What kind of support is offered (phone, email, IM, IRC - 24/7)?
  • How long has the company been in business?
  • What is the company's client retention rate?
  • How much downtime have they experienced in the last 12/24 months? The claims must be backed up authentic documentation.
  • What backup/redundancy measures do they have in place?

However, don’t forget to apply the sure shot formula before you sign on the dotted line. Ask your friends, neighbors and those with whom you interact regularly about their web hosts and the services they offer. Oftentimes this makes your search shorter and choice easier.
The prices range from as low as $20 a month to more than $125 per month. But be careful, price is not always an indication of more features or better service.
If you're still wondering whether a VPS hosting plan is right for you, it may be worth starting at the lower end (potentially a 64MB RAM with 2GB disk space VPS). You can always expand from there – just be sure to choose a hosting company that can accommodate the expansion you have in mind.

If you need assistance choosing the right VPS Hosting Provider have a look at our top vps hosting list - here you can find the right vps hosting provider for your needs


back to index
 

 

 

<- CHAPTER 1 | CHAPTER 3 ->