Solaris Virtualization Epiphany

I was giving my standard pitch covering Sun Virtualisation Technologies which essentially entails me talking at length about the following slide. I kind of make the point that it is a means not an end, and that really what you're trying to do is run more applications on the same piece of hardware, and the trick is to try and do it most efficiently.


I've done this talk countless times with a pretty wide variety of customers, and I tend to start talking from the right, and move to the left, explaining how the "layer of additional non app resource utilisation" grows from right to left. (not true for Dynamic System Domains on the far left though.)

It finally occurred to me yesterday that the Unix and Windows world have an utterly different view of Virtualisation, and the need for Virtual Machines.

In the Unix world, application co-existence is second nature to most sys-admins. Virtualisation is all about application isolation. i.e. You START with all the apps on a single O/S instance, and you apply more and more constraints: resource management --> containers/zones --> virtual machines --> dynamic system domains.

In the Windows world, application co-existence is so rare that it isn't even considered. Virtualisation is all about application consolidation. (and the primary way to do it is to create lots of virtual machines, one per app).

The problem is simply viewed from completely different angles.

It's not just an application co-existence issue either. There's a scalability problem. A lot of "other" O/S's can't scale to fit the larger more powerful Intel/AMD multi-core servers available today, and the ONLY way to make use of them is to carve them up into smaller machines that Windows or Linux can digest. Solaris, on the other hand can scale up to hundreds of CPUs, and hundreds of Gigabytes of memory.

From the slide above, Sun/Solaris provides a wide choice of technologies to allow multiple applications to be consolidated onto a single server. Don't let the limitations of "other" O/S's blinker you into thinking that a Virtual Machine is the only answer. 

(I'm not saying that Virtual Machines is the WRONG answer btw, it's ONE of the answers, but it shouldn't be the only one that is considered.)

tags:

Comments:

Correct Mike. The view from Windows/linux side also pre-suppose some limitation in the virtualization they use today which doesn't exit with Solaris and vis versa. And sometime people using a technology from one sector tend to try to apply the same behavior in the other world. Which is not always the best fit for purpose. In a recent event where I was involved, several customers testify of their adoption of Solaris virtualization in production : one had already deployed around 700, the other 800. The nice thing is that they can put any application of any size, one having a Solaris "VM" (zone/container) of more than 40 cores to run a big Oracle instance... But again, from a Windows/Linux perspective that not the type of instance size that you see the most, but to balance that statement, I just participate in a migration project from Oracle on Windows to Oracle on Solaris x64 just for that requirement : ability to virtualize with no limitation on the capability to benefit from the system underneath.

Posted by Eric Bezille on May 16, 2009 at 04:51 AM BST #

Many customer IT Team choose multi-OS virtual machines because they don't have any influence on end-user choices. They can't manage information services but just SLA of servers. Perhaps, when cloud computing ll be adopted by end users, they understand that for us application solution is more important that hardware solution and that IT manager are more usefull to manage technologies.

Posted by Pascal Guy on May 17, 2009 at 02:59 AM BST #

Virtual Machine type virtualisation has the benefit of being a one-size fits all approach. There is a large amount of simplification that you get from this, and these benefits outweigh the "compute overhead" in highly heterogeneous environments. In practice, people tend to NOT mix as much as they think they will. I agree, cloud will start people asking for an application level of performance which makes the choice of underlying O/S a decision that the IT team can begin to make again. I'd like to believe that Solaris will be the obvious choice.

Posted by Mike Ramchand on May 18, 2009 at 02:46 AM BST #

Mike,

yes, you're right, I agree. But, there are some other aspects, which I like to highlight:

1.) In the Linux/Windows world, no-one is differentiating between Type-1 and Type-2 hypervisor. That's why I wrote: http://blogs.sun.com/pfuetz/entry/kvm_vs_xen

2.) In Windows VDI, they do have an idea of consolidation onto one single box WITHOUT a type-1 hypervisor. Windows Terminal Server, or the old Citrix approach did provide some consolidation features, without the force to run a complete OS for the stack. In these environments "shareing" of the OS, as Solaris does with Containers/Zones or simply SRM has been used also.

So, it's important to know, whom you are talking to. Server-workloads: type-1 hypervisor
Desktop-workloads: No hypervisor, or "don't care about the hypervisor". That's for example the reason, why http://www.projectvrc.com/ is needed in these environments, and why they do compare ALL types of hypervisors in order to get the best "price/performance" ratio...

Matthias

Posted by Matthias Pfützner on May 18, 2009 at 04:00 AM BST #

Several good points that show that there are multiple reasons to virtualize and multiple ways to do it, yet it's not always the right answer for solving the actual problem.

Virtual machines are necessary when different applications on the same physical machine require different operating systems or kernel levels, or have different OS maintenance windows. However, virtualization is often used for another purpose: to work around deficiencies in the OS hosting the applications. If that OS has weak security or resource management so you can't safely combine workloads or different users, or scales poorly under load so you can't drive a larger machine, you can run multiple guest virtual machines with the same OS. This adds overhead, complexity, and license cost for hypervisors, but it's a patch for running operating systems that (for example) don't let you manage CPU resources or that kill off a randomly-selected process when you run out of memory. :-)

There's historical precedent on the mainframe: IBM's VSE operating system had poor scaling capabilities, so it was (and remains) common to run it under VM, while its bigger brother MVS scaled higher and typically was run native. So, the same thing happens now in the distributed world with operating systems that are missing some important capabilities.

With Solaris, you don't need to create a separate large-footprint virtual machine for each application, because Solaris' resource manager and light-weight Solaris Containers isolate applications at zero cost and zero overhead. That's real value for reducing complexity and cost, compared to other operating systems.

Posted by Jeff Savit on May 18, 2009 at 02:34 PM BST #

Valuable and very correct discussion. Apart from the mentioned limitations and technical possibilities virtual machine shape, they also bring in a lot of challenges. The overhead and complexity causes cost, but customers perspective is it is cheaper to run a virtualized environment. What to think about "the new virtualized lock-in". To me hypervisors seem to develop into the next generation OS lock-in. :-(

To elaborate a bit on this, ever tried to do heterogeneous consolidation:

Take Redhat Server / Suse Server license on baremetal : you are allowed to run as many RH / Suse VM's as you want for free IF, AND ONLY IF, the VM is the same as the server. If not you have to add a license per VM (very costly). The same applies for Vmware, no clue yet if HyperV will behave to same, but I doubt it will be different.

As systems are becoming more and more powerful the chances of running into this "challenge" grow. I would love to have the freedom to run, of course on a scalable stable environment, multiple applications in the OS they demand. Yet again building separate stove pipes, or lets call this different virtualised isles, makes me feel a bit embarrassed. We are capable doing better, so we should.

Posted by Martien Ouwens on May 19, 2009 at 04:49 AM BST #

Post a Comment:
Comments are closed for this entry.
About

mramcha

Search

Archives
« August 2015
MonTueWedThuFriSatSun
     
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
      
Today