带你读《弹性计算—无处不在的算力》第三章:计算产品和技术3.6容器服务与弹性容器实例(二)

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 《弹性计算—无处不在的算力》第三章:计算产品和技术3.6容器服务与弹性容器实例(二)

3.6.1 功能特点

1. 容器服务的功能特点

Kubernetes 是一个开源的容器编排框架。容器将应用及其依赖关系打包到一个可分发的构件中(容器镜像),这个构件可移动到多个环境中,从而简化软件的开发和部署。Kubernetes 通过编排这些容器,自动化管理应用的资源利用、故障处理、可用性、配置、可扩展性和理想状态。Kubernetes 相关概念可参阅相关图书。

阿里云容器服务 ACK 基于原生Kubernetes 进行适配和增强,简化集群的搭建和扩容等工作,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳的 Kubernetes 容器化应用运行环境。

如图3-74 所示,阿里云容器服务 ACK 提供了多Kubernetes 集群形态的管理,以便捷、高效的使用方式为用户提供了若干功能,具体如下。

image.png


3-74  阿里云容器服务 ACK 产品架构

融合阿里云虚拟化技术,容器服务 Kubernetes 版支持三种集群形式: 专有模式(Dedicated Kubernetes):用户需要创建3 Master(高可用) 节点及若干 Worker 节点,可对集群基础设施进行更细粒度的控制,需要自行规划、维护、升级服务器集群。

托管模式(Managed Kubernetes):用户只需创建 Worker 节点,Master 节 点由容器服务创建并托管,具备简单、低成本、高可用、无须运维管理 Kubernetes 集群 Master 节点的特点,用户可以更多关注业务本身。

无服务器模式(Serverless Kubernetes):用户无须提前规划ECS 节点和 容量,可以按应用所需的资源进行付费、动态的弹性扩容,ECI 在阿里云基础能力之上进行了优化,使其具备安全、高效的特征,极大降低了管理Kubernetes 集群的难度。


支持强大的网络、存储、混合集群管理、水平扩容、应用扩展等特性。

支持安全镜像和Helm 工具,与阿里云RAMKMS、日志、监控等产品高 度集成,提供一个安全合规的Kubernetes 解决方案,为用户提供混合云、容器安全、CI/CDDevOps 等增强能力。

容器服务 Kubernetes 版提供 Web Console API SDK

提供统一的多集群管理能力,支持集群联邦、线上应用的统一管理。

基于服务网格技术,支持不同集群之间的流量切换,支持服务就近访问、 地域亲和性,以及将服务请求故障转移到健康检查正常的地域的自愈能力。


随着云原生时代的到来, 阿里云容器服务在Kubernetes 之上,结合Istio 服务网格,提供了多云、混合云的支持能力,针对微服务提供了有效的治理功能,并以Kubernetes Istio 为基础,提供了针对特定应用负载的不同支持,例如针对Kubeflow 服务的流量治理、为Knative 提供负载的路由管理能力等。

2. 弹性容器实例ECI 的功能特点

如前面所述,无服务器模式集群中的Pod 是基于弹性容器实例ECI 创建的,底层运行在轻量的安全容器内,应用容器之间相互隔离,防止互相干扰,因此具有更好的安全隔离性能。使用无服务器模式集群时,用户无须担心集群节点的水平扩展能力,可以根据应用负载,轻松灵活扩容应用所需资源。那么到底它有什么详细的功能特点呢?本节会揭开它的神秘面纱。

首先,ECI ECS 共用整个阿里云的计算基础设施,有足够的弹性库存,并能 够提供广泛的规格;其次,通过安全沙箱技术,提供比 ECS 规格更细粒度的极小规 格(0.1c)。通俗的理解是:有阿里云的地域,就会有 ECIECS 能支撑的业务,容器 化后 ECI 就能支撑,提供了广义的弹性能力。

从弹性伸缩的角度出发,因为复用 ECS 大资源池,所以弹性库存的预留成本、分摊成本会比独立维护小资源池更低。从用户角度的出发,ECI 通过复用 ECS 统一的 Quota 约束,提供了更好的弹性深度。

从成本的角度出发,按规格创建的 ECI ECS 售价保持一致,提供预付费抵用券(RI)、按量付费、竞价实例(Spot)等售卖形态。ECI 推荐的资源计费类型选择如图 3-75 所示。


image.png

3-75  ECI 推荐的资源计费类型选择


