以前在csdn里面看到一个关于集群的解释,绕得我云里雾里的,真是垃圾。最近看到一篇文章,讲得不错, 而且图画得真好,可以参考一下。先来看看这些概念在硬件层面是怎么解释的。

节点(node)

image.png
节点是k8s中最小的计算硬件单元,它是集群中单个机器的表示。在大多数生产系统中,节点可以是数据中心的真是物理机器,也是云供应商的虚拟机器。现在,完全可以把节点抽象出来,简单看作是一组可以使用的CPU和RAM资源。

集群(Cluster)

image.png

上图中这种类似“母巢”的系统会让人想起《星际迷航》中的Borg,“Borg”是Kubernetes内部谷歌项目的名称,很有意思。

整个集群就被看作是一个整体,而无需担心单个节点的状态。k8s中,节点汇聚资源,形成来更加强大的机器。后面会有一个搭建分布式nats集群的小demo, 在那里,会对集群会有进一步的解释。

持久卷(Persistent Volumes)

因为在集群上运行的程序不能保证在特定的节点上运行,所以无法将数据保存到文件系统中的任意位置。

image.png
为了永久存储数据,k8s使用持久卷(Persistent Volumes), 虽然所有的节点的CPU和RAM资源都被资源集群有效地汇集和管理,但是持久的文件存储却不是。相反地,本地或者云驱动器可以作为持久附加到集群中。这可以看作是将外部硬盘插入到集群中。持久化卷提供了可以挂载到集群的文件系统,而不与任何特定节点相关联。持久化卷的概念其实是与LInux中挂载强关联的,后面需要回顾一下。

参考资料:Kubernetes入门:Pod、节点、容器和集群都是什么?