Image Title

Search Results for Understanding Container Architecture:

Understanding Container Architecture - Wikibon Whiteboard


 

hello my name is Brian Grace Lee analysts with wiki Bond and on today's wiki bond whiteboards we're gonna begin to understand container architectures containers are really the big technology talked about these days especially for infrastructure teams there's a component of it that's both application and infrastructure but in this whiteboard we're really going to understand the basics of how it applies to the infrastructure and we're going to try and put it in the context of things that most infrastructure teams understand today which is virtualization so let's go ahead and begin what we've done and again this is for context we've tried to take a standard environment that people are used to seeing for virtualization and in this case we're going to use VMware as the example because obviously broadest market share and a lot of people understand what they do so let's talk about the basics of what happens here people understand what happens at the host level I've got servers within each server I've got a hypervisor so in VMware's case ESX or ESXi within that hypervisor I'm going to go ahead and create virtual machines so every single virtual machine has a copy of the full operating system and then within that virtual machine I've got a an operating an application itself for multiple applications so everybody understands that pretty well now how I manage those hype with those hypervisors and virtual machines is through a centralized control plane and that's called V Center and V Center may be a single instance it may be a clustered instance but think of it as the thing that's going to manage the scheduling of the resources and the management of those resources and it's really only focused on virtual machines okay now above that we're going to have if we're deploying applications I can either deploy them by hand or I may begin to deploy them through application templates so I may deploy the same type of application over and over again a web server a sequel database something else do that consistently I'm going to use some sort of typically a templating function and a lot of that can come in the management flame framework from something like V realize VMware via realized and then on top of that I'm going to have my applications whatever those might be sequel databases s AP Oracle Microsoft applications whatever those things might be so the key things I want you to understand is at the host level its hypervisor virtual machine full operating system and application and at the control plane it's this sort of structured format of V Center cluster V Center is going to make sure that virtual machines get deployed on to those hosts and it's going to keep track of where they are and make sure that they stay alive using things like VMware H a VM or V motion and VMware fault tolerance okay so now that we have that basic context in place let's take a look at how the container ecosystem is beginning to evolve and in this example we're gonna use docker because similar to VMware right now docker is the most frequently used container technology there are other ones in the marketplace but we're going to use docker just as an example the rest of what we talked about will be applicable whether it's docker core OS rocket or a number of the other container technologies that are out there so let's begin down at the host level just like we did over here in the simplest form I'm gonna have a host I'm gonna have a server we're not going to have a hypervisor we're just going to have the operating system today in most container environments that operating system is going to be Linux now there's a lot going on in the marketplace where this will eventually be Linux and Windows Microsoft is is working quite a bit on this but for right now let's just say that operating system is Linux ok I'm going to have my container runtime which in this case is his docker and you can think about that as sort of being like a hypervisor but it's almost a lightweight hypervisor and then that container runtime is going to create my containers themselves and each one of those containers now what's unique about this that's different from this environment is each one of those containers only uses they all share the same operating system so again all of your containers within a single host have to run the same operating system either all Linux or eventually would be all Windows they're going to use the bits that they need from that operating system so the net-net of it is it's a lighter-weight footprint I should be able to boot them quicker and the reason people get very very fixated on I can boot a container fast is because in this container environment the types of applications that I'm building tend to be more what they call ephemeral pieces of them are going to go away they're going to come back I'm gonna want to spin them up quickly if I have a scalable application spin them up or spin them down and so what you're looking for is a operating environment that will come up very very quickly so just to put that in context to spin up a virtual machine it may take three four minutes because of the operating system coming up to spin up a container usually is on the order of a second or a couple of seconds so big you know order of difference between there now the second piece that's really important and this is where a lot of people kind of get confused about what's going on in the container ecosystem is what happens at that control plane and the first thing to understand is when we talked about you know virtualized applications we tend to talk about very stateful sometimes they're called platform two sometimes they're called legacy applications but they're more or less stateful so the expectation is once you deploy them other than maybe Vee motioning them around for availability you're not scaling them up and down you don't expect them to fail frequently and so the scalability needed at the control plane is fairly well-defined maybe it's a thousand hosts or 10,000 hosts when we start dealing with containers the types of applications we deploy tend to be more what they call 12 factor applications sometimes you hear them call modular applications cloud native applications the idea being they're much more modular they tend to be more state less so the idea of maintaining state tends to get pushed somewhere else but they're designed for scale they're designed for mobile applications for real-time data applications and so the control plane unlike here which tends to be somewhat stateful and more confined in terms of scale has to be designed to be a distributed control plane it has to be designed to scale much much larger and so as part of that what we see is we're seeing technologies come out that sort of break up the things that were functions inside of a vCenter control plane into sort of distinct technologies that number one tend to scale more because they're written in distributed manner and number two they've got a certain amount of sort of mix-and-match that you can have with them depending on what your applications gonna do so let's talk through the basic things that are in here the first layer that you'll often hear about is clustering how do I cluster together sets of container hosts an example of this is docker swarm technology another example of this is something like Etsy D from core OS it's a technology to sort of figure out where my clusters of hosts are going to be the next layer is what's called service discovery if I'm deploying hundreds and hundreds or thousands of devices I want to you know containers I want to be able to figure out what services are available queuing services database services you know notification services the things that are out there I need to do that dynamically and automatically the next piece is going to be scheduling those containers just like vCenter is going to put it on the right host to make sure that it's load balanced properly there's a scheduling function to make sure that containers get deployed to the right container and then the next piece is what they call application scheduling so in these environments I don't tend to schedule my applications in these environments they could be a mix of batch applications Hadoop applications long running applications short running applications I need a more advanced intelligent scheduler to make sure that I'm getting the containers and the applications deployed on the right place and as efficient as possible and then on top of that I have my actual applications so the takeaway from this is at the host level some difference between how heavy a virtualized environment is going to be versus a container environment and that you want that to match how your application requirements are and if the control plane a more structured model for doing the functions that you need to manage the environment in a container model a more distributed model so with that I'm gonna go ahead and wrap that up we're going to get into some more depth in other videos we hope you enjoy these once again this has been a wiki bound whiteboard video you can find more information about all of our research and all the information about these technologies at wiki bond com and again if you want to follow me again my name is brian grace lee i'm at be grace lee on twitter or you can follow at wiki bon on twitter as well thank you and have a great day

