什么是Kubernetes集群?

什么是Kubernetes集群?

2022-08-19
阅读(0)
来源: 淘梦互联
摘要: Kubernetes集群是一组运行容器化应用程序的节点。容器化应用程序将应用程序与其依赖项和一些必要的服务打包在一起。它们比虚拟机更轻巧、更灵活。通过这种方式,Kubernetes集群允许更轻松地开发....

Kubernetes 集群 是一组运行容器化应用程序的节点。容器化应用程序将应用程序与其依赖项和一些必要的服务打包在一起。它们比虚拟机更轻巧、更灵活。通过这种方式,Kubernetes 集群允许更轻松地开发、移动和管理应用程序。Kubernetes 集群允许容器跨多台机器和环境运行:虚拟机、物理机、基于云的和本地。与虚拟机不同,Kubernetes 容器不限于特定的操作系统。相反,它们能够共享操作系统并在任何地方运行。

什么是Kubernetes集群?

Kubernetes 集群由一个主节点和多个工作节点组成。这些节点可以是物理计算机或虚拟机,具体取决于集群。主节点控制集群的状态;例如,哪些应用程序正在运行以及它们对应的容器映像。主节点是所有任务分配的来源。它协调流程,例如:

  • 调度 和扩展应用程序

  • 维护 集群的状态

  • 实施 更新

工作节点 是运行这些应用程序的组件。 工作节点执行主节点分配的任务。它们可以是 虚拟机 或物理计算机,都作为一个系统的一部分运行。Kubernetes 集群必须至少有一个主节点和一个工作节点才能运行。对于生产和登台,集群分布在多个工作节点上。对于测试,组件可以全部运行在同一个物理或虚拟节点上。

命名空间 是 Kubernetes 用户在一个物理集群中组织许多不同集群的一种方式。 命名空间使用户能够通过资源配额在不同团队之间划分物理集群内的集群资源。因此,它们非常适合涉及复杂项目或多个团队的情况。

Kubernetes 集群由什么组成?

一个 Kubernetes 集群包含六个主要组件:

  1. API 服务器: 向所有 Kubernetes 资源公开一个 REST 接口。作为 Kubernetes 控制平面的前端。

  2. 调度器:根据资源需求和指标放置容器。记下没有分配节点的 Pod,并选择要在其上运行的节点。

  3. 控制器管理器:运行控制器进程并将集群的实际状态与其所需的规范相协调。管理控制器,例如节点控制器、端点控制器和复制控制器。

  4. Kubelet:通过与 Docker 引擎(用于创建和管理容器的默认程序)交互,确保容器在 Pod 中运行。获取一组提供的 PodSpec 并确保其对应的容器完全可操作。

  5. Kube-proxy:管理网络连接并维护跨节点的网络规则。在给定集群中的每个节点上实现 Kubernetes 服务概念。

  6. etcd:存储所有集群数据。一致且高度可用的 Kubernetes 后备存储。

这六个组件都可以在 Linux 上运行或作为 Docker 容器运行。主节点运行 API 服务器、调度程序和控制器管理器,工作节点运行 kubelet 和 kube-proxy。

什么是Kubernetes集群?

您如何使用 Kubernetes 集群?

要使用 Kubernetes 集群,您必须首先确定其所需状态。Kubernetes 集群的期望状态定义了许多操作元素,包括:

  • 应该运行的应用程序和工作负载

  • 这些应用程序需要使用的图像

  • 应为这些应用程序提供的资源

  • 所需副本数量

为了定义所需的状态,JSON 或 YAML 文件(称为清单)用于指定应用程序类型和运行系统所需的副本数量。开发人员使用 Kubernetes API 来定义集群的期望状态。这种开发人员交互使用命令行界面 (kubectl) 或利用 API 直接与集群交互以手动设置所需的状态。然后,主节点将通过 API 将所需状态传达给工作节点。

Kubernetes 通过 Kubernetes 控制平面自动管理集群以使其与所需状态保持一致。Kubernetes 控制平面的职责包括调度集群活动以及注册和响应集群事件。

Kubernetes 控制平面运行连续的控制循环,以确保集群的实际状态与其期望的状态相匹配。例如,如果您部署一个应用程序以使用五个副本运行,但其中一个崩溃了,Kubernetes 控制平面将注册此崩溃并部署一个额外的副本,以便保持五个副本的期望状态。

自动化通过 Pod 生命周期事件生成器或 PLEG 进行。这些自动任务可以包括:

  • 启动 和重启容器

  • 调整 应用程序的副本数

  • 验证 容器镜像

  • 启动 和管理容器

  • 实施 更新和回滚

如何创建 Kubernetes 集群?

您可以在物理机或虚拟机上创建和部署 Kubernetes 集群。建议新用户使用 Minikube 开始创建 Kubernetes 集群。Minikube 是一个开源工具,兼容 Linux、Mac 和 Windows 操作系统。Minikube 可用于创建和部署仅包含一个工作节点的简单、流线型集群。

什么是Kubernetes集群?

此外,您可以使用 Kubernetes 模式来自动管理集群规模。Kubernetes 模式有助于将基于云的架构重用于基于容器的应用程序。虽然 Kubernetes 确实提供了许多有用的 API,但它没有提供如何将这些工具成功整合到操作系统中的指南。Kubernetes 模式提供了一种一致的方式来访问和重用现有的 Kubernetes 架构。您可以利用可重用的 Kubernetes 集群蓝图网络,而不是自己创建这些结构。



0


上一篇:到顶了!
上一篇:到底了!
精品服务器推荐
香港服务器
像使用国内服务器那样流畅
独享硬件资源,CN2直连高速专线
多种配置可选,更符合您的业务需求
  • ·CN2直连
  • ·免费测试
  • ·24H技术支持
最新服务器优惠活动
淘梦互联服务器支持24小时免费测试
15000+用户的选择,75240+小时稳定运行,先测试后付款,让业务不熟更放心
申请测试
免费试用
免费试用
旗下产品均支持24小时免费测试
24小时免费电话
023-88256567
客服

24H在线客服

  • 业务咨询
  • 售后服务
24小时免费电话
023-88256567