节点中的本地持久卷(仍可以访问,尽管使用它的Pod可以在另一个节点中重新安排)

时间:2020-09-11 13:47:35

标签: kubernetes

我正在学习Kubernetes并对此感到很新。

让我们说一个Pod A需要在节点A中使用一些持久卷(即,这意味着Pod A中的容器会将一些数据写入节点A中的某个路径中)。然后过了一段时间,窗格A死了,新的窗格B被安排到节点B。然后,窗格B可以以某种方式远程访问节点A中的永久卷,以便它仍然可以正常工作吗?

换句话说,Kubernetes是否可以在特定节点上提供一些本地持久卷,以供Pod使用,尽管Pod可以重新安排到另一个节点,但仍然可以访问?

1 个答案:

答案 0 :(得分:1)

当Kubernetes上部署的应用程序需要存储时,建议使用Persistent VolumesPersistent Volume Claims

PV和PVC是抽象的,可以由具有自己的属性/功能的几个不同的存储系统支持。

位于节点外的卷

在云提供商处,Kubernetes PV最常见的支持是AWS Elastic Block StorageGoogle Persistent Disk。这些系统不是Kubernetes节点上的本地卷,而是通过网络访问的。从应用程序视图中,可以通过文件系统(如本地卷)对其进行访问。这样做的优点是,这些卷可从可用区中的任何节点访问。

位于节点上的卷

但是,云提供商还提供本地磁盘,它们是节点上的物理磁盘。这些昂贵得多,您分配更大的卷,但也可以获得更好的磁盘性能。这些的典型用法是分布式数据库,例如部署为StatefulSets,并通常使用Raft Consensus Algorithm在彼此之间主动复制数据-这意味着它们可以容忍通过创建新实例来松开一个实例(包括磁盘)并从该状态恢复-开始追赶数据复制。