如果删除并重新创建持久卷,Kubernetes持久卷声明是否会再次绑定?

如果删除并重新创建持久卷,Kubernetes持久卷声明是否会再次绑定?,kubernetes,persistent-volumes,persistent-volume-claims,Kubernetes,Persistent Volumes,Persistent Volume Claims,我有以下pvc(持续性批量索赔): 以及谷歌云支持的pv(持久卷): 还有谷歌云中存在的磁盘 如果我先创建pv,然后创建pvc,kubectl获得pvc,pv将显示: NAME STATUS VOLUME CAPACITY ACCESSMODES AGE test-claim-web

我有以下
pvc
(持续性批量索赔):

以及谷歌云支持的
pv
(持久卷):

还有谷歌云中存在的磁盘

如果我先创建
pv
,然后创建
pvc
kubectl获得pvc,pv
将显示:

NAME                                STATUS                                VOLUME            CAPACITY     ACCESSMODES              AGE
test-claim-web                      Bound                                 test-pv-1         10Gi         RWO                      15s
NAME                                CAPACITY                              ACCESSMODES       STATUS       CLAIM                    REASON    AGE
test-pv-1                           10Gi                                  RWO               Bound        default/test-claim-web             25s
NAME                                STATUS                                VOLUME            CAPACITY     ACCESSMODES              AGE
test-claim-web                      Bound                                 test-pv-1         10Gi         RWO                      3m
NAME                                CAPACITY                              ACCESSMODES       STATUS       CLAIM                    REASON    AGE
test-pv-1                           10Gi                                  RWO               Available                                       18s
但是如果我删除并重新创建
pv
kubectl get pvc,pv
将显示:

NAME                                STATUS                                VOLUME            CAPACITY     ACCESSMODES              AGE
test-claim-web                      Bound                                 test-pv-1         10Gi         RWO                      15s
NAME                                CAPACITY                              ACCESSMODES       STATUS       CLAIM                    REASON    AGE
test-pv-1                           10Gi                                  RWO               Bound        default/test-claim-web             25s
NAME                                STATUS                                VOLUME            CAPACITY     ACCESSMODES              AGE
test-claim-web                      Bound                                 test-pv-1         10Gi         RWO                      3m
NAME                                CAPACITY                              ACCESSMODES       STATUS       CLAIM                    REASON    AGE
test-pv-1                           10Gi                                  RWO               Available                                       18s
  • 为什么
    pvc
    仍然
    绑定
  • pvc
    (重新)不会自动绑定吗?(我还观察到在
    pvc
    之后创建
    pv
    会使
    pvc
    永远等待
    Pending
    状态。)
我使用以下Kubernetes版本:

Client Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.4", GitCommit:"3eed1e3be6848b877ff80a93da3785d9034d0a4f", GitTreeState:"clean"}
Server Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.4", GitCommit:"3eed1e3be6848b877ff80a93da3785d9034d0a4f", GitTreeState:"clean"}
如果我删除并重新创建pv,kubectl get pvc,pv将显示[绑定]。 为什么pvc仍然是绑定的

这是Kubernetes 1.2中的错误,将在1.3中修复。PV和PVC最终都应该结合在一起

然而,删除绑定的PV是一个非常糟糕的主意,因为PVC可能会在运行的pod中使用,而pod会突然失去下面的存储空间。你不应该接触绑定的PV

我还注意到,在pvc之后创建pv会使pvc永远等待,并处于挂起状态


它不会永远等下去,它应该在10分钟后被绑定。使用
kube控制器管理器--pvclaimbinder sync period=15s
将其缩短为15秒。同样,在Kubernetes 1.3中,这会更好,默认值为15秒。

找到解决方案了吗?