Why choose containers over virtual machines?

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello and welcome to cloud tech talks this is pretesh i'm back with another video in this video i'm going to talk about why businesses have started to prefer container based architecture versus virtual machine based architecture and what difference does it really make and if you have not really adopted it as a business this will probably help you to understand why you should start thinking about it so let's get started so before i begin i just wanted to give you a very brief overview of you know why containers you know began as a concept in the first place so back in the day in 2007 or eight uh when the first uh you know linux project project was launched uh with with such a thought process and such an architecture the idea was very simple they wanted to get away from uh the thought of having a bulky virtual machine and having to manage small you know parts of those virtual machines which were essentially time consuming and they were really repetitive in nature as far as task management is concerned so they sort of package the whole thing in uh in a container that's where you know the name comes from and and essentially make it ready for anybody to utilize and when it's not needed just remove it or replace it uh with something else right so that was that was the idea and that's where the uh you know that eventually it led to the evolution and adoption of what we call microservices today right so i'll explain microservices in the video a little bit more in depth but that was just to give you a brief overview of why we're stressing on uh the fact that you need to adopt to container based architecture if you've already not done that so let's start with the parameters so first of all the installation part right so over here uh it is definitely time consuming because um you do a lot of things uh which which you don't really do there which means you you know on the on top of your infrastructure you have your operating system the host operating system and on top of that host operating system you you are deploying a hypervisor to to be able to virtualize whatever you're virtualizing and then in every virtual machine you are independently uh installing a an operating system of its own and then it's running its own app with its own dependencies inside that specific virtual machine so that's why it is time consuming you can't do it at scale it's probably best suited for small businesses small companies where they don't really have a need to scale or have many users internally or externally as well as far as container is concerned is not time consuming at all because it comes with a full package with all of these things pre-installed all you need to do is fire up a container image using the container software that you utilize it could be things like docker or many other software's available in the market and that's why you save time here it's not it's not as time consuming as it used to be with virtual machines the second part is is a very important aspect which is essentially software dependency and with virtual machines it's it's very uh you know very much prevalent because um of the fact that it is going to have dependency on two levels one is that the host operating system level where there are certain softwares which only are compatible with that uh specific host operating system and then on the virtual machine itself the operating system that you use there maybe it's linux and your application only supports windows right so you can't use that uh out of the box you then have to virtualize that machine create a separate windows uh based uh you know virtual machine inside that uh environment and then be able to uh you know sort of reduce that dependency so dependency is always there when it comes to software uh on the virtual machine side but over here it is it is very flexible you don't really have that kind of a dependency uh you know when it comes to if you compare it to how it works in virtual machines uh then there is packaging uh why why we use this term packaging is because to my point earlier how everything is done as as as one full packaged inside uh you know inside a container one full package done inside a container and that's not the case here you you're still managing the whole thing in different services and you're bringing it all together yourself so uh this doesn't really uh you know make sense as far as virtual machines is concerned but it's very much there as far as containers is concerned um then we talk about a process here so this is essentially the software development life cycle where you go from development to staging to production to shipment and across all of these stages uh you might you know hit a few blips you might have to test and you know sort of modify a lot of things and some things might not work so over here this process is not seamless it it will definitely consume a lot of time during this process because uh of the fact that there is this dependency on installation and software and and every other thing which is not packaged very well which is why this is not going to be a seamless process but over here you can do it seamlessly provided you use the right tools you you know you have a know-how of what kind of architecture there is uh of your of your container and you you know adopt the right practices so remember devops is always about uh the the mindset and the culture and and how you collaborate with each other as opposed to just using the technology out of the box right so if you don't adopt the practices uh you know which which are essentially the fundamental practices of devops then even the container environment might be useless for you or maybe it will consume more time as opposed to what it's meant to be uh then comes the isolation part and this is very important because that's essentially why we shifted from virtual machines to containers one of the core reasons why uh this happened in the first place and isolation it's it's nothing but uh having your own space defined inside the infrastructure that you use right so uh think of it as uh having a capacity of uh let's say 100 gigabytes you know when it comes to storage uh specific designated ram specific designated os and when you deploy an application can that just simply be isolated and we designated a specific capacity out of that overall capacity that you hold for your infrastructure right so that is essentially the isolation part over here it's not really it's isolated but it's not really an ideal isolation way but over here it's fully isolated you you don't have to worry about uh you know one uh you know taking space for another or one taking so much load that the other one cannot uh you know function properly so that's that's where the whole inception of isolation became very prevalent as far as containers is concerned and last but not the least most most important part is obviously scalability you you can't really scale at will when it comes to virtual machines you you can if you put a lot of people on the job but that's not really the point why would you want to be in a situation where you have to manage the whole thing with number of resources and waste your time to do all of this when you can simply containerize an app and you know scale and by scale i also mean being able to use the modern day tools which are actually meant for containers right how can you use leverage kubernetes how can you use and leverage uh the modern container platforms uh how can you use infrastructure automation how can you use uh you know many other security softwares which which essentially complement this entire you know stack and story for for containers and virtual machines so uh this sort of completes the the full uh flow of uh and the key differences as to why you should opt for containers versus virtual machines and what's best suitable for for a business i hope this was this was useful and uh you liked it please like and share you know share it with your friends your family and until next time this is pritish signing off from cloud tech talks thank you
Info
Channel: CloudTechTalks
Views: 780
Rating: undefined out of 5
Keywords: DevOps, Containers, Virtual Machines, Containerization, MicroServices, Application Modernization
Id: 7LVzIqHxwio
Channel Id: undefined
Length: 8min 42sec (522 seconds)
Published: Mon Dec 27 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.