Kubernetes Minikube不支持持久卷

Kubernetes Minikube不支持持久卷,kubernetes,nfs,minikube,Kubernetes,Nfs,Minikube,我正在尝试使用minikube为MariaDB设置一些持久的NFS卷。每次我加载声明配置时,minikube都会创建一个默认的持久卷,而不是使用我通过NFS提供的持久卷。我不明白为什么会这样 mariadb nfs volume.yaml文件的内容如下: apiVersion: v1 kind: PersistentVolume metadata: name: nfs spec: capacity: storage: 10Gi accessModes: - ReadW

我正在尝试使用minikube为MariaDB设置一些持久的NFS卷。每次我加载声明配置时,minikube都会创建一个默认的持久卷,而不是使用我通过NFS提供的持久卷。我不明白为什么会这样

mariadb nfs volume.yaml
文件的内容如下:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: 192.168.3.121
    path: "/var/nfsshare"
    readOnly: false
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: mariadb-pv-claim
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 3Gi
mariadb pv claim.yaml
文件的内容如下:

apiVersion: v1
kind: PersistentVolume
metadata:
  name: nfs
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteMany
  nfs:
    server: 192.168.3.121
    path: "/var/nfsshare"
    readOnly: false
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: mariadb-pv-claim
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 3Gi
还有一些调试:

; kubectl get pv nfs
NAME      CAPACITY   ACCESSMODES   RECLAIMPOLICY   STATUS      CLAIM     STORAGECLASS   REASON    AGE
nfs       10Gi       RWX           Retain          Available                                      56m
; kubectl get pvc mariadb-pv-claim
NAME               STATUS    VOLUME                                     CAPACITY   ACCESSMODES   STORAGECLASS   AGE
mariadb-pv-claim   Bound     pvc-7f20f205-49f2-11e7-83ab-525400dd1f77   3Gi        RWX           standard       56m

默认情况下,minikube已启用动态存储资源调配。您可以尝试禁用它,以便NFS PV满足您的索赔要求

minikube start --feature-gates=DynamicVolumeProvisioning=false

默认情况下,minikube已启用动态存储资源调配。您可以尝试禁用它,以便NFS PV满足您的索赔要求

minikube start --feature-gates=DynamicVolumeProvisioning=false

也许有点晚了,但至少对于唱片来说,这里有一个答案:

创建
PersistentVolume
时,给它一个
storageClassName
(我在这里使用mariadab nfs):

在声明该卷时,请指定完全相同的storageClassName:

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: mariadb-pv-claim
spec:
  storageClassName: mariadb-nfs
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 3Gi

然后Kubernetes将为pvc使用定义的pv,无需禁用minikube动态资源调配。

可能有点晚,但至少对于记录,这里有一个答案:

创建
PersistentVolume
时,给它一个
storageClassName
(我在这里使用mariadab nfs):

在声明该卷时,请指定完全相同的storageClassName:

kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: mariadb-pv-claim
spec:
  storageClassName: mariadb-nfs
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 3Gi

Kubernetes然后将为pvc使用定义的pv,无需禁用minikube动态资源调配。

我建议在minikube github回购上发行。我建议在minikube github回购上发行。