容器编排旨在自动执行并简化容器化应用的部署和管理。
Red Hat OpenShift on IBM Cloud
IBM Cloud Satellite
IBM Cloud Code Engine
IBM Cloud Kubernetes Service
容器编排旨在自动执行容器的配置、部署、网络、扩展、可用性以及生命周期管理。 目前,Kubernetes 是最受欢迎的容器编排平台;包括 Amazon Web Services (AWS)、Google Cloud Platform、IBM Cloud 和 Microsoft Azure 在内的大多数主要的公有云提供商都提供 Kubernetes 管理服务。 其他容器编排工具包括 Docker Swarm 和 Apache Mesos。
容器 是轻量级、可执行的应用组件,它们将应用源代码与在任何环境中运行代码所需的 操作系统 (OS) 库和 依赖项 结合起来。
尽管创建容器的能力已存在了几十年,但直到 2008 年它才得到广泛应用,那时 Linux 在内核中包含了容器功能;而到了 2013 年,随着 Docker 开源 容器化平台的出现,容器得到了进一步普及。 (Docker 非常受欢迎,以至于“Docker 容器”和“容器”这两个词经常互换使用。)
由于和 虚拟机 (VM) 相比,容器(更具体地说是容器化 微服务 或 无服务器 功能)“体积”更小、资源效率更高、移植性更好,因此已成为现代云原生 应用 事实上的 计算 单位 。 (要了解有关容器的优点的更多信息,请查看以下互动式的数据可视化内容)
如果数量较少,以人工方式就足以轻松地部署和管理容器。 但在大多数组织中, 容器化应用 的数量在迅速增加,如果没有 自动化
功能,大规模管理这些容器就无从谈起,尤其是在 持续集成/持续交付 (CI/CD) 或 DevOps 管道中。而容器编排可以自动执行有关 部署 和运行 容器化应用 和服务的操作任务。 根据 最新的 IBM 研究报告 (PDF, 1.4MB), 在使用容器的开发人员中,有 70% 表示自己使用容器编排解决方案,另有 70% 表示自己的组织使用完全管理型(云管理)容器编排服务。
虽然各种工具所使用的方法和所具备的能力各不相同,但容器编排实质上是一个三步过程(如果在迭代敏捷或 DevOps 管道中,则是一个循环)。
大多数 容器编排工具 都支持 声明性 配置模型:开发人员编写一个 配置文件 ( YAML 或 JSON ,具体取决于工具),用于定义期望的配置状态;运行该文件的编排工具使用自己的智能实现该状态。 该 配置文件 通常:
编排工具安排将容器(以及用于实现弹性的容器副本)部署到主机,根据可用的 CPU 容量、内存或者 配置文件 中指定的其他需求或限制,选择最合适的主机。
部署容器后,编排工具就会根据容器定义文件(通常是 Dockerfile)管理 容器化应用 的 生命周期 。 这包括
很明显,容器编排的主要优点是 自动化 - 不仅因为它有助于显著降低管理大型 容器化应用 资产的工作量和复杂性。 通过自动化操作,编排支持敏捷或 DevOps 方法,使团队能够以快速、迭代的周期开发和部署应用,更快地发布新的特性和功能。
此外,编排 工具的智能有助于增强 或扩展 容器的许多固有优点。 例如,根据 声明性 配置进行的自动化主机选择和资源 分配有助于最大程度地有效使用计算资源;自动化的容器运行状况监控和搬迁有助于最大程度地提高可用性。
如上所述, Kubernetes 是最受欢迎的 容器编排平台。 通过与 生态系统中的其他工具一起使用, Kubernetes 帮助企业交付高效的 平台即服务 (PaaS) ,满足了许多与基础架构和运营相关的任务,解决了众多与 云原生 应用开发相关的问题,从而使开发团队能够将全部精力都集中在编码和创新上。
Kubernetes 之所以比其他编排解决方案更具优势,在很大程度上是因为它在几个领域具有更全面、更精妙的功能,包括:
容器是理想的 应用现代化 和 IT 基础架构优化工具。 来自 IBM Cloud 的容器服务基于 Kubernetes 之类的 开源 技术 , 可促进和加快您的 云原生 应用开发之旅;这些服务使用开放式混合云方法,集成了来自私有云、 公有云 和 本地 IT 基础架构的最佳特性与功能。
采取下一步行动:
要想立即开始体验,请 注册 IBM Cloud 账户。