Microsoft Announces General Availability Of The Azure Container Service

Microsoft announces the general availability of the Azure Container Service.
 
Ross Gardler Senior Program Manager, Azure in its official blog states,
 
“I’m excited to announce the general availability of the Azure Container Service; the simplest, most open and flexible way to run your container applications in the cloud.”
 
The Azure Container Services address challenges by providing simplified configurations of proven open source container orchestration technology, optimized to run in the cloud. With just a few clicks you will be able to deploy your container-based applications on a framework designed to help manage the complexity of containers deployed at scale, in production.
 
 
Image Source: azure.microsoft.com
 
Microsoft states,
 
“We built Azure Container Service to be the fastest way to get the benefits of running containerized applications, using your choice of open source technology, tools and skills and with the support of a thriving community and ecosystem.”
 
With Docker image support and Microsoft’s commitment to open source software in the orchestration layer, your application will be completely portable across any cloud and on-premises. Microsoft informs its users that unlike other container services, the Azure Container Service is built on 100% open source software to maximize portability of workloads and offers a choice among popular orchestration engines: DC/OS or Docker Swarm.
 
DC/OS
 
DC/OS is a solution for orchestration of large scale enterprise applications. DC/OS technology is proven at scale in organizations which includes Apple, Twitter, Verizon, and Yelp. Microsoft has worked closely with Mesosphere in order to bring DC/OS to Azure Container Service customers.
 
Image Source: azure.microsoft.com
 
Mesosphere joined forces with Microsoft and more than 50 partners in order to announce the formation of a new open source “Datacenter Operating System” project, or DC/OS, which is combined with the power of Apache Mesos with Mesosphere’s Marathon and many other important container management technologies.
 
Users who choose the DC/OS version of Azure Container Service will gain access to a number of critical features for orchestrating their applications. They are as stated below:
  • High availability: Marathon runs as an active/passive cluster with leader election for maximum uptime
  • Constraints based deployment: Powerful constraints definitions ensure your application is deployed where and how you want it;
  •  Service discovery and load balancing: Flexible support for multiple service discovery approaches
  • Health checks: define health checks for your individual services and monitor them through the web interface, REST API or command line
  • Metrics: Detailed metrics can be pulled from the API in JSON format or pushed to systems such as graphite, statsd or Datadog
  • Event subscription: Register an HTTP endpoint to receive event notifications from your scheduler
  • Application groups and dependencies: Organize containers into “pods” of related components which can be managed as a single unit.
  • Rolling upgrades for zero downtime: Marathon assists users in managing the roll out of upgrades to their applications and services through progressive rollouts, health checks, and rollbacks
  • Simple but powerful UI: The Marathon user interface makes it easy to deploy, manage and scale your containers with a few clicks.
  • Full featured REST API: Integrate into your existing systems using a powerful REST API
Docker Swarm
 
The Docker Swarm version of Azure Container Service uses the Docker stack, and hence any Docker compliant tooling can also be used in order to manage the applications on Azure Container Service.
 
Image Source: azure.microsoft.com
 
Docker Swarm on ACS provides the following capabilities:
  • Full featured CLI: Docker CLI and Docker Compose provide full featured access to your cluster from the command line.
  • REST API: Docker Remote API provides access to third party tools.
  • Widely adopted API: The Docker Remote API is widely adopted, providing access to hundreds of third party tools including monitoring, logging etc.
  • Self-contained application definitions: Docker Compose defines your entire application with all of its dependencies.
  • High performance orchestration at scale: Swarm has been demonstrated to operate efficiently at scale.
  • Discovery Services: through a key/value abstraction layer users can adopt a number of underlying key/value stores for discovery.
  • Constraints based deployment: automated optimization for scheduling containers to specific nodes through labels and available drivers on nodes. 
Microsoft concluded by stating,
 
“With the general availability of the Azure Container Service, containers are ready for prime-time in the cloud, enabling organizations to transform the excitement and hype into concrete business value quickly and with confidence. Thousands of customers are already running containerized applications in Azure, converting the promise of agility and efficiency at cloud scale into business results.”