七岁小孩都能读懂的Kubernetes 插图指南

2023-12-12 11:58

本文主要是介绍七岁小孩都能读懂的Kubernetes 插图指南,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

七岁小孩都能读懂的Kubernetes 插图指南

七岁小孩都能读懂的Kubernetes 插图指南

献给所有试图向孩子们解释软件工程的家长。

七岁小孩都能读懂的Kubernetes 插图指南

很久很久以前,有一个叫 Phippy 的应用程序。她是一个简单的应用程序,由 PHP 编写且只有一个页面。她住在一个需要和其他可怕的应用程序分享环境的主机中,她不认识这些应用程序并且不愿意和他们来往。她希望她能拥有一个属于自己的环境:只有她自己和她可以称之为家的 Web 服务器。

七岁小孩都能读懂的Kubernetes 插图指南

每个应用程序都有个运行所依赖的环境。对于 PHP 应用程序来说,这个环境可能包括 Web 服务器,一个可读文件系统和 PHP 引擎本身。

七岁小孩都能读懂的Kubernetes 插图指南

有一天,一只善良的鲸鱼出现了。他建议小 Phippy 住在容器里,这样可能会更快乐。所以应用程序 Phippy 迁移到了容器中。这个容器很棒,但是……它有点像一个漂浮在大海中央的豪华起居室。

七岁小孩都能读懂的Kubernetes 插图指南

容器提供了一个独立的环境,应用程序可以在这个环境中运行。但是这些孤立的容器常常需要被管理并与外面的世界连接。对于孤立的容器而言,共享文件系统、网络通信、调度、负载均衡和分发都是要面对的挑战。

七岁小孩都能读懂的Kubernetes 插图指南

鲸鱼耸了耸肩。“对不起,孩子。”他说着,消失在海面下。就在 Phippy 甚至开始绝望时,一位驾驶着巨轮的船长出现在海平线上。这艘船由几十个绑在一起的木筏组成,但从外面来看,它就像一艘巨轮。

“你好呀,这位 PHP 应用程序朋友。我是 Kube 船长。”睿智的老船长说。

七岁小孩都能读懂的Kubernetes 插图指南

“Kubernetes” 在希腊语中是船长的意思。我们可以从这个单词中得到 CyberneticGubernatorial 这两个词组。Kubernetes 项目专注于构建一个健壮的平台,用于在生产环境中运行数千个容器。

七岁小孩都能读懂的Kubernetes 插图指南

“我是 Phippy。”小应用程序说。

“很高兴认识你。”船长一边说,一边在她身上贴上了一张标有姓名的标签。

七岁小孩都能读懂的Kubernetes 插图指南

Kubernetes 使用标签作为“名牌”来标识事物。它可以根据这些标签进行查询。标签是开放性的:你可以用他们来表示角色、稳定性或其他重要的属性。

七岁小孩都能读懂的Kubernetes 插图指南

船长建议应用程序把她的容器搬到船上的一个船舱中。Phippy 很高兴地把她的容器搬到 Kube 船长巨轮的船舱内。Phippy 觉得这里像家一样。

七岁小孩都能读懂的Kubernetes 插图指南

在 Kubernetes 中,Pod 代表一个可运行的工作单元。通常,你会在 Pod 中运行一个容器。但是对于一些容器紧密耦合的情况,你可以选择在同一个 Pod 中运行多个容器。Kubernetes 负责将你的 Pod 和网络以及 Kubernetes 的其余环境相连。

七岁小孩都能读懂的Kubernetes 插图指南

Phippy 有一些不同寻常的兴趣,她很喜欢遗传学和绵羊。所以她问船长:“如果我想克隆我自己,是否可以根据需求克隆任意次数呢?”

“这很容易。”船长说。船长把 Phippy 介绍给了 Replication Controller。

七岁小孩都能读懂的Kubernetes 插图指南

Replication Controller 提供一种管理任意数量 Pod 的方法。一个 Replication Controller 包含一个 Pod 模板,该模板可以被复制任意次数。通过 Replication Controller,Kubernetes 将管理 Pod 的生命周期,包括伸缩、滚动更新和监控。

七岁小孩都能读懂的Kubernetes 插图指南

无数个日夜,小应用程序在她的船舱中与她的复制品相处十分愉快。但与自己为伍并没有所说的那么好……即使你拥有 N 个自己的克隆体。

Kube 船长慈祥地笑了笑:“我正好有一样东西。”

他刚开口,在 Phippy 的 Replication Controller 和船的其他部分之间打开了一条隧道。Kube 船长笑着说:“即使你的复制品来了又去,这条隧道始终会留在这里,你可以通过它发现其他 Pod,其他 Pod 也可以发现你!”

七岁小孩都能读懂的Kubernetes 插图指南

服务告知 Kubernetes 环境的其余部分(包括其他 Pod 和 Replication Controller)你的应用程序包含了哪些服务,当 Pod 来来往往,服务的 IP 地址和端口始终保持不变。其他应用程序可以通过 Kurbenetes 服务发现找到你的服务。

七岁小孩都能读懂的Kubernetes 插图指南

多亏了这些服务,Phippy 开始探索船的其他部分。不久之后,Phippy 遇到了 Goldie。他们成了最好的朋友。有一天,Goldie 做了一件不同寻常的事。她送给 Phippy 一件礼物。Phippy 看了礼物一眼,悲伤的泪水夺眶而出。

