This is the Trace Id: 65799a89a0b6a2f58012e89e7ba11aff
跳转至主内容
Azure

什么是容器?

容器是标准化的软件包,可在云和其他环境中快速、可靠部署,以支持快速、高效的创新。

已定义容器

容器(或称软件容器)是一种独立的软件包,它将应用程序代码与运行该程序所需的操作系统库及依赖项打包在一起。它可以一致地在任何计算环境中运行,无论是在开发人员的笔记本电脑、测试服务器还是生产云服务上。由于容器具有轻量级和可移值的特点,因此几乎可以在任何类型的基础设施上(包括混合云和多云平台)高效地部署、扩展和管理。

关键要点

  • 容器将应用程序在任何计算环境中可靠运行所需的一切都打包在一起。
  • 云计算中的容器用于跨环境分发和管理新式应用,包括那些运行 AI 和机器学习工作负载的应用。
  • 容器比虚拟机更轻量、更可移值,因此更易于扩展。
  • 容器与现代应用程序开发实践相辅相成,例如微服务架构和 DevOps 工作流的应用。 
  • 各行各业的组织都利用容器来构建和维护安全、可扩展的解决方案。
  • 针对容器优化的工具和服务(例如 Kubernetes 编排平台)简化了容器管理。

云计算中的容器是什么?

容器解决了应用开发中的一个根本性挑战 - 管理应用的代码和依赖项,使应用能够在不同 IT 环境中一致运行,并且不会影响同一系统上运行的其他应用的性能。过去,开发人员通常需要将软件打包成多个版本,以便其在不同的环境中运行。

容器通过为应用程序打包和部署提供轻量级、不可变的基础设施,解决了这一挑战。开发人员可以将应用(或服务)、库、配置文件和依赖项打包为单个容器映像。然后,他们可以将容器化应用作为一个整体进行测试,并在各环境中以容器映像实例的形式部署,几乎无需修改。因此,容器已成为企业 IT 策略的基石,可运行从 Web 服务到 AI 驱动的工作负载等所有内容。

云容器(在云实例上运行的容器)对于什么是云计算? 云计算尤为重要。它们为开发人员和 IT 专业人士提供了一种统一的方式,用于在不同类型的环境中部署和管理现代云原生应用程序。这些环境可以包括混合云基础结构(组合公有云私有云和本地资源)和多云基础结构,这些基础结构使用来自多个供应商的云服务。

由于容器可以快速重新配置,开发人员也可以灵活地根据不断变化的工作负载需求,高效启动或关闭云实例。

容器和虚拟机有什么区别?

容器和虚拟机 (VM) 都是将工作负载与计算资源隔离的虚拟化形式,但它们以不同的方式实现此目的。

从宏观层面来看,虚拟机(VM)通过虚拟化底层资源,使多个操作系统(OS)实例能够在支持的硬件上运行。VM 提供了许多好处,包括能够在同一台服务器上运行不同的操作系统,无论是本地服务器还是云服务器。它们还可以更高效、更具成本效益地利用物理资源,并更快完成服务器预配。然而,由于每台虚拟机都包含操作系统映像、库、应用程序和其他组件,因此它们的体积可能会变得很大,在不同环境之间迁移起来不仅困难,而且成本高昂。

或者,容器会对底层操作系统进行虚拟化,使容器化的应用程序认为自己独占了整个操作系统,包括 CPU、内存、文件存储和网络连接。由于底层操作系统和基础设施的差异已被抽象化,只要基础映像保持一致,容器就可以在任何地方部署和运行。

与虚拟机相比,容器具有更强的可移植性,且资源利用率更高,但它们受限于所定义的操作系统。但是,由于容器共享主机 OS,因此无需启动 OS 或加载库。这使得它们更高效、更轻量,但隔离性更低。容器化应用程序还可减少维护,例如修补和更新。

容器和虚拟机可以一起使用。例如,组织可以在虚拟机中运行容器,而不是直接在基础设施上运行,这样既能利用虚拟机的隔离性和安全性,又能提高效率。

使用容器有哪些优势?

以下是使用容器的一些主要优势:

  • 更简便的应用程序管理: 容器通过标准化软件在不同环境中的打包和运行方式,使应用程序和基础设施的管理变得更加轻松。与业务流程工具结合使用时,容器可实现自动更新、回滚、缩放和监视—,有助于提高操作效率和复原能力。
  • 提高灵活性: IT 团队可以使用容器化应用快速响应不断变化的业务需求,并使用新产品和功能加快上市时间。容器还支持现代 DevOps 流程和微服务架构。
  • 跨环境的可移植性: 容器提供标准化格式,用于打包和存储应用程序需要运行的所有组件。无论何时何地部署容器(无论是在本地、云中还是在边缘设备上),它都会在一致且不变的环境中执行。 
  • 快速可伸缩性: 由于容器没有单独的 OS 实例和 VM 具有的其他开销要求,因此在同一基础结构上可以支持更多容器。容器的轻量特性意味着可以快速启动和停止它们,从而实现快速伸缩的方案。
  • 增强安全性: 容器在操作系统层面对计算资源进行虚拟化,从而缩小了网络攻击面,并降低了某个组件遭到入侵时波及其他组件的风险。这种内置的隔离机制,结合容器安全最佳实践和工具,有助于组织及早发现网络威胁,并在各种环境中保持安全且符合合规要求的部署。

