As modern, containerized applications continue to prove popular with organizations, it was only a matter of time before the major vendors started to offer container infrastructure and management “as-a-service.”
Use of containers is firmly on the rise with enterprises globally, with 65 percent of organizations stating they use , and 58 percent using the in some manner, according to .
Lack of resources and expertise are frequently cited as chief challenges in using containers to build and maintain applications. So it should come as no surprise that developers are increasingly turning to the automation provided by containers-as-a-service (CaaS) offerings, with the three major cloud providers leading the way.
Containers-as-a-service, or CaaS, defined
With CaaS, cloud vendors essentially provide a hosted container orchestration engine — typically based on the super-popular Kubernetes open source project, which originated at Google — to deploy and run containers, manage clusters, automate scaling and failure management, and maintain the common infrastructure layer, with governance and security included.
Generally, all networking, load balancing, monitoring, logging, authentication, security, autoscaling, and () functions are taken care of by the CaaS platform.
CaaS allows organizations to leverage the benefits of cloud infrastructure, while at the same time helping to avoid any vendor lock-in that would come with your typical () — like AWS Elastic Beanstalk, Azure App Service, or Google App Engine — as the containers themselves allow for simple portability across various environments.
, published by O’Reilly.
: The primary benefits are speed of deployment and ease of use, as well as the simplicity of the pay-as-you-go cloud model and the aforementioned freedom from vendor lock-in.
By leaving your container infrastructure to a cloud vendor, you can get up and running without investing in your own hardware and without building and running your own Kubernetes clusters (or other container orchestration system). Additionally, by containerizing applications, you can more easily migrate applications into different environments or vendor ecosystems, giving greater flexibility and scaleability options.
All of this also has those all-important opportunities for cost efficiencies, as containers are better equipped to scale horizontally as demand dictates, allowing organizations to pay only for the cloud resources they use. Containers are far more lightweight than VMs, meaning they are less resource intensive, often leading to gains in speed and reduction of costs.
Another benefit comes with consistency of instrumentation and logging, as isolating individual services in containers can allow for more effective log aggregation and centralized monitoring through the .
Leading CaaS options
Most of the major cloud providers have CaaS offerings, and there are several other providers looking to get in on the action.
Cloud services market leader Amazon Web Services (AWS) has seen strong adoption of its Kubernetes-less Elastic Container Service (ECS) and Elastic Kubernetes Service (EKS). Similarly Azure Kubernetes Service adoption is up significantly according to Flexera’s analysis, as is Google Kubernetes Engine (GKE).
All three cloud giants also now offer serverless Kubernetes services, with AWS ECS on Fargate, Google Cloud Run on GKE, and Azure Container Instances. Unlike EKS, AKS, and GKE, these services take away the need to perform server management tasks and are ideal for on-demand consumption use cases.
Much of Google Cloud’s container management capabilities now sit under the umbrella, which enables management of container-based applications across on-premises infrastructure and the major public clouds (Google Cloud Platform and AWS now, with Azure support on the way). Anthos combines GKE for cloud workloads, GKE On-Prem, and the Anthos Config Management console, which allows for centralized administration, policies, and security across hybrid and multicloud Kubernetes deployments.
Aside from the “big three” cloud vendors, vendors including IBM/Red Hat, VMware, SUSE/Rancher, Canonical, D2iQ (formerly Mesosphere), Rackspace, Oracle, HPE, Alibaba, Huawei, and Tencent all have some flavor of a managed CaaS option. A number of these offerings can be deployed on-prem, in public clouds, or both.
Which CaaS is the best?
Industry analyst house Gartner doesn’t have a magic quadrant for CaaS providers, but in its latest report by Wataru Katsurashima, it identifies Google’s GKE as the leading managed Kubernetes option.
Analysts at Forrester put AWS in the leading spot of its most recent , in Q3 2019, with Microsoft and Google just behind. It should be noted that the Forrester report only accounted for seven vendors and is strictly focused on public cloud deployments, though.
AWS “leads the pack with deployment options, security, and deep integrations,” according to the Forrester authors, Dave Bartoletti and Charlie Dai. “With a broad range of fully managed (and serverless) Kubernetes (K8s) consumption options, and the most containers deployed directly to its cloud infrastructure, AWS continues to innovate and deeply integrate its container platform with its leading security and networking features.”
The Forrester report urged both Microsoft and Google to simplify their container platforms. Microsoft was lauded for its stronger developer experience and global reach, but knocked for its complexity — which was a common refrain in the report. Google won plaudits for its deep Kubernetes expertise and its efforts to traverse multicloud environments, but was similarly criticized for complexity.
That being said, AWS EKS remains the most commonly used container management platform, according to the , with GKE, Docker EE/CE, and AKS trailing just behind.
pegs enterprise usage of AWS EKS/ECS at 55 percent, with another 23 percent of enterprise respondents planning to use these CaaS options in the future. Azure Kubernetes Service adoption reached 50 percent, with another 26 percent planning to use AKS in the future. And Google Kubernetes Engine reached 26 percent, with 27 percent of enterprise respondents planning to use GKS. However, self-managed Kubernetes still outstrips all CaaS options at 63 percent of enterprise respondents, according to the Flexera report.
The primary sources of information about CaaS are the vendors themselves, making it difficult to make an informed, unbiased choice. As detailed above, both Forrester and Gartner have taken deep dives into the landscape, but their lens is typically on which vendors stand out, rather than how to get up to speed with CaaS in production.
There also aren’t many books on the topic yet, but the gives a good overview.
Finally, Docker has been at the center of containers and container management for years, and the company has some good video content on the topic, including , and , vice president for Europe, Middle East and Africa.
Copyright © 2020 IDG Communications, Inc.