“你为什么这么伤心呢?”Goldie 问道。

“我喜欢这个礼物,但我没有地方可以放它!”Phippy 抽噎道。

但 Goldie 知道该怎么做。“为什么不把它放入卷中呢?”

七岁小孩都能读懂的Kubernetes 插图指南

卷表示容器可以访问和存储信息的位置。对于应用程序,卷显示为本地文件系统的一部分。但卷可以由本地存储、Ceph、Gluster、持久性块存储,以及其他存储后端支持。

Phippy 喜欢在 Kube 船长的船上生活,她很享受来自新朋友的陪伴(Goldie 的每个克隆人都同样令人愉悦)。但是,当她回想起在可怕的主机度过的日子,她想知道她是否也可以拥有一点自己的隐私。

“这听起来像是你所需要的,”Kube 船长说,“这是一个命名空间。”

七岁小孩都能读懂的Kubernetes 插图指南

命名空间是 Kubernetes 内部的分组机制。服务、Pod、Replication Controller 和卷可以在命名空间内部轻松协作,但命名空间提供了与集群其他部分一定程度的隔离。

Phippy 与她的新朋友一起乘坐 Kube 船长的巨轮航行于大海之上。她经历了许多伟大的冒险,但最重要的是,Phippy 找到了自己的家。

所以 Phippy 从此过上了幸福的生活。

七岁小孩都能读懂的Kubernetes 插图指南

译 者:江五渣
链 接:https://juejin.im/post/5d1b2a656fb9a07edc0b7058
原文地址:https://link.juejin.im/?target=https%3A%2F%2Fwww.cncf.io%2Fthe-childrens-illustrated-guide-to-kubernetes%2F

这篇关于七岁小孩都能读懂的Kubernetes 插图指南的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/484566

相关文章

小白也能轻松上手! 路由器设置优化指南

《小白也能轻松上手!路由器设置优化指南》在日常生活中,我们常常会遇到WiFi网速慢的问题,这主要受到三个方面的影响,首要原因是WiFi产品的配置优化不合理,其次是硬件性能的不足,以及宽带线路本身的质... 在数字化时代,网络已成为生活必需品,追剧、游戏、办公、学习都离不开稳定高速的网络。但很多人面对新路由器

C#解析JSON数据全攻略指南

《C#解析JSON数据全攻略指南》这篇文章主要为大家详细介绍了使用C#解析JSON数据全攻略指南,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、为什么jsON是C#开发必修课?二、四步搞定网络JSON数据1. 获取数据 - HttpClient最佳实践2. 动态解析 - 快速

SpringBoot集成MyBatis实现SQL拦截器的实战指南

《SpringBoot集成MyBatis实现SQL拦截器的实战指南》这篇文章主要为大家详细介绍了SpringBoot集成MyBatis实现SQL拦截器的相关知识,文中的示例代码讲解详细,有需要的小伙伴... 目录一、为什么需要SQL拦截器?二、MyBATis拦截器基础2.1 核心接口:Interceptor

从入门到进阶讲解Python自动化Playwright实战指南

《从入门到进阶讲解Python自动化Playwright实战指南》Playwright是针对Python语言的纯自动化工具,它可以通过单个API自动执行Chromium,Firefox和WebKit... 目录Playwright 简介核心优势安装步骤观点与案例结合Playwright 核心功能从零开始学习

Java堆转储文件之1.6G大文件处理完整指南

《Java堆转储文件之1.6G大文件处理完整指南》堆转储文件是优化、分析内存消耗的重要工具,:本文主要介绍Java堆转储文件之1.6G大文件处理的相关资料,文中通过代码介绍的非常详细,需要的朋友可... 目录前言文件为什么这么大?如何处理这个文件?分析文件内容(推荐)删除文件(如果不需要)查看错误来源如何避

Java docx4j高效处理Word文档的实战指南

《Javadocx4j高效处理Word文档的实战指南》对于需要在Java应用程序中生成、修改或处理Word文档的开发者来说,docx4j是一个强大而专业的选择,下面我们就来看看docx4j的具体使用... 目录引言一、环境准备与基础配置1.1 Maven依赖配置1.2 初始化测试类二、增强版文档操作示例2.

PostgreSQL中rank()窗口函数实用指南与示例

《PostgreSQL中rank()窗口函数实用指南与示例》在数据分析和数据库管理中,经常需要对数据进行排名操作,PostgreSQL提供了强大的窗口函数rank(),可以方便地对结果集中的行进行排名... 目录一、rank()函数简介二、基础示例:部门内员工薪资排名示例数据排名查询三、高级应用示例1. 每

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

创建Java keystore文件的完整指南及详细步骤

《创建Javakeystore文件的完整指南及详细步骤》本文详解Java中keystore的创建与配置,涵盖私钥管理、自签名与CA证书生成、SSL/TLS应用,强调安全存储及验证机制,确保通信加密和... 目录1. 秘密键(私钥)的理解与管理私钥的定义与重要性私钥的管理策略私钥的生成与存储2. 证书的创建与

Python包管理工具pip的升级指南

《Python包管理工具pip的升级指南》本文全面探讨Python包管理工具pip的升级策略,从基础升级方法到高级技巧,涵盖不同操作系统环境下的最佳实践,我们将深入分析pip的工作原理,介绍多种升级方... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核