容器和新式应用开发

由于容器体积小且几乎可以在任何地方运行,它们与现代应用开发的许多方面都一致,包括以下内容:

  • 微服务体系结构: 容器是微服务体系结构的构建基块。微服务体系结构会将大型应用拆分为小型、松耦合的服务,这些服务执行特定功能,并通过 API 进行通信。每个服务在其自己的容器中运行,可以独立高效地更新、缩放和部署。
  • DevOps 工作流: 容器也是持续集成和持续交付 (CI/CD) 管道的基本组件。通过让开发人员能够使用一致且可靠的开发、测试和生产环境,容器有助于简化工作流程、加快软件开发生命周期,并减少人为错误。
  • 混合云和多云策略: 轻松跨平台移动,容器使组织能够灵活地组合混合云和多云体系结构。这使他们能够根据自身需求,从不同的云服务提供商处获取基础设施及其他资源。
  • 应用程序迁移和现代化:容器化应用程序通过允许传统整体式应用程序(将所有应用程序组件捆绑到一个单元中)以最少的返工方式在现代环境中运行,从而简化 云迁移
  • AI 和机器学习工作负载: 容器非常适合打包和运行 AI 驱动的应用,例如自动化业务流程和运行预测分析所需的应用。自包含的机器学习模型还可以在任何环境中快速复现和扩展,从而确保从模型训练到推理的全过程保持一致性。
  • 生成式 AI 模型: 使用语言模型、扩散模型和其他生成式 AI 模型的开发人员可以使用容器高效打包复杂依赖项。此外,他们还可以利用面向容器化应用的编排工具,快速、安全且大规模地部署这些模型。

容器用例(按行业)

下面是各种类型和规模的组织如何使用容器来实现更高的效率、创新和可伸缩性的实际示例:

汽车行业
汽车制造商利用容器技术提供联网汽车服务,包括实时导航更新和车载娱乐信息系统,从而确保数百万辆汽车的性能保持一致。

银行和金融
金融机构借助容器技术,在严格遵守行业监管规定的同时,对核心银行系统进行现代化改造、运行欺诈检测模型,并构建以移动端为先的应用程序。

游戏
游戏公司利用容器在全球范围内运行匹配服务、排行榜和分析服务。容器允许他们近实时部署更新,而不会中断实时游戏。

医疗保健
医院和研究中心使用容器部署健康分析应用、遵守《‌健康保险携带与责任法案‌》(HIPAA) 要求,以及在安全隔离的环境中管理敏感患者数据。

零售业
零售商利用容器技术,为用户提供个性化的购物体验,实时跟踪库存,并在购物高峰期扩展基于微服务的前端系统。

制造业
制造商借助容器技术,将物联网(IoT)设备和实时预测分析整合到生产流程中,搭建仿真环境,并优化IT管理及降低相关成本。

电信
电信提供商在移动网络边缘部署容器,以支持连接 IoT、手机和其他靠近客户的设备的 5G 支持的基站。

容器优化工具和服务

以下是一些旨在帮助组织有效管理、保障安全并扩展容器化应用的热门工具和服务:

容器业务流程平台
单个企业应用程序可以包含分布在计算机群集中的数百或数千个容器。Kubernetes 通过自动化部署、扩展和管理容器化应用,帮助应对相关挑战。

容器安全工具
针对容器的安全工具可监控运行时行为、扫描漏洞、执行策略并隔离工作负载。容器防火墙和映像签名通常用于增强保护。

无服务器容器
通过将无服务器计算技术与容器化应用结合,开发人员可以运行容器,无需担心服务器或基础结构。它们非常适合必须处理流量峰值的事件驱动应用程序。

容器即服务 (CaaS)
CaaS 平台提供托管式容器环境,开发人员无需安装编排软件或管理基础设施,即可在其中部署和管理容器。

容器的未来

软件容器将应用及其运行时环境组合到一个独立单元中,因此可以在各种基础结构之间移动、扩展和管理,包括混合云和多云平台。容器功能多样且高效,将持续发展,并始终是现代计算的基础。
常见问题解答

常见问题解答

  • 云容器是一个轻型可移值软件包,其中包括在混合云和多云环境中运行 AI 驱动和其他新式应用程序所需的一切内容。
  • 云计算中的容器使组织能够通过高效地大规模构建、测试和部署创新应用程序,同时优化计算资源来更有效地进行竞争。
  • 容器和虚拟机都能将工作负载与计算资源隔离。然而,容器与主机操作系统共享资源,且轻量级、便于移植;而虚拟机则运行完整的操作系统,在不同环境之间迁移起来更为困难且成本更高。
  • 否,Kubernetes 不是容器。它是一个开源业务流程平台,可自动部署、缩放和管理容器化应用程序。