Why use Docker on Azure?

4

This year I saw that Azure provided a container service called "Azure Container Service". This service, among other things, allows you to use Docker on Azure.

It turns out that Docker is a container system. From what I've understood about it so far, its main advantage is that it does not need virtualization. It allows you to achieve isolation without requiring virtualization and without requiring an entire operating system. In fact it just needs user space, because the Kernel it uses the same as the Host.

On the other hand, Azure is based on virtual machines. Everything running on Azure is running on a virtual machine. In that sense, if we use Docker in Azure, we will be using a container inside a virtual machine.

But again, why would anyone do this if the container exists just to avoid the virtual machines? What are the advantages and reasons for using Docker in Azure?

    
asked by anonymous 13.07.2016 / 20:50

2 answers

2

I will try to answer all doubts. If something is not clear, just comment that I complement the answer, combined?

Azure is a cloud provider. In it we find two types of services that we can consume:

  • IaaS - Infrastruture as a Service: Where, yes, it is a fully manageable environment for infrastructure virtualization, ie virtual machines, networks, storage, etc.

  • PaaS - Platform as a Service: Where we can consume ready-made platforms. In this case there is no virtualization - at least not directly. In this case we consume ready-to-use features such as databases, search systems, and especially hosting applications.

Azure Container Service is a PaaS. When you allocate this type of service, you do not have a VM at your disposal to be configured / customized. It is already ready and configured just for your consumption.

So when we use, for example, PaaS Azure WebApps, for web application hosting, they are not necessarily uploading a VM to allocate your application. The physical server hosting application is already there, inside the datacenter, you will just host your app on it, and reserve resources - cpu, ram. And it's the same with the Azure Container Service. You ask to provision the service for you, and then it is enough to conserve you, and you are not responsible for maintaining servers.

About the advantages of using Azure Container Service, or any other PaaS in Azure:

  • You are exempt from liability for maintaining the infrastructure;
  • Will only be charged for the features used, nothing else;
  • Already has other relevant services and aggregates such as backup, DR, redundancy, etc.
  • Easy to scale, vertically and horizontally;
  • The service already has numerous resource consumption metrics;

So you can rest easy, because the Azure container service is a platform, just provision and consume.

    
14.07.2016 / 11:04
2

Regardless of the provider, computational density is something you want. It is not optimized, or improved, for security reasons. With thin docker insulation, you can increase computational density by using fewer resources, since you can replace multiple VMs with containers on a single host, or instead of having a super machine, distribute elastically between smaller machines,

    
16.01.2018 / 06:17