Evolution of the Infrastructure Technology Stack

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
hello and welcome to cloud tech talks this is pritish i'm back with another video in this video i'm going to talk about the evolution of technology specifically how infrastructure technology has evolved so i'll talk about hardware uh i'll talk about how we went from hardware to virtual machines to containers to serverless and where we are in that entire journey so stay tuned for this one okay guys so let's get started with this video uh i've done a little bit of illustration uh in order to explain this evolution better uh and i have a few things on uh on the whiteboard here um let's get started with the basics first uh you know what kind of technology have we been dealing with uh as a legacy right so uh if you look at this side um we'll come to this part later so this uh this specific side uh this is the evolution of technology and what do i mean by that in the very early days we we started with something uh like this which is essentially a piece of hardware uh hardware which is tied to a physical infrastructure which you need to control with your own bare hands and you cannot have the flexibility of deploying uh every now and then as in when your requirements come up right so this is uh where everyone started this is where many major enterprises still run today because they believe that it is uh more secure they have it more under control to some extent private clouds are deploy deployed by use of different kinds of hardware so this is where it stems from from hardware uh essentially to to be more flexible we move to something known as um virtual machines so this part here uh is the virtual machines part so what do we do in this case we essentially move from what we used to manage as a physical environment to a virtual environment so leveraging some of the virtualization technology that exists today and back in the day when it started off we we moved this piece the physical piece uh to virtual machines and the reason we did this is is why i want to explain this specific chart to you is uh on the left side is basically as in when we progress towards the the upper side uh it basically means you focus more on the business logic and which essentially means you focus less on the time you spend to implement the technology itself right so remember that on on one side you increase more and more uh the logic uh that you apply for business instead of focusing on what kind of technology you want to control focus more on the business outcome as opposed to when you when you move towards the right you spend less and less time to implement a specific stack of technology more and more things become out of the box uh and readily available in that case right so uh we we spoke about hardware we spoke about virtual machines and then came a dynamic shift in the way uh you know this uh this whole picture of infrastructure technology changed right so we moved to something known as containers uh containers as the word suggests is is essentially coming from shipping containers for instance not literally but to mean in a very specific way that if you have a container which which essentially can wrap all of the things that you need for a specific app to run it can run faster right so don't worry on the detailed part i will i will run a very easy comparison for you on on what it means what the key differences are between virtual machines and containers a bit later on from containers we we moved to something known as serverless now not many companies are using serverless serverless design doesn't really mean that you don't use servers there is always a use of server but the way that it's named is because it doesn't really focus on any part of the infrastructure at all and by by logic it only goes by the command of an action that a specific user needs to take right so remember this much for the time being i will delve on it later on uh when i do a separate video on serverless specifically so as far as we are concerned today most of the enterprises that we work with today they are they're somewhere between virtual machines and containers somewhere here right especially more so now because uh in the last couple of years since kobit has hit a lot of companies have already made this shift from hardware to virtual machines uh in the last couple of years but now they look to make this shift from virtual machines to containers now why does one need to do this like why can't we just stick to virtual machines and continue to operate the way we want to right this is when i'm going to come come on to this side and explain to you why uh the dynamic shift in order for you to understand why you move from virtual machines to containers you need to understand the key differences between the two right so let's start with virtual machines on on this side this is a virtual machine and on the other side we have a container so let's start with the virtual machine first typically a virtual machine architecture or layout would look like this you have the infrastructure here essentially it could be any form of physical infrastructure this this can be hosted by any provider doesn't matter on top of the infrastructure you deploy something known as a host operating system right so it could be windows mac linux anything you essentially have a host operating system which which is installed on top of the infrastructure in order to control the basis of how an infrastructure operates right just like you have a operating system on your system on your on your pc you need a host operating system on the infrastructure as well then on top of the host operating operating system you have something known as a hypervisor uh you can think of the hypervisor as uh as a sort of orchestrator or controller which essentially controls everything that you do in your in your machine so the host operating system is essentially the system on which the the the whole infrastructure is operating but the hypervisor it essentially controls everything that you do in your environment and key examples of hypervisors include hyper-v that's by microsoft uh there are the hypervisors by other large organizations such as vmware uh red hat and and many others right so this is this is the hypervisor layer uh on top of so the underlying infrastructure is is this uh is this but on top of this is where the virtual machine sits right so this part here is the first virtual machine and if you notice there is a i've written it down here as virtual machine one but every virtual machine has its independent application running on it because that's the purpose of the virtual machine to run a specific application it has its individual binaries binaries could be anything that you do have to use a dependencies in form of binaries databases etc um and then you have something known as a operating system for the virtual machine itself right so if you notice there are two two layers of operating system one at a host layer where it's sitting on top of this infrastructure itself and the other one is sitting inside a virtual machine independently just for that virtual machine right so think of it as a bulky install on two levels one here and one here and then you move on to the next virtual machine which essentially has the lit has the same layout as as the first virtual machine and you multiply that by the number of virtual machines you would need to run a specific uh business right so i'll i'll translate this a little bit into examples and you will you will understand it better but this is what a virtual machine architecture would look like now the reason we move from virtual machines to container is is where this explanation is going to make more sense to you so in a container there is always also infrastructure involved this could be again any form of physical infrastructure doesn't matter there is also a host operating system which you see here right that's that's not going to change um but instead of the hypervisor if you see here there is something known as a container daemon right so this container daemon uh is is uh is essentially serving as a hypervisor but in a containerized environment and what it does is it eliminates the need for having multiple operating systems at a container or application layer level right so if you see here there is a host there is a container daemon but on top there is an application deployed and there is a binary but there is no operating system here like it like like it existed over here in a virtual machine right so the moment you uh reduce that dependency of having an independent operating system on a container level an application level over here what this container daemon is doing is basically leveraging all the power of this operating system itself so it's basically fueling the the whole process directly from the host operating system and it's doing it very smartly right so think of it as being able to deploy ready-made applications without any dependencies of operating systems or all the limitations of a virtual machine that it that it had earlier now naturally the advantage is that this is lightweight so it would run into a few megabytes when it when it comes to an install but over here every install every virtual machine would run into a gigabyte uh at least right so that's the real difference between the size of the architecture itself so that explains why someone would not be practically using virtual machines when your infrastructure scales now the next logical question is why would i need to scale and why would i need to scale more efficiently right so the reason you need to do that is think of it as a as a requirement for a bank right so you have a uh you have a digital uh service provided by a bank let's say you use a mobile app from a bank but until uh this very age you never had the need to use this mobile app you simply used to go to the bank use the services of the bank physically inside the bank and your job used to get done that way but now customers are demanding a more digital experience a faster experience and banks are having to change their entire uh you know way of working in order to satisfy customers so if you have an application which essentially uh is going to be used at scale it cannot run on an infrastructure which looks like this technically it can run but it cannot run at scale it it cannot run as efficiently as fast and is as uh as satisfactory as a user uh level right at a user level so that's why the the whole shift of architecture was required and when when people thought of it as an inception you know it it was essentially almost like a redesign of how apps need to look like and how apps need to perform in a in a logical sense that's why we made this move from virtual machines to containers right uh but then even when we made this move to containers today largest of organizations they are all running virtual machines and containers all across the world across different kinds of infrastructure providers it could be cloud providers or own their own private cloud it also still came with the limitations of not being able to scale after one point right so yes you could deploy hundreds and thousands of containers uh in a in a given scenario but even then you have a lot of manual dependency that's where the modern day tools of iac infrastructure as code came into play and people started to automate things right so uh i i will do a specific video on how we are actually uh you know positioning solutions in the iac space how we are making it better for organizations to provision containers on an automated level how you can work on workflows how you can work on many other things and make your environment more efficient so we move from con we move to container essentially most organizations are aiming to move to container environments and now from containers it's come to a point where you eliminate the need for thinking about any sort of infrastructure at all and you move serverless and serverless is essentially a way of defining an action for a specified user in um you know in an it environment so let's take it by an example let's say this example is pertaining to serverless so let's say there is a user and this user wants to visit a website could be www.abc.com right now typically when a user hits this website a request is sent to the to the specific web server which is lying somewhere here and it essentially triggers the request from what the user needs maybe he needs access to a specific portion of the website he needs to log in he needs to perform an action needs to execute a transaction could be anything right so if if this user multiplies and it scales by thousands and hundreds and and many other uh users simultaneously let's let's assume it's a website which has a flash sale and it's it's running uh online promotion naturally the traffic will be higher than anticipated what serverless does is it it completely eliminates the need for this infrastructure and it just goes by the actions of the user uh which which are hitting the the url the specific url so let's say instead of one person here you have 10 000 users visiting the same website at the same time right so naturally what serverless will do is it will say for in order for you to serve 10 000 users at once you will need uh times 100 containers at that given point in time so what it does is in the background it will automatically spin up 100 containers and give these users the best possible experience right so don't think of it as as uh as a point where uh this this infrastructure doesn't exist yes it does exist even in serverless the infrastructure is still there but the logic is what it's working on right so so the the system finds out a way to define what do i need to do in order to serve 10 000 users in one go it it automatically writes this script in the background and fires up 100 containers which essentially serves this 10 000 users in that given instance so that's that's how serverless uh can be explained in a very simple term uh i'll do a very detailed video about what the advantages are and some some down sides to it as well uh in in another video but uh this is what what i wanted to touch on a very high level uh the evolution of technology from hardware to virtual machines to containers to serverless where we are really somewhere in the middle here and the difference between virtual machines and containers at as at a basic architecture level so uh this is what i wanted to talk about today i hope it was explanatory uh and hope it was uh useful for you if you have any comments if you have any feedback please feel free to write it in the comments section and your your feedback is always appreciated always welcome until next time this is prateek signing off from cloud tech talks
Info
Channel: CloudTechTalks
Views: 1,079
Rating: undefined out of 5
Keywords: Containers, Containerization, IaaS, Serverless, AWS, Azure, GCP, IBM Cloud, VMware, RedHat
Id: BERZtSW_-Sk
Channel Id: undefined
Length: 16min 46sec (1006 seconds)
Published: Mon Dec 06 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.