在云原生和 Serverless 的浪潮下,底层 IaaS 基础设施提供方,关注的核心点还是如何为用户提供云原生及 Serverless 场景下的 IaaS 基础设施。不可变基础设施通过快速的重新部署,极大地减少了运维工作,随之而来的就是容器的频繁创建和销毁。关于容器存活时间的统计数据如图 3-76 所示,78% 的容器存活时间不到一小时,89% 的容器存活时间不到一天,95% 的容器存活时间不到一周。


image.png

3-76  容器存活时间

在公共云场景下,用户传统的工作模式是,先购买一台虚拟机部署系统环境,再开始部署容器。这种模式有两个比较明显的弊端 :1)需要提前进行容量预估和弹性伸缩;2)在业务流量下降的时候存在资源的闲置。

是否有办法降低这样做的成本和工作量,让基础设施也随着业务流量和容器的生命周期而创建和销毁?

ECI 及无服务器模式正是为了满足上面的需求而推出的,ECI 定位于 Serverless 和容器化的弹性计算资源供给服务。我们希望 ECI 的用户可以不再关心底层的基础设施和运维,无须管理底层服务器,只需要提供打包好的镜像即可运行容器,并仅为容器实际运行消耗的资源付费。通过简单的两步配置,用户就可以在云上快捷部署一批容器,ECI 中容器组的概念跟 Kubernetes Pod 的概念类似。

用户既可以通过控制台快速部署自己的容器应用,也可以借助 ECI 提供的丰富

SDK ECI 接入已有的业务系统或容器编排系统中,借助 ECI 的弹性伸缩能力轻松 应对突发业务流量。通过 ECI 可以简化业务部署、构建等工作,让用户专注于业务逻 辑而无须关心复杂的基础设施维护工作。

ECI 诞生到现在,经历了几次大的定位演进,但核心的 Serverless 和容器组交 付定位并未发生改变,弹性容器实例架构如图 3-77 所示。

image.png

3-77  弹性容器实例架构

Serverless 用户不需要运维和管理 ECS,通过指定容器镜像即可运行容器。ECI 提供容器运行时的封装,并自动与阿里云各产品对接,提供阿里云上的全托管免运维 Serverless 能力。

容器组交付:ECI 提供容器组形式的轻量化资源交付,容器组内网络、存储资源共享,同时,兼容并无缝对接 Kubernetes

相关实践学习
巧用云服务器ECS制作节日贺卡
本场景带您体验如何在一台CentOS 7操作系统的ECS实例上,通过搭建web服务器,上传源码到web容器,制作节日贺卡网页。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
29天前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
9天前
|
Prometheus Kubernetes 监控
OpenAI故障复盘 - 阿里云容器服务与可观测产品如何保障大规模K8s集群稳定性
聚焦近日OpenAI的大规模K8s集群故障,介绍阿里云容器服务与可观测团队在大规模K8s场景下我们的建设与沉淀。以及分享对类似故障问题的应对方案:包括在K8s和Prometheus的高可用架构设计方面、事前事后的稳定性保障体系方面。
|
12天前
|
Unix Linux Docker
CentOS停更沉寂,RHEL巨变限制源代:Docker容器化技术的兴起助力操作系统新格局
操作系统是计算机系统的核心软件,管理和控制硬件与软件资源,为用户和应用程序提供高效、安全的运行环境。Linux作为开源、跨平台的操作系统,具有高度可定制性、稳定性和安全性,广泛应用于服务器、云计算、物联网等领域。其发展得益于庞大的社区支持,多种发行版如Ubuntu、Debian、Fedora等满足不同需求。
39 4
|
2月前
|
运维 Kubernetes Docker
深入理解容器化技术:Docker与Kubernetes的协同工作
深入理解容器化技术:Docker与Kubernetes的协同工作
66 12
|
2月前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
1月前
|
开发框架 安全 开发者
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。本文探讨了 Docker 在多平台应用构建与部署中的作用,包括环境一致性、依赖管理、快速构建等优势,以及部署流程和注意事项,展示了 Docker 如何简化开发与部署过程,提高效率和可移植性。
66 4
|
1月前
|
负载均衡 网络协议 算法
Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式
本文探讨了Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式,以及软件负载均衡器、云服务负载均衡、容器编排工具等实现手段,强调两者结合的重要性及面临挑战的应对措施。
77 3
|
2月前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
2月前
|
运维 Kubernetes Docker
深入理解容器化技术及其在微服务架构中的应用
深入理解容器化技术及其在微服务架构中的应用
66 1
|
2月前
|
安全 持续交付 Docker
深入理解并实践容器化技术——Docker 深度解析
深入理解并实践容器化技术——Docker 深度解析
68 2

相关产品

  • 容器计算服务