什么是 Kubernetes 集群?

作者

Sai Vennam

Technical Offering Manager

Kubernetes 集群定义

Kubernetes 集群是一组计算节点(可为虚拟机或物理机),用于运行由 Kubernetes 容器编排平台管理的容器化应用。

云计算为企业带来了诸多优势,包括灵活性、敏捷性、可移植性与成本可控性。但与此同时,云计算环境的管理以及云上应用的交付工作也随之变得更为复杂。Kubernetes 作为一款容器编排平台,能够助力企业化解这些复杂难题。

集群是 Kubernetes 实现功能的架构基础。我们可以将集群视作基础组件,借助这些组件能够实现云应用的快速、可控交付。一个 Kubernetes 集群是一组互联的机器,它们协同工作,构成一个统一的整体。集群由工作节点组成,工作节点作为计算主机,可用于部署、运行和管理容器化应用。工作节点由控制节点进行管理,控制节点会根据可用资源容量以及用户自定义配置,决定容器在哪些工作节点上部署,从而完成容器的调度工作。

脚本会定义容器配置以及运行应用所需的资源,例如持久化存储、服务等。在 Kubernetes 中,Pod 是集群里最小的可部署单元,它会将必须作为一个整体进行管理的多个容器组合在一起。Kubernetes 会创建 Pod 来承载应用实例。一个 Pod 可包含一个或多个应用容器,且这些容器会共享存储、网络信息等资源。

辅以专家洞察分析的最新科技新闻

通过 Think 时事通讯,了解有关 AI、自动化、数据等方面最重要且最有趣的行业趋势。请参阅 IBM 隐私声明

谢谢!您已订阅。

您的订阅将以英语提供。每份时事通讯都包含取消订阅链接。您可以在此管理您的订阅或取消订阅。更多相关信息,请参阅我们的 IBM 隐私声明

向 Kubernetes 编排演变

容器的出现简化了云计算容器会将代码及其所有依赖项打包在一起,确保软件栈无论在何种环境下都能稳定运行。尽管容器实现了应用的独立打包,但同时也带来了管理层面的复杂性。当时的核心挑战,是找到一种能让这些高效、轻量的软件包协同工作的方法。而容器编排技术,正是为简化混合云环境管理而出现的下一代技术演进方向。

如需深入了解容器化技术,可观看视频《容器化技术详解》

若想获取容器编排的更多背景知识,敬请查看视频《容器编排技术详解》。(ibm.com 外部链接)

Kubernetes 提供了一套开源平台,用于管理容器化工作负载与微服务(ibm.com 外部链接)。借助该平台,开发人员能够通过为容器化应用制定全域统一的标准与规范,消除不同云服务商之间的技术差异。这一平台以容器为核心,可对存储、网络及计算资源进行编排,从而为用户的业务负载提供支撑。

借助 Kubernetes,用户可以专注于开发云应用所需实现的功能,无需再为构建特定平台的适配能力投入精力。而这一能力的实现,正是依托于底层的 Kubernetes 架构

如需深入了解 Kubernetes 的容器编排功能,可查阅文章《Kubernetes 与 Docker 对比:不是非此即彼》

 

Kubernetes 集群架构

Kubernetes 集群是 Kubernetes 的构建组件,也是该平台的架构根基。这种构建式架构设计具备模块化特性,能够为平台赋予高可用性、可扩展性与便捷部署能力。

如今的工作负载对应用与基础设施两层均提出了高可用性要求。Kubernetes 通过在应用和底层基础设施之间构建一层抽象层,实现了工作负载在可用资源上的高效分发。该平台借助持续的节点与容器健康检查机制,防范应用故障的发生。一旦某个容器出现宕机,自愈与副本复制功能会自动对故障进行修复。内置的负载均衡器可将业务负载分配至空闲资源,从而减轻流量激增、高峰或服务中断带来的影响。

这种高效的资源利用模式同样适用于弹性伸缩场景。新增或移除服务器的操作被大幅简化,可实现无缝的水平扩展。自动化伸缩功能会根据预设指标,动态增加运行中的容器数量。副本控制机制则会进行反向调节:当运行的 Pod 数量过多时终止多余实例,数量不足时则启动新的 Pod 补充。

如需深入探究 Kubernetes 的架构原理,可观看以下视频《Kubernetes 技术详解》。

观看视频

速度对开发人员至关重要。Kubernetes 的设计旨在适应软件的快速构建、测试和发布。新版本或更新版本可通过自动化发布流程完成全量推送。该功能同样适用于金丝雀发布场景,支持新版本与旧版本并行部署运行,在全面投产前验证新版本的可靠性。

通过 Prometheus 进行 Kubernetes 集群监控

随着容器化应用的颗粒度愈发精细、独立性不断增强,监控工作也随之成为一大难题。这一挑战同样延伸至 Kubernetes 集群监控领域。传统监控的核心指标,仅能判断程序、服务或工具处于运行(正常)或宕机(异常)状态。但对于微服务架构而言,这种“非黑即白”的监控方式过于粗糙,毕竟单个功能微服务的宕机,未必会对业务造成实际影响。因此,现代化监控工具必须具备更精细化的状态判别能力,并能与各类异构平台及动态变化的应用实现更深度的集成。

Prometheus 是一款开源的日志、监控及告警工具,专为多云环境的可移植性与动态变化特性设计,能够突破传统监控工具的局限性。它可从 Kubernetes 集群、工作节点及部署任务中采集多维度的丰富指标数据。Prometheus 采用键值对格式,与 Kubernetes 的元数据组织方式高度适配。同时,该工具支持定期拉取数据并自动发现监控目标,非常适用于应对生命周期短暂的临时工作负载。

IBM Cloud

Red Hat OpenShift AI on IBM Cloud:部署 AI 工作负载

将 AI 功能与 Red Hat OpenShift on IBM Cloud 结合使用。本视频将深入探讨如何利用可扩展的机器学习运营平台,高效构建、部署和管理 AI 工作负载。

相关解决方案
IBM Red Hat OpenShift

Red Hat OpenShift on IBM Cloud 是一个完全托管的 OpenShift 容器平台 (OCP)。

探索 Red Hat OpenShift
容器解决方案

容器解决方案能够运行和扩展容器化工作负载,并实现安全性、开源创新和快速部署。

深入了解容器
云咨询服务

利用 IBM 的云咨询服务发掘新功能并提升业务敏捷性。了解如何通过混合云战略和专家合作共同制定解决方案、加快数字化转型并优化性能。

云服务
采取后续步骤

开始使用完全托管的 Red Hat OpenShift 平台或深入了解 IBM Cloud Kubernetes 生态系统的灵活性。借助根据您的需求定制的安全可扩展解决方案,加快您的开发与部署流程。

探索 Red Hat OpenShift 深入了解 Kubernetes