What The Heck Are Containers?
July 17th, 2007
Virtualization, Fine, Well Sort Of? - Chapter 01
There are a few new buzz words in virtualization! One of the seemingly vague terms, is Containers. The use of the word in context to virtualization is recent, but not the concept in computing, in fact one of the first desktop platforms to use this concept in limited form was Apple Computer, in its Macintosh OS 7.x, where individual applications could be isolated to a logical memory space.
Containers in the virtualization sense describe the partitioning of resources according to partition or even single application use, beyond memory, including DASD, network bandwidth, and even CPU sharing. Containers usually reference a common operating system core completely, or partially, between many containers. This is different than the typical hypervisor model that dominates virtualization now, where the emulation is from the hardware level and above, with every virtual machine has its own operating system instance.
Because containers leverage the existing operating system, common to all application containers to some degree by design, this has the potential to create a leaner virtualization, although a better term would be utilization, framework. Containers tend to reduce the cost of ownership compared to hypervisor virtualization with fewer instances of a given operating system to purchase, deploy and maintain. However, this approach does present an unique problem, the level of risk does increase because the encapsulation of the operating system per virtual instance does not exist. One failed operating system patch now could impact every container directly or indirectly, in the worse case, taking your improved leveraged model to zero utilization. This point is not often extensively discussed in the typical marketing sales pitch for such technology!
Containers like hypervisor based virtualization seek to improve total system utilization, providing the positive and negative aspects containers represent are understood, they have real potential to out perform their replicated hardware and encapsulated operating system based cousins, the true virtual machines. This fact is not lost on hardware and some operating system vendors that are attempting to drive utilization to the highest degree possible, and thus cash in on the virtualization craze.
For additional reading on Containers as micro-partitions. Solaris, per Sun Microsystems, recently retired its term zones for a modern definition of containers. The same logical principle is the foundation for AIX micro-partitions. And not to forget Apple Computer, which has improved its container model of over time, but also developed its own virtualization emulation, running not only Apple Max OS X, but Windows, on Macintosh Intel based hardware.
Entry Filed under: A Proper Virtual World, Virtual System Management
2 Comments Add your own
1. Robert Barnes | July 19th, 2007 at 10:04 pm
I guess that the phrase partitions which existed in the IBM main frame environment is no longer a defining term (not current in UNIX or PC virtualiztion terminology). In the good old days we had the 14xx series and the original 360 series where we had a single partition to execute a single job with all resources dedicated to that single jog. Next came the 360/MFT operating system where we had a limited number of partitions that were assigned a specific memory space and specific resources. Next cam the IBM 360/MVT operating system where we had a variable allocation of memory space and various resources. From that point, the IBM mainframe operating became more complex and various — continually releases for the base 360/370 operating system; TPF system for the airlines; VM system for dunb terminal interaction, etc. I guess that the editor should define the scope of the blog topic Virtualization. Will this blog cover all computer environments that support virtualization or limit it to the PC environmnet. If he chooses the prior scope then he has a very demanding task. If he limits it to the PC environment then he has a more manageable task. Of courrse, he could decide to limit it to the PC Server environment and not the PC desktop environment to further simplify his task.
I wonder if Schorschi could create another page that provides terminology definitions; brief history of virtualization for specific environments, etc. Basically, a base where you assume that the readers know nothing about virtualization.
Of course, I realize that I have just asked Schorschi to do a very extensive amount of wrok. But, I think that it would be benefical to all readers as we would have a common ground for discussion.
2. Schorschi | July 21st, 2007 at 8:53 pm
Well! I figure I should address Bob’s observations and questions! The glove has been tossed? LOL First, yes, I see the point, the more Virtualization matures as a concept on distributed server hardware, it mirrors the IBM leagacy of virtual machines. Notice, do not use the term ‘PC’ that is incorrect for today’s server platforms which are well past the context of mainframes of yesterday, we in effect have servers that are more powerful than mainframes as they once existed. However, memory partitions, CPU resource allocation, etc. have been around a long time in various forms, it was not unitl recently these multiple concepts where done together, with or at a level that truly emulates hardware from the BIOS on up so to speak. So I see a very real difference in the implementation, but no significant difference in the concepts. Yes, I have chosen to define the BLOG in the context of what is generally agreed to as distributed server scope. However, Bob does ask a valid question about scope. I never planned to draw out the differences between mainframe virtual machines and distributed server class virtualization, explicitly, but I think I may reconsider that. As for a lexicon of terms? Yes as the subject matter of the BLOG grows, this will develop as well, but it will leverage the web and sources already on the web, as much as within this BLOG. I do not see a reason to pen a definition if a perfectly good one is already some where else.
Leave a Comment
Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>
Trackback this post | Subscribe to the comments via RSS Feed