我的问题是关于 PersistentVolumeClaim 我在 aws ec2 上设置了一个节点集群我正在尝试使用kubernetes.io/host-path作为Provisioner创建一个存储类。
存储类的yaml文件内容如下,
kind: StorageClass
apiVersion: storage.k8s.io/v1beta1
metadata:
namespace: kube-system
name: my-storage
annotations:
storageclass.beta.kubernetes.io/is-default-class: "false"
labels:
kubernetes.io/cluster-service: "true"
provisioner: kubernetes.io/host-path
PersistentVolumeClaim 的 yaml 文件内容如下,
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: task-pv-claim
annotations:
volume.beta.kubernetes.io/storage-class: my-storage
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 3Gi
当我尝试在minikube上创建存储类和 PVC 时,它正在工作。它正在 /tmp/hostpath_volume/ 中的 minikube 上创建卷但是,当我在 aws ec2 上的一个节点集群设置上尝试类似的事情时,我收到以下错误
无法创建供应商:卷插件“kubernetes.io/host-path”中的供应被禁用
当我执行kubectl describe pvc task-pv-claim时,我可以看到此错误,此外,未创建 PV,因此声明处于待处理状态
我发现类似 kube-controller-manager 的东西在其选项中显示了 --enable-dynamic-provisioning 和 --enable-hostpath-provisioner 但不知道如何使用它。