POD崩溃时持久卷声明中的容器数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了POD崩溃时持久卷声明中的容器数据相关的知识,希望对你有一定的参考价值。

我想创建一个带有POD的复制控制器,它将具有PVC(持久卷声明)。我的PVC将使用NFS存储用于PV(持久卷)。

一旦POD运行,RC将保持POD的运行。在这种情况下,POD中的数据是可用/持久的

  1. 删除命令停止/删除POD,RC重新启动它?这意味着Kubernetes没有关闭。在这种情况下,新POD可以从同一卷中获得相同的数据吗?
  2. POD停止,Kubernetes进程并重新启动节点。然而,NFS存储仍然作为PV附加。
  3. 一个新的PV连接到Kubernetes并且旧的PV被拆卸。
答案

这在很大程度上取决于您如何定义PV / PVC。根据我的经验,使用基于NFS的PV非常容易在pod重新创建删除之间保留数据。我采用以下方法来处理多个pod共享的NFS卷。

卷:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pvname
spec:
  capacity:
    storage: 1Mi
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  nfs:
    server: <nfs IP>
    path: <nfs path>

要求 :

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: pvcname
spec:
  volumeName: pvname
  accessModes:
  - ReadWriteMany
  resources:
    requests:
      storage: 1Mi

这确保了无论我在k8s中删除了什么,我都可以在NFS服务器上的已知路径上返回我的数据,并通过在k8上重新创建PV / PVC / POD再次重用它,因此它应该能够在你提到的所有三种情况下生存。

另一答案

根据您的提供商/供应商,persistentVolumeReclaimPolicy: Retain不一定是“回来找我!”处理。根据Kubernetes文档,此策略旨在防止删除卷,以便您以后可以恢复数据(在Kubernetes之外)。

以下是此政策的用途:

$ kubectl get pvc,pv

NAME                                          STATUS    VOLUME                  CAPACITY   ACCESS MODES   STORAGECLASS   AGE
persistentvolumeclaim/nfs-server              Bound     nfs-server              100Gi      RWX                           5d
persistentvolumeclaim/nfs-server-wp-k8specs   Bound     nfs-server-wp-k8specs   100Gi      RWX                           2d

NAME                                     CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS    CLAIM                           STORAGECLASS   REASON    AGE
persistentvolume/nfs-server              100Gi      RWX            Retain           Bound     default/nfs-server                                       5d
persistentvolume/nfs-server-wp-k8specs   100Gi      RWX            Retain           Bound     default/nfs-server-wp-k8specs                            2d

以上是关于POD崩溃时持久卷声明中的容器数据的主要内容,如果未能解决你的问题,请参考以下文章

在K8S中使用Local持久卷

存储卷

Kubernetes存储

k8s数据持久化

k8s数据持久化

应用存储和持久化数据卷:核心知识