Containers, Virtual Machines, Microservices and Serverless explained

26 May 2021
5 minute read
Best practice

Containers, Virtual Machines, Microservices and Serverless explained

26 May 2021
5 minute read

Whiteboard Wednesday Episode 16: Virtual Machines vs Containers

Whiteboard Wednesday is me, a whiteboard and learning about all things IT Asset Management (ITAM), every Wednesday!

This week, Virtual Machines, Containers, Microservices and Serverless computing. What are these technical terms and why do they matter to IT Asset Managers?

Please like, follow, subscribe to Whiteboard Wednesday updates, reach out on social media and say hello, and let me know what else you want explained on the whiteboard, and we’ll get it done!

Containers, virtual machines, what’s the difference?

In a previous video, we spoke about virtualization, we spoke about the fact that you could have an app called payroll, and an app called accounting. And we can, rather than having them on separate two different pieces of hardware, we could put that in a virtual machine, put that in a virtual machine, have a virtualization layer, and have the one piece of hardware underneath that’s virtualization.

With containers, you still have the hardware, you have an operating system, you then have the Container Engine, and then the container sits on top. And again, we can still have payroll, or accounting, or any number of other bits of code that we might want to run.

The main difference between a virtual machine and a container is a container doesn’t have an operating system. So, in this instance, in the virtual machines, the payroll has an operating system, and so does the accounting system. So, this might be Microsoft, that might be Linux, they run as completely independent machines. Whereas in the container environment, we’ve got our operating system and our virtualization layer. And these containers don’t have an operating system.

Why use containers?

The benefit of containers is that you can just spin them up when you need them, because you haven’t got to wait for the operating system to boot. And we all know how long that takes. If you’ve ever restarted up a machine or restarted your phone, it’s not the quickest process. But a container can spin up as you need that piece of code with as you need the application. And then it can shut down just as quickly. So, it’s a lot more versatile and dynamic than virtual machines.

Microservices at Uber

Let’s take an example. Let’s say we were Uber. And we’ve got our ride sharing app. And you could say that the process of clicking the button to call a ride to hail a ride is a what we call a micro service. It’s a sort of contained service within the app. And we could run that in a container. So, the benefit to Uber is rather than building this entire infrastructure, waiting for people to hail cabs and waiting there all the time for them, they can just spin up these containers to run that process when it’s needed. It makes it very versatile, very flexible.

The use of containers and microservices has given way to another term called serverless computing. That’s whereby rather than going to my cloud provider like Amazon or Microsoft to buy servers to run my ride sharing app on, I can just go to the cloud provider and say I need to run this container, this piece of code. And I want to be able to run it on demand. And I want x million in the next year and you’re going to run it for me. So, I’m not buying a server, I’m buying the ability to run that code when I need it and expand it as much as I need very, very versatile and dynamic way of running computing.

Why IT Asset Managers need to know about containers

Why does all this matter to it asset managers? Well, in this instance, we spoke on the previous video, we spoke about the fact that this is hardware. And these are two virtual machines. So that is three assets.

In a container environment, you’ve got the piece of hardware underneath. In this instance, we’ve got two containers, again, that is three assets. The challenge with containers is that might only be open for a second, and then immediately shut down again. We need to be able to track what’s in that container, what’s the risk or the licensing risk or the asset risk within this environment. Luckily, the container environment leaves an audit trail or an exhaust about what’s happened so we can diagnose what’s going on. We also need to work with our cloud colleagues to see how this is configured to make sure we’re not putting any risk on the business.

Can’t find what you’re looking for?