登录 / 注册 Account

容器

K8s 解读之:Kubernetes API 是什么?

Kubernetes API 是 Kubernetes 控制平面的前端,也是用户与其 Kubernetes 集群进行交互的途径。

Jump to section

什么是 K8s API?

API(应用编程接口)服务器用于确定请求是否有效,然后对其进行处理。

本质上,API 是用于管理、创建和配置 Kubernetes 集群的接口。用户、外部组件和集群中的各个部分就是通过它来相互通信的。

Kubernetes 控制平面的中心是 API 服务器和 HTTP API,它们可用于查询和操控 Kubernetes 对象的状态。 

什么是 Kubernetes?

要想充分了解 Kubernetes API,我们需要站在更高的层面来了解一下什么是 Kubernetes。 

Kubernetes 是一个用于编排容器的开源平台。容器技术允许您打包应用程序并将其与整个运行时环境隔离,以便轻松地在不同阶段(开发、生产等)和不同环境(内部、公共云、私有云、混合云或多云)中移动容器化应用,同时仍保留全部功能。 

因此,作为容器编排平台,Kubernetes 可以自动执行在管理、部署和扩展容器化应用中的许多手动流程。

通过将运行容器化应用的计算机(物理或虚拟服务器,称为"节点")分组,您可以创建一个集群,然后使用 Kubernetes 对其进行管理和编排。

一组在单个计算机或节点上运行并共享资源的容器被称为"容器集",但容器集中也可以只有一个容器——在这种情况下,我们可以只称其为"容器",从概念上来讲并没有错误。

什么是 K8s 集群?

Kubernetes 集群包含两个部分:控制平面和应用平面。API 会在控制平面决定用户如何与集群交互,会使用 kubectl(一个命令行工具)来告诉命令行要做些什么。通过 API,最终用户、集群本身以及外部组件得以进行相互通信。 

每个集群都有预期状态,定义了应运行的应用或工作负载,以及其他的配置详细信息(例如所使用的镜像和所需的资源)。集群的预期状态是使用 API 设置的:或通过命令行 kubectl 工具,或通过 API 与集群进行交互以设置或修改预期状态。

Kubernetes 会自动管理您的集群,以匹配预期状态。Kubernetes 采用声明式部署模式,它会始终尝试根据为其工作负载设定的参数进行自我管理和自我修复。

如何理解 K8s API 与 K8s Operator 的作用?

Kubernetes Operator 是一种利用 API 借助 kubectl 工具来封装、部署和管理应用的方法。 

在 Kubernetes 中,Operator 是一种特定于应用的控制器,它可以扩展 Kubernetes API 的功能,从而代表用户创建、配置和管理复杂应用的实例。通过包含特定于域或应用的信息,Operator 可以让 Kubernetes 在所管理软件的整个生命周期内实现自动化。

红帽企业就绪型 Kubernetes 的优势

作为开源容器技术的领导者以及众多容器基础架构管理工具和产品的创造者,红帽致力于带领您拥抱 Kubernetes 和容器技术。

选择红帽® OpenShift®,您就获得了一个企业级开源容器平台,其中包含管理混合云和多云部署所需的一切资源。我们可以协助您将业务逐渐过渡到云端,同时仍能最大程度地利用好当前的基础架构。 

作为单个集成式平台的一部分,开发人员不仅可以选择语言、中间件、框架和数据库,还可以部署自动化以提高工作效率和生产力。 

使用 Kubernetes 所需的工具

Red Hat OpenShift product logo

企业就绪型 Kubernetes 容器平台,可实现全堆栈自动化运维,从而轻松管理混合云部署。

一项托管式 API 管理服务,作为附加组件提供给红帽 OpenShift 专业版。

Kubernetes——从“容”应对,"云"程万里