云原生容器Clouder认证:容器应用与集群管理—课时2:为什么需要容器集群

简介: 云原生容器Clouder认证:容器应用与集群管理—课时2:为什么需要容器集群

思考:单容器实例能否支撑企业级应用?

之前,小陈已经能够采用Docker在单容器上完成WordPress网站的构建、发布和运行了。经过公司评估后,计划让小陈把WordPress网站部署到生产环境上,正式上线运营。小陈觉得这个任务重大,由于缺少经验,决定找大刘请教。

小陈:师傅,我刚在容器上搭建过公司网站,现在要在生产环境中搭建公司网站,我感觉只用容器来搭建恐怕不行吧?

大刘:是会有些问题。设想一下,如果容器所在的宿主机出现故障,或者网站应用需要停机升级,又或者用户访问量超过了单个容器的处理能力,会怎样?

小陈:网站可能会无法提供服务,导致业务无法开展。应该如何解决呢?

大刘:一个好汉三个帮咯。这就需要运行多个相同应用的容器,并构成一个跨服务器的容器集群,对外提供统一的访问地址。如此,当一个容器发生异常或其应用需要升级时,由于其他容器未受影响,整个集群可以照常提供服务。容器集群可提供远超单实例的处理能力,还可以根据业务负载的变化,相应调整集群中的容器数量,实现业务的弹性。

小陈:明白了。那么,管理容器集群会很复杂吗?

大刘:这个问题问得好。随着容器技术的普及,容器集群技术也在飞速发展,现在已经很成熟了,容器集群的管理自动化、智能化程度很高,大大节省了运维人员的时间精力,比如我们常说的Kubernetes技术就是这样。

小陈:哦,好像听过这个名字,那我先去了解下容器编排技术。

 

容器集群的必要性

单个容器的应用可以满足简单应用场景或者少量用户访问,但随着应用越来越复杂、访问量越来越大,单个容器的性能慢慢不支,就需要不断增加更多容器来提高应用的处理能力。但随着容器越来越多,就引发了一系列问题:

  • 如何跨主机部署成百上千个容器?
  • 如何协调和调度大量的容器?
  • 如何在升级应用程序时不会中断服务?
  • 如何监视应用程序的运行状况?

由于容器本质上是轻量级且短暂存在的,因此在生产环境中运行和管理大量容器,所需工作量巨大。遇到业务访问量特别大的时候,可能需要同时运行数百甚至数千个容器。如果手动管理这些容器,会显著增加管理复杂性。

所以,当大规模使用容器时,人工管理已经不可行,不得不考虑容器调度、部署、跨节点访问、自动伸缩等问题,这就需要容器集群技术了。

 

容器集群技术是如何发展的?

容器出现后,容器集群技术是近些年容器技术演进发展的重点领域之一。容器集群发展的里程碑事件如下:

2013年7月:Mesosphere发布了Marathon的开源项目。它的设计宗旨是让用户在同一组服务器上,更智能地运行多种程序和服务。

2014年6月:Google开源了Kubernetes。其目标是成为“跨集群的应用级别容器部署、部署和运维自动化平台”。

2015年4月:CoreOS公司推出了容器网络接口规范(CNI),它规定了一个容器runtime和网络插件之间的标准接口协议。

2015年5月:Docker发布了容器网络模型 (CNM)。它是Docker主导的网络方案,提供了IP地址管理和网络插件功能。

2015年7月:Google主导成立了云原生计算基金会(CNCF)。CNCF对云原生最初的定义,包含了三个方面:应用容器化,面向微服务架构,应用支持容器的编排调度。

2016年3月:Google将Kubernetes项目捐赠给CNCF基金会。

2016年6月:Swarm内置到Docker中。

2017年7月:Open Container Initiative(OCI)发布了容器运行时和镜像规范1.0版本

2017年12月:标准化容器存储接口规范(CSI:Container Storage Interface)发布。CSI的主要目的是使得存储提供商只需要编写一个插件,就能在大部分的容器编排系统上工作。

2018年3月:Kubernetes项目毕业

2018年8月:Prometheus项目毕业

2018年之后:Kubernetes 逐渐成为业界通用流行的容器编排技术,各大厂商纷纷宣布支持 Kubernetes 作为容器编排的方案。

