当前位置: 首页 > news >正文

谷歌云Kubernetes (K8s) 深度解析:起源、特性与核心概念

目录

一、Kubernetes 的前世今生:从 Borg 到 K8s

1. 内部基石:Borg 系统的经验与教

2. K8s 的诞生与意义

二、Kubernetes 的核心特点

三、Kubernetes 的最小操作单元:Pod 概念

1. Pod 的定义与组成

2. Pause 根容器的意义


一、Kubernetes 的前世今生:从 Borg 到 K8s

Kubernetes(简称 K8s)是 Google 在 2014 年 6 月开源的一个容器集群管理系统,使用 Go 语言开发。它的目标是使部署容器化的应用变得简单且高效,并努力成为跨主机集群的自动部署、扩展以及运行应用程序容器的平台。

1. 内部基石:Borg 系统的经验与教

在 Docker 作为高级容器引擎迅速发展的同时,Google 也将其在容器技术和集群管理方面的积累贡献出来。在 Google 内部,Borg 系统已经运行和管理着成千上万的容器应用多年,支撑着 Google 搜索、Gmail 等核心服务。

Borg 作为集群管理器,为 Google 提供了三大核心优势:

  1. 简化开发:隐藏了复杂的资源管理和错误处理,用户只需专注于应用开发。

  2. 高可用高可靠:保障服务的高可用性和高可靠性。

  3. 规模化运行:能够将负载运行在由成千上万台机器联合而成的庞大集群中。

Kubernetes 项目正是来源于 Borg,集结了 Borg 设计思想的精华,并吸收了其在生产环境中积累的经验和教训。

谷歌云Kubernetes (K8s) 深度解析:起源、特性与核心概念

2. K8s 的诞生与意义

2014 年 6 月,Google 正式推出 Kuberentes。其名称在希腊语中意为**“船长”或“领航员”**,恰好吻合它作为容器集群指挥者的角色,负担着全局调度和运行监控的职责。

Kubernetes 对计算资源进行了更高层次的抽象,提供了资源调度、部署管理、服务发现、扩容缩容、监控、维护等一整套功能。它原生支持微服务架构,通过在 Service 层次构建集群范围的 SDN 网络,将服务发现和负载均衡放置到容器可达的范围,极大地便利了各个服务间的通信。

2015 年 7 月 22 日,Kubernetes 迭代到 v1.0 并正式对外公布,标志着其可以正式用于生产环境。同时,Google 联合 Linux 基金会及其他合作伙伴成立了 CNCF 基金会 (Cloud Native Computing Foundation),并将 Kuberentes 作为首个项目编入其管理体系。

二、Kubernetes 的核心特点

Kubernetes 的一个核心特点是自动化,能够自主管理容器来保证云平台中的容器按照用户的期望状态运行(即自我修复能力)。

  • 可移植性 (Portability):支持公有云、私有云、混合云及多重云(multi-cloud)。

  • 可扩展性 (Extensibility):采用模块化、插件化、可挂载、可组合的设计。

  • 自动化 (Automation):提供自动部署、自动重启、自动复制、自动伸缩/扩展等功能。

  • 服务发现和负载均衡:内置机制简化了服务间的通信。

谷歌云Kubernetes (K8s) 深度解析:起源、特性与核心概念

三、Kubernetes 的最小操作单元:Pod 概念

理解 Pod、Service、Replication Controller 等概念是使用 Kubernetes 的前提。

1. Pod 的定义与组成

Pod 是 Kubernetes 中最小的部署单元,也是 Kubernetes 最重要的基本概念。

  • 组成:一个 Pod 由一个或多个容器组成,这些容器共享存储和网络,在同一台 Docker 主机上运行。

  • 网络共享:Kubernetes 为每个 Pod 都分配了唯一的 Pod IP 地址,一个 Pod 里的所有容器共享此 IP 地址,并要求底层网络支持集群内任意两个 Pod 之间的 TCP/IP 直接通信。

  • 运行环境:Pod 运行在节点(Node)中。

谷歌云Kubernetes (K8s) 深度解析:起源、特性与核心概念

2. Pause 根容器的意义

每个 Pod 都会包含一个特殊的被称为“根容器”或 Pause 容器。引入 Pause 容器的设计主要基于两个原因:

  1. 状态判断:它作为 Pod 的根容器,以其状态代表整组业务容器的整体状态,解决了在一组容器中难以简单判断整组容器生死状态的问题。

  2. 资源共享:Pod 里的多个业务容器共享 Pause 容器的 IP 地址,并共享其挂接的 Volume(存储卷),从而简化了密切关联的业务容器之间的通信和文件共享问题。

http://www.dtcms.com/a/593536.html

相关文章:

  • 高防ip如何布防
  • 【FPGA】for循环求取二进制1的个数的方法与差别
  • 三亚网站推广团队wordpress做大站好吗
  • 购物网站建设和使用集团网站定制
  • 基于DIC技术的汽车用超高强度双相钢(DP钢)拉伸变形全场应变分布精确分析
  • YOLOv5(四):models/yolo.py
  • SpringBoot~
  • 如何配置Dev-C++的bin目录到系统环境变量中?
  • 如何在Excel实现类似SQL的Where查找功能
  • 整体设计 全面梳理复盘之30 Transformer 九宫格三层架构 Designer 全部功能定稿(初稿)之2
  • 云南省建设厅官方网站两学一做是什么网站
  • 郑州房地产网站奇米网怎么做网站
  • 500+带交互的元件库:Axure原型设计的活字典
  • 11月10工单通重大更新:工艺路线、生产管理等多模块 BUG 修复 + 报表优化,体验再升级!
  • 实用教程:打造支持参数配置的 Git Bash 文件清理脚本
  • 长短期记忆网络(LSTM)入门
  • 图——关键路径
  • 中国建设银行广西分行网站首页24小时在线观看
  • wordpress 下载网站加盟网站推广
  • Pycharm社区版安装
  • 每日算法(1)
  • 基于PLC的多级传送带控制与改造
  • 网站建设案例知名 乐云践新广州市专业网站设计
  • 数字货币众筹网站开发创意设计公司官网
  • requst payload和query string parameters
  • Web网页之前端三剑客汇总篇(基础版)
  • 【AI学习-comfyUI学习-简易加载器抠图工作流(替换抠图节点版)-各个部分学习-第七节】
  • Linux中自定义服务开机自启nginx
  • 【Linux】snakemake应用之扩增子分析流程
  • 可以做哪些网站有哪些内容给别人做的网站要复杂做安全扫描