Compared to other enterprise infrastructure vendors, Microsoft is in a delicate position to face the challenges posed by container technology. Microsoft already has a vested interest in systems hit by the growth of container applications, including operating systems (Windows Server), Virtual Machine Hypervisors (Hyper-V), private cloud offerings (Azure Stack), and public cloud (Azure).

Container technology is both a challenge and an opportunity for platform companies. Every player offering infrastructure services has reacted differently to the containerization wave, and while VMware was early in the race, Google, Microsoft, and Red Hat have been quick to embrace the new wave of computing. Focusing on container management, Google has opened source the Kubernetes container Choreography engine and offers a hosted version of Kubernetes in its public cloud. Red Hat realized that As a traditional PaaS, OpenShift was not showing strong momentum. So Red Hat made big changes, including branding and the underlying technology stack, to move to Kubernetes.

Microsoft quickly struck a deal with Docker to make it the default interface for Windows containers and worked to ensure that containers were an integral part of the stack, reflecting its new cultural characteristics. Windows container, Hyper-V container, Windows Server 2016 integrated Docker engine, Azure Container Services, Visual Studio Tools for Docker, container-optimized Windows Nano server, and nested virtualization in Azure are all examples of Microsoft’s efforts to make containers first-class citizens.

So far, Microsoft is a strategic move to Brendan Burns in (https://github.com/brendandburns), he is a former Google employees, affiliated with Kubernetes founding team. The hiring caused quite a stir, including the team building Google’s cloud platform, Azure’s main competitor. However, thanks to Brendan’s collaboration with Kubernetes, the open source project has gained tremendous popularity in the community, so it hasn’t raised too many eyebrows. The Kubernetes community, which includes Google employees, would like to see Microsoft officially embrace Kubernetes. Microsoft did not disappoint, and within months of Brendan transitioned to the Azure Compute team, Redmond opened Kubernetes on Azure. This almost broke the monopoly of AWS, which built a proprietary container management platform, the Amazon EC2 container service based on EC2.

Brendan’s major deliverables included the integration of Windows with Kubernetes, which was a huge deal for Microsoft users. With Kubernetes management, users will be able to seamlessly mix and match Linux and Windows workloads. This heterogeneous environment will run a Kubernetes cluster with Linux and Windows nodes. But Windows’ basic network stack makes this integration a lot more difficult, and it should be interesting to work through this challenge. In addition to bringing Kubernetes to Azure, Brendan is also working on Microsoft’s overall containerization strategy.

The newly released Azure Container Instance (ACI) is an important move for Microsoft, and there’s a lot of Brendan in ACI. ACI allows developers to start a “no service container” without caring about the virtual machine and operating system that acts as the host. Developers can start a container in Azure in just two steps. Although container-optimized operating systems such as CoreOS, Atomic Hosts, and Windows Nano Server exist, containers are used as virtual machines until they are run.

With ACI, developers don’t have to worry about the VM or host operating system when running applications. This is the main reason Microsoft has positioned ACI as a “no service container.” You cannot connect to the host over SSH or RDP in ACI. The workflow is simple – pull a container from Registry and run it on demand.

ACI’s pricing model is consistent with the no-service concept. Each configured container instance is charged $0.0025 per month. Memory duration is calculated by the start and end time of the container, and the charge for RAM is $0.0000125/G. From the time the container is created, there is a fee of $0.0000125 per CPU. Each ACI instance can have up to 3.5GB of RAM and 4 cpus. For example, if you start an instance of ACI with 1GB of RAM and 1 CPU for 5 minutes per day, the bill translates to $0.30, which is very affordable.

In many ways, ACI is Microsoft’s answer to AWS Lambda. While Azure Function is a similar alternative to Lambda, Microsoft is pitching it as a quick response to competitors’ unserved offerings. Azure Function is an improvement on Azure WebJobs, a service created for similar but different use cases. ACI is an elegant no-service computing because it allows developers to carry code plus configuration as Docker images. Unlike Lambda, ACI is not limited to a predefined set of languages and runtimes. Carry your own container

The idea of carrying your own container has taken root lately. Google adds hosted virtual machines to its PaaS through the flexible environment of App Engine. Amazon supports single-container and multi-container deployments in AWS Beanstalk. But Azure container instances bring true unserved functionality to native container applications. Developers can encapsulate everything from code to configuration in Docker container images and execute them periodically. This includes running configuration management scripts, backup tasks, automated builds, queue processing, and more.

ACI is not a replacement for mature container choreography platforms such as Docker Swarm, Mesosphere DC/OS, HashiCorp Nomad, and Kubernetes. If you want to run complex microservice applications that require advanced features such as persistence, service discovery, Canary, automatic capacity expansion, self-healing, monitoring, and logging, Azure Container services are the best choice. Think of ACI as an enhanced container-enabled no-service platform. Instead of compressing code and uploading snippets to AWS Lambda or Azure Function, you can take advantage of Docker’s debugging tools and test your code locally before going live.

ACI shows that Microsoft is serious about container technology and that it is innovating faster than its competitors. This technology will be one of the key pillars of the Azure Compute platform. I’m pretty sure ACI will have a place in Azure IoT Edge, Microsoft’s Edge computing platform. It will also eventually serve as a computing layer in Azure Stack.

The original link: https://thenewstack.io/azure-container-instances-proof-microsoft-innovating-containers/

Spring Cloud training camp

This training includes: Microservice Architecture and Overview, Microservice Architecture Project Practical objectives, Spring Boot Overview, Spring Cloud Introduction and Introduction, Eureka, Ribbon, Feign, Hystrix, Zuul, Spring Cloud Config, Spring Cloud Sleuth, click the qr code below to add wechat friends to know the specific training content.

Click on the
Read the originalLink to register.