从容器集群发展历程中,我们看到了Mesos、Swarm和Kubernetes项目,这三个项目都是实现跨集群的应用级别容器部署、管理和运维的自动化平台,这种平台技术一般可以称为容器编排技术。




练习实验:通过ASK搭建企业级网站应用

 https://developer.aliyun.com/adc/scenario/ace330daa1d7428cacf3225bea3207e2  

相关文章
|
4月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
636 5
|
11月前
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
阿里云PolarDB云原生数据库在TPC-C基准测试中以20.55亿tpmC的成绩刷新世界纪录,展现卓越性能与性价比。其轻量版满足国产化需求,兼具高性能与低成本,适用于多种场景,推动数据库技术革新与发展。
|
7月前
|
Cloud Native 中间件 调度
云原生信息提取系统:容器化流程与CI/CD集成实践
本文介绍如何通过工程化手段解决数据提取任务中的稳定性与部署难题。结合 Scrapy、Docker、代理中间件与 CI/CD 工具,构建可自动运行、持续迭代的云原生信息提取系统,实现结构化数据采集与标准化交付。
383 1
云原生信息提取系统:容器化流程与CI/CD集成实践
|
8月前
|
Cloud Native 关系型数据库 分布式数据库
客户说|知乎基于阿里云PolarDB,实现最大数据库集群云原生升级
近日,知乎最大的风控业务数据库集群,基于阿里云瑶池数据库完成了云原生技术架构的升级。此次升级不仅显著提升了系统的高可用性和性能上限,还大幅降低了底层资源成本。
|
10月前
|
Cloud Native 关系型数据库 分布式数据库
登顶TPC-C|云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
云原生数据库PolarDB技术揭秘:Limitless集群和分布式扩展篇
|
Prometheus Kubernetes 监控
OpenAI故障复盘 - 阿里云容器服务与可观测产品如何保障大规模K8s集群稳定性
聚焦近日OpenAI的大规模K8s集群故障,介绍阿里云容器服务与可观测团队在大规模K8s场景下我们的建设与沉淀。以及分享对类似故障问题的应对方案:包括在K8s和Prometheus的高可用架构设计方面、事前事后的稳定性保障体系方面。
|
11月前
|
安全 持续交付 云计算
课时5:阿里云容器服务:最原生的集成Docker和云服务
阿里云容器服务以服务化形式构建容器基础设施,大幅提升开发效率,简化应用部署流程。通过Docker容器和DevOps工具(如Jenkins),实现自动化部署与迭代,优化企业内部复杂部署问题。该服务支持GPU调度、混合云架构无缝迁移,并与阿里云产品体系无缝集成,提供安全防护、网络负载均衡等多重功能支持。凭借微服务架构,帮助企业突破业务瓶颈,提高资源利用率,轻松应对海量流量。
392 0
课时5:阿里云容器服务:最原生的集成Docker和云服务
|
运维 Cloud Native 开发工具
智能运维:云原生大规模集群GitOps实践
智能运维:云原生大规模集群GitOps实践,由阿里云运维专家钟炯恩分享。内容涵盖云原生运维挑战、管理实践、GitOps实践及智能运维体系。通过OAM模型和GitOps优化方案,解决大规模集群的发布效率与稳定性问题,推动智能运维工程演进。适用于云原生环境下的高效运维管理。
517 8
|
存储 人工智能 调度
容器服务:智算时代云原生操作系统及月之暗面Kimi、深势科技实践分享
容器技术已经发展成为云计算操作系统的关键组成部分,向下高效调度多样化异构算力,向上提供统一编程接口,支持多样化工作负载。阿里云容器服务在2024年巴黎奥运会中提供了稳定高效的云上支持,实现了子弹时间特效等创新应用。此外,容器技术还带来了弹性、普惠的计算能力升级,如每分钟创建1万Pod和秒级CPU资源热变配,以及针对大数据与AI应用的弹性临时盘和跨可用区云盘等高性能存储解决方案。智能运维方面,推出了即时弹性节点池、智能应用弹性策略和可信赖集群托管运维等功能,进一步简化了集群管理和优化了资源利用率。