Published Date : Sep 15 2015

**Summary and Sentiment Analysis are not been shown because of improper transcript**

ENTITIES

EntityCategoryConfidence
10,000 hostsQUANTITY

0.99+

ESXiTITLE

0.99+

Brian Grace LeePERSON

0.99+

second pieceQUANTITY

0.99+

MicrosoftORGANIZATION

0.99+

ESXTITLE

0.99+

LinuxTITLE

0.99+

brian grace leePERSON

0.99+

first layerQUANTITY

0.99+

WindowsTITLE

0.98+

OracleORGANIZATION

0.98+

first thingQUANTITY

0.97+

VMwareTITLE

0.97+

twitterORGANIZATION

0.97+

todayDATE

0.96+

each serverQUANTITY

0.95+

hundreds andQUANTITY

0.95+

12 factorQUANTITY

0.95+

a thousand hostsQUANTITY

0.95+

single instanceQUANTITY

0.93+

wiki bond comORGANIZATION

0.93+

three four minutesQUANTITY

0.93+

a couple of secondsQUANTITY

0.92+

Understanding Container ArchitectureTITLE

0.91+

each oneQUANTITY

0.91+

single hostQUANTITY

0.91+

thousands of devicesQUANTITY

0.91+

a lot of peopleQUANTITY

0.89+

a lot of peopleQUANTITY

0.86+

a secondQUANTITY

0.83+

wiki bondTITLE

0.8+

vCenterTITLE

0.8+

twoQUANTITY

0.78+

both applicationQUANTITY

0.76+

wiki BondTITLE

0.76+

hundredsQUANTITY

0.75+

dockerTITLE

0.73+

Etsy DTITLE

0.72+

number oneQUANTITY

0.7+

VTITLE

0.67+

grace leePERSON

0.67+

every single virtualQUANTITY

0.65+

each oneQUANTITY

0.64+

wiki bonORGANIZATION

0.61+

V CenterTITLE

0.57+

platform twoQUANTITY

0.52+

WikibonORGANIZATION

0.51+

CenterCOMMERCIAL_ITEM

0.48+