没有可用于此声明的持久卷,并且未设置存储类
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了没有可用于此声明的持久卷,并且未设置存储类相关的知识,希望对你有一定的参考价值。
我的pvc.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: database-disk
labels:
stage: production
name: database
app: mysql
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 2Gi
当我跑kubectl apply -f pvc.yaml
我得到以下错误Normal FailedBinding 12h (x83 over 13h) persistentvolume-controller no persistent volumes available for this claim and no storage class is set
同样的pvc在“GKE”(谷歌Kubernetes引擎)上工作正常,但在我的本地群集中使用microk8s失败了
答案
您是否在群集中创建了任何PV?
本地群集上的PV和存储类应由群集管理员手动完成。
查看Kubernetes documentation了解详情:
- 集群管理员创建由物理存储支持的PersistentVolume。管理员不会将卷与任何Pod关联。
- 集群用户创建PersistentVolumeClaim,它会自动绑定到合适的PersistentVolume。
- 用户创建一个使用PersistentVolumeClaim作为存储的Pod。
以上是关于没有可用于此声明的持久卷,并且未设置存储类的主要内容,如果未能解决你的问题,请参考以下文章
将文件放置在 GKE 上的 Kubernetes 持久卷存储中
k8sk8s存储之持久卷(pv)持久卷声明(pvc)nfs持久化存储示例