Alibaba Cloud Container Service vs. Amazon EC2 Container Service vs. Azure Container Service

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: Containers have increasingly become the preferred way to run applications at scale in the cloud. Yet when running applications in production, organizations leave nothing to chance.

CC_002

Containers have increasingly become the preferred way to run applications at scale in the cloud. Yet when running applications in production, organizations leave nothing to chance. They want to build the most reliable and efficient infrastructure possible—And most of all, they want to be able to manage that infrastructure with ease. That’s when many organizations look for a container management tool, or a Container-as-a-Service (CaaS) solution like Alibaba Cloud Container Service.

The Case for CaaS

Four years since it broke on the scene, Docker is still a new technology compared to virtual machines (VMs). Containers require a completely new toolset. Unlike consolidated tools to manage monitoring, security, and configuration management, the Docker toolchain is more fragmented. It consists of many single-purpose tools that are integrated together to provide a holistic service. Many of these tools are open source and are designed to work in an ecosystem rather than on their own. Running and managing Docker on your own is easy at the start, but soon, it’s easy to get overwhelmed with the number of moving parts and components to be integrated and kept up-to-date. When making a transition from the relatively static world of VMs to the dynamic setup of containers, you don’t want to sacrifice ease of use. This is where a CaaS platform comes in. It gives you more control by letting you manage containers from a single pane of glass. Since the CaaS solution is fully managed by the vendor, you can simply use it without worrying about maintenance. The biggest advantage of using a CaaS solution is that it lets you focus on building your app and adding new features, and takes away the infrastructure woes that often stall software development.

When you start the process of choosing the CaaS solution that’s right for you, the options are numerous and can become overwhelming. But when taking a look at how each solution is architected, and the approaches taken towards managing containers, the strengths and weaknesses of each solution become clear. Let’s look at some of the most popular CaaS offerings and see how they compare with Alibaba Cloud Container Service.

AWS EC2 Container Service (ECS)

AWS ECS is a popular CaaS solution. According to a recent survey, it has about 32% adoption among companies that run containers in production. The survey goes on to say that most ECS users are experimenting with multiple solutions. Currently, 46% of ECS users also use Kubernetes, and 35% of them use Swarm alongside ECS. These numbers show how early we are in the evolution of container solutions, and how open users are to trying multiple solutions until they find the one that’s right for them.

ECS runs Docker containers on top of EC2 instances, and installs an ECS agent within every active container instance. The ECS agent handles execution of tasks within the container instance. It uses AWS ECR as its default container registry, but can also use Docker Hub as its registry.

The biggest reason you’d want to choose ECS as your CaaS solution is if the majority of your infrastructure runs in AWS, and you just want to test the waters with containers. However, once you start running production workloads, ECS can get quirky.

The biggest drawback with ECS is that it doesn’t provide native support for Kubernetes. Instead, ECS leverages third-party distributions from Kops, or CoreOS Tectonic. While this works, it sacrifices developer productivity by adding more complexity to the stack. This may change soon with AWS recently joining the CNCF, but as of now, it is a dilemma for both ECS and its users.

Azure Container Service (AKS)

Azure has some things in common with ECS, like running containers on top of Azure virtual machines, and not charging for the AKS service and only for Azure resources like compute and storage. AKS, however, is ahead of ECS because of its better integration with Kubernetes. Azure uses open source, upstream Kubernetes distribution, and simplifies the management and maintenance of master and agent nodes. It provides automatic upgrades and is easy to get started, requiring just three commands to standup a new Kubernetes cluster. These features are new additions to Azure, as it has just begun to focus on providing Kubernetes as a service.

Alibaba Cloud Container Service

Alibaba Cloud Container Service brings the best of CaaS into a single compelling solution. Alibaba Container Service is similar to the previous two in that it also runs containers on top of its Elastic Compute Service instances, and charges only for the resources used, not for the container service itself.

Alibaba Cloud Container Service supports both Swarm and Kubernetes, and has very good integration with Kubernetes. It supports upstream Kubernetes distributions, and as a member of the Cloud-native Computing Foundation (CNCF), Alibaba is closely involved with the evolution of Kubernetes.

It’s a no-brainer to try Alibaba Cloud Container Service—There is a free trial with a $300 credit, which is more than enough to try one of your apps in production for a couple of weeks.

In conclusion, the market for CaaS solutions is wide open, with the core technologies just taking shape, and users desperately looking for ways to easily get started and simplify the management of Docker containers. While there are many CaaS solutions available, you’re better off choosing one that supports both Swarm and Kubernetes, and uses open source distributions of these tools so you’re not locked into the vendor’s implementation of Swarm or Kubernetes. Alibaba Cloud Container Service is uniquely positioned to meet this need as container usage continues to grow.

Bio


Twain Taylor

Twain began his career at Google, where, among other things, he was involved in technical support for the AdWords team. His work involved reviewing stack traces, and resolving issues affecting both customers and the Support team, and handling escalations. Later, he built branded social media applications, and automation scripts to help startups better manage their marketing operations. Today, as a technology journalist he helps IT magazines, and startups change the way teams build and ship applications.

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
2月前
|
数据安全/隐私保护
【Azure Service Fabric】关于Service Fabric的相关问题
【Azure Service Fabric】关于Service Fabric的相关问题
|
5月前
|
存储 应用服务中间件 开发工具
Platform as a Service
PaaS(Platform as a Service,平台即服务)是一种云计算服务模型,它提供了一组开发工具和服务,使开发人员可以构建和部署应用程序,而无需关心底层基础设施的管理。PaaS 通常包括一个操作系统级别的基础设施、服务器、存储和网络服务,以及一系列开发工具和服务,如数据库、Web 服务器、应用服务器、消息传递、身份认证等。
102 2
Platform as a Service
|
缓存 前端开发 网络协议
提升Azure App Service的几个建议
本文介绍了6个技巧,这些技巧可以改善Azure App Service托管应用程序的性能。其中一些技巧是你现在就可以进行的配置变更,而其他技巧则可能需要对应用程序进行一些重新设计和重构, 本文的几个技巧对于常规企业部署依旧有指引作用。
提升Azure App Service的几个建议
|
1月前
|
安全
【Azure App Service】App service无法使用的情况分析
App Service集成子网后,如果子网网段中的剩余IP地址非常少的情况下,会在App Service实例升级时( 先加入新实例,然后在移除老实例 )。新加入的实例不能被分配到正确的内网IP地址,无法成功的访问内网资源。 解决方法就是为App Service增加子网地址, 最少需要/26 子网网段地址。
|
2月前
|
API Docker 容器
【Azure App Service for Container】记一次拉取镜像失败的特殊情况
【Azure App Service for Container】记一次拉取镜像失败的特殊情况
|
2月前
【Azure 应用服务】App Service下部署的应用报错 Out of Memory
【Azure 应用服务】App Service下部署的应用报错 Out of Memory
|
5月前
|
数据库 数据中心
AWS 的Application Discovery Service (ADS)
AWS 的Application Discovery Service (ADS)
85 3
|
10月前
|
Kubernetes 网络协议 Cloud Native
Service 基础
Service 基础
|
Kubernetes 监控 算法
20-Kubernetes-Service详解-Service介绍
20-Kubernetes-Service详解-Service介绍
|
存储 Kubernetes 负载均衡
21-Kubernetes-Service详解-Service使用
21-Kubernetes-Service详解